I think LinuxKI is an underrated Linux performance tuning tool. When I worked in HPE
, one of my colleagues heavily relied on LinuxKI
to do performance tuning. I still remember one of his workload is like this: 8
Oracle databases run in 8
docker containers simultaneously, and he did following things every day:
(1) Execute runki
to collect data;
(2) Use kiall
to analyse data, then tune some parameters;
(3) Go back to step (1).
Below is a simple guide of how to use LinuxKI
, and I assume the LinuxKI
is already installed:
(1) Collect data in /dev/shm
directory to reduced the risk of missing LinuxKI
events during the tracing and does not add to the disk workload, but be sure /dev/shm
has enough memory:
$ cd /dev/mem
(2) Run runki
command (-R
options means capturing advanced CPU stats):
$ sudo /opt/linuxki/runki -R
After finishing, there is a compressed *.tgz
file:
$ ll -h
total 359M
-rw-r--r--. 1 root root 359M Apr 29 13:39 ki_all.pocket-p2.0429_1337.tgz
(3) Copy the *.tgz
file into home directory:
$ cp ki_all.pocket-p2.0429_1337.tgz ~/
and now the original file can be safely removed.
(4) The final step is generating the reports:
$ cd ~
$ /opt/linuxki/kiall -r
Processing files in: /home/nanxiao/pocket-p2/0429_1337
Merging KI binary files. Please wait...
ki.bin files merged by kiinfo -likimerge
/opt/linuxki/kiinfo -kitrace -ts 0429_1337
/opt/linuxki/kiinfo -kiall csv -html -ts 0429_1337
kiall complete
Then we can check and analyse the reports now.