Collectl: Háþróað allt-í-einn árangurseftirlitstæki fyrir Linux
Mikilvægasta skylda Linux kerfisstjóra er að ganga úr skugga um að kerfið sem hann/hún stjórnar sé í mjög góðu ástandi. Það eru mörg verkfæri í boði fyrir Linux kerfisstjóra sem geta hjálpað til við að fylgjast með og sýna ferla í kerfi eins og htop, en ekkert af þessum verkfærum getur keppt við collectl.
collectl er mjög gott skipanalínuforrit sem er mikið af eiginleikum sem hægt er að nota til að safna frammistöðugögnum sem lýsa núverandi kerfisstöðu. Ólíkt flestum öðrum vöktunartækjum, einbeitir collectl ekki að takmörkuðum fjölda kerfismælinga, heldur getur það safnað upplýsingum um margar mismunandi gerðir kerfisauðlinda eins og örgjörva, disk, minni, netkerfi, fals, tcp, inodes, infiniband, ljóma, minni, nfs, ferlar, quadrics, slabs og buddyinfo.
Það sem er mjög gott við að nota collectl er að það getur líka gegnt hlutverki tóla sem eru hönnuð með aðeins ákveðnum tilgangi eins og top, ps, iotop og mörgum öðrum. Hverjir eru sumir eiginleikar sem gera safn að gagnlegu tæki?
Eftir miklar rannsóknir hef ég tekið saman lista með nokkrum af mikilvægustu eiginleikum collectl skipanalínuforritsins fyrir ykkur.
- Það getur keyrt gagnvirkt, sem púki eða bæði.
- Það getur birt úttakið á mörgum sniðum.
- Það hefur getu til að fylgjast með nánast hvaða undirkerfi sem er.
- Það getur gegnt hlutverki margra annarra tóla eins og ps, top, iotop, vmstat.
- Það hefur getu til að taka upp og spila gögnin sem tekin eru.
- Það getur flutt gögnin út á ýmsum skráarsniðum. (þetta er mjög gagnlegt þegar þú vilt greina gögnin með utanaðkomandi verkfærum).
- Það getur keyrt sem þjónusta til að fylgjast með ytri vélum eða heilum netþjónaþyrpingum.
- Það getur sýnt gögnin í flugstöðinni, skrifað í skrá eða fals.
Hvernig á að setja upp collectl í Linux
Collectl tólið keyrir á öllum Linux dreifingum, það eina sem það þarf til að keyra er perl, svo vertu viss um að þú hafir Perl uppsett í vélinni þinni áður en þú setur collectl í vélina þína.
Eftirfarandi skipun er hægt að nota til að setja upp collectl tólið í Debian vélum eins og Ubuntu.
$ sudo apt-get install collectl
Ef þú ert að nota Red Hat byggt dreifingu geturðu auðveldlega náð í það úr endursölustaðnum með yum skipuninni.
# yum install collectl
Nokkur hagnýt dæmi um collectl tólið
Þegar uppsetningu collectl tólsins er lokið geturðu auðveldlega keyrt það frá flugstöðinni, jafnvel án nokkurs valkosts. Eftirfarandi skipun sýnir upplýsingar um örgjörva, disk og nettölfræði á mjög stuttu og læsilegu sniði.
# collectl waiting for 1 second sample... # #cpu sys inter ctxsw KBRead Reads KBWrit Writes KBIn PktIn KBOut PktOut 13 5 790 1322 0 0 92 7 4 13 0 5 10 2 719 1186 0 0 0 0 3 9 0 4 12 0 753 1188 0 0 52 3 2 5 0 6 13 2 733 1063 0 0 0 0 1 1 0 1 25 2 834 1375 0 0 0 0 1 1 0 1 28 2 870 1424 0 0 36 7 1 1 0 1 19 3 949 2271 0 0 44 3 1 1 0 1 17 2 809 1384 0 0 0 0 1 6 0 6 16 2 732 1348 0 0 0 0 1 1 0 1 22 4 993 1615 0 0 56 3 1 2 0 3
Eins og þið getið séð af ofangreindu úttakinu sem birtist á flugstöðvarskjánum, er mjög auðvelt að vinna með kerfismælingargildin sem eru til staðar í skipanaúttakinu vegna þess að það birtist á einni línu.
Þegar collectl tólið er keyrt án nokkurs valkosts sýnir það upplýsingar um eftirfarandi undirkerfi:
- örgjörvi
- diska
- net
Athugið: Í okkar tilviki er undirkerfi allar tegundir kerfisauðlinda sem hægt er að mæla.
Þú getur líka sýnt tölfræði fyrir öll undirkerfi nema plötur með því að sameina skipunina með –all valkostinum eins og sýnt er hér að neðan.
# collectl --all waiting for 1 second sample... # #cpu sys inter ctxsw Cpu0 Cpu1 Free Buff Cach Inac Slab Map Fragments KBRead Reads KBWrit Writes KBIn PktIn KBOut PktOut IP Tcp Udp Icmp Tcp Udp Raw Frag Handle Inodes Reads Writes Meta Comm 16 3 817 1542 430 390 1G 175M 1G 683M 193M 1G nsslkjjebbk 0 0 24 3 1 1 0 1 0 0 0 0 623 0 0 0 8160 240829 0 0 0 0 11 1 745 1324 316 426 1G 175M 1G 683M 193M 1G nsslkjjebbk 0 0 0 0 0 3 0 2 0 0 0 0 622 0 0 0 8160 240828 0 0 0 0 15 2 793 1683 371 424 1G 175M 1G 683M 193M 1G ssslkjjebbk 0 0 0 0 1 1 0 1 0 0 0 0 622 0 0 0 8160 240829 0 0 0 0 16 2 872 1875 427 446 1G 175M 1G 683M 193M 1G ssslkjjebbk 0 0 24 3 1 1 0 1 0 0 0 0 622 0 0 0 8160 240828 0 0 0 0 24 2 842 1383 473 368 1G 175M 1G 683M 193M 1G ssslkjjebbk 0 0 168 6 1 1 0 1 0 0 0 0 622 0 0 0 8160 240828 0 0 0 0 27 3 844 1099 478 365 1G 175M 1G 683M 193M 1G nsslkjjebbk 0 0 0 0 1 6 1 9 0 0 0 0 622 0 0 0 8160 240828 0 0 0 0 26 5 823 1238 396 428 1G 175M 1G 683M 193M 1G ssslkjjebbk 0 0 0 0 2 11 3 9 0 0 0 0 622 0 0 0 8160 240828 0 0 0 0 15 1 753 1276 361 391 1G 175M 1G 683M 193M 1G ssslkjjebbk 0 0 40 3 1 2 0 3 0 0 0 0 623 0 0 0 8160 240829 0 0 0 0
En hvernig fylgist þú með örgjörvanotkuninni með hjálp tólsins? „-s“ valmöguleikann ætti að nota til að stjórna hvaða undirkerfisgögnum á að safna eða spila.
Til dæmis er hægt að nota eftirfarandi skipun til að fylgjast með samantekt á örgjörvanotkun.
# collectl -sc waiting for 1 second sample... # #cpu sys inter ctxsw 15 2 749 1155 16 3 772 1445 14 2 793 1247 27 4 887 1292 24 1 796 1258 16 1 743 1113 15 1 743 1179 14 1 706 1078 15 1 764 1268
Hvað gerist þegar þú sameinar skipunina með „scdn“? Besta leiðin til að læra hvernig á að nota skipanalínuverkfæri er að æfa eins mikið og mögulegt er, svo keyrðu eftirfarandi skipun í flugstöðinni þinni og sjáðu hvað er að fara að gerast.
# collectl -scdn waiting for 1 second sample... # #cpu sys inter ctxsw KBRead Reads KBWrit Writes KBIn PktIn KBOut PktOut 25 4 943 3333 0 0 0 0 1 1 0 2 27 3 825 2910 0 0 0 0 1 1 0 1 27 5 886 2531 0 0 0 0 0 0 0 1 20 4 872 2406 0 0 0 0 1 1 0 1 26 1 854 2091 0 0 20 2 1 1 0 1 39 4 1004 3398 0 0 0 0 2 8 3 6 41 6 955 2464 0 0 40 3 1 2 0 3 25 7 890 1609 0 0 0 0 1 1 0 1 16 2 814 1165 0 0 796 43 2 2 0 2 14 1 779 1383 0 0 48 6 1 1 0 1 11 2 795 1285 0 0 0 0 2 14 1 14
Þú getur auðveldlega skilið að sjálfgefinn valkostur er „cdn“, hann stendur fyrir örgjörva, diska og netgögn. Niðurstaða skipunarinnar er sú sama og úttakið „collectl -scn“
Ef þú vilt safna gögnum um minnið skaltu nota eftirfarandi skipun.
# collectl -sm waiting for 1 second sample... # #Free Buff Cach Inac Slab Map 1G 177M 1G 684M 193M 1G 1G 177M 1G 684M 193M 1G 1G 177M 1G 684M 193M 1G 1G 177M 1G 684M 193M 1G 1G 177M 1G 684M 193M 1G 1G 177M 1G 684M 193M 1G 1G 177M 1G 684M 193M 1G 1G 177M 1G 684M 193M 1G
Ofangreind framleiðsla er mjög gagnleg þegar þú vilt fá nákvæmar upplýsingar um minnisnotkun þína, laust minni og annað mikilvægt efni fyrir frammistöðu kerfisins.
Hvað með smá gögn á tcp? Notaðu eftirfarandi skipun til að gera það.
# collectl -st waiting for 1 second sample... # # IP Tcp Udp Icmp 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Eftir að þú hefur aflað þér reynslu geturðu auðveldlega sameinað valkosti til að fá þær niðurstöður sem þú vilt. Til dæmis er hægt að sameina „t“ fyrir tcp og „c“ fyrir örgjörva. Eftirfarandi skipun gerir það.
# collectl -stc waiting for 1 second sample... # #cpu sys inter ctxsw IP Tcp Udp Icmp 23 8 961 3136 0 0 0 0 24 5 916 3662 0 0 0 0 21 8 848 2408 0 0 0 0 30 10 916 2674 0 0 0 0 38 3 826 1752 0 0 0 0 31 3 820 1408 0 0 0 0 15 5 781 1335 0 0 0 0 17 3 802 1314 0 0 0 0 17 3 755 1218 0 0 0 0 14 2 788 1321 0 0 0 0
Það er erfitt fyrir okkur mannfólkið að muna alla tiltæka valkosti svo ég birti yfirlitslistann yfir undirkerfi sem tólið styður.
- b – upplýsingar um félaga (minnisbrot)
- c – CPU
- d – Diskur
- f – NFS V3 Gögn
- i – Inode og skráarkerfi
- j – truflar
- l – Lustre
- m – Minni
- n – Netkerfi
- s – Innstungur
- t – TCP
- x – Samtenging
- y – Hellur (kerfishluta skyndiminni)
Mjög mikilvæg gögn fyrir kerfisstjóra eða Linux notanda eru gögnin sem safnað er um diskanotkun. Eftirfarandi skipun mun hjálpa þér að fylgjast með notkun disksins.
# collectl -sd waiting for 1 second sample... # #KBRead Reads KBWrit Writes 0 0 0 0 0 0 0 0 0 0 92 7 0 0 0 0 0 0 36 3 0 0 0 0 0 0 0 0 0 0 100 7 0 0 0 0
Þú getur líka notað „-sD“ valkostinn til að safna gögnum á einstökum diskum, en þú verður að vita að upplýsingar um heildar diska verða ekki tilkynntar.
# collectl -sD waiting for 1 second sample... # DISK STATISTICS (/sec) # Pct #Name KBytes Merged IOs Size KBytes Merged IOs Size RWSize QLen Wait SvcTim Util sda 0 0 0 0 52 11 2 26 26 1 8 8 1 sda 0 0 0 0 0 0 0 0 0 0 0 0 0 sda 0 0 0 0 24 0 2 12 12 0 0 0 0 sda 0 0 0 0 152 0 4 38 38 0 0 0 0 sda 0 0 0 0 192 45 3 64 64 1 20 20 5 sda 0 0 0 0 204 0 2 102 102 0 0 0 0 sda 0 0 0 0 0 0 0 0 0 0 0 0 0 sda 0 0 0 0 116 26 3 39 38 1 16 16 4 sda 0 0 0 0 0 0 0 0 0 0 0 0 0 sda 0 0 0 0 0 0 0 0 0 0 0 0 0 sda 0 0 0 0 32 5 3 11 10 1 16 16 4 sda 0 0 0 0 0 0 0 0 0 0 0 0 0
Þú getur líka notað önnur smáatriði undirkerfi til að safna ítarlegum gögnum. Eftirfarandi er listi yfir smáatriði undirkerfi.
- C – CPU
- D – Diskur
- E – Umhverfisgögn (vifta, afl, hitastig), í gegnum ipmitool
- F – NFS Gögn
- J – truflar
- L – Luster OST smáatriði EÐA skráakerfi viðskiptavinar
- N – Netkerfi
- T – 65 TCP teljarar eru aðeins fáanlegir á söguþræðisniði
- X – Samtenging
- Y – Hellur (kerfishluta skyndiminni)
- Z – Ferlar
Það eru margir tiltækir valkostir í collectl tólinu, en það er ekki nægur tími og pláss til að ná yfir þá alla í aðeins einni grein. Hins vegar er þess virði að minnast á og kenna hvernig á að nota tólið sem toppur og ps.
Það er mjög auðvelt að láta collectl virka sem efsta tólið, keyrðu bara eftirfarandi skipun í flugstöðinni þinni og þú munt sjá svipaða úttak sem efsta tólið gefur þér þegar það er keyrt í Linux kerfinu þínu.
# collectl --top # TOP PROCESSES sorted by time (counters are /sec) 13:11:02 # PID User PR PPID THRD S VSZ RSS CP SysT UsrT Pct AccuTime RKB WKB MajF MinF Command ^COuch!tecmint 20 1 40 R 1G 626M 0 0.01 0.14 15 28:48.24 0 0 0 109 /usr/lib/firefox/firefox 3403 tecmint 20 1 40 R 1G 626M 1 0.00 0.20 20 28:48.44 0 0 0 600 /usr/lib/firefox/firefox 5851 tecmint 20 4666 0 R 17M 13M 0 0.02 0.06 8 00:01.28 0 0 0 0 /usr/bin/perl 1682 root 20 1666 2 R 211M 55M 1 0.02 0.01 3 03:10.24 0 0 0 95 /usr/bin/X 3454 tecmint 20 3403 8 S 216M 45M 1 0.01 0.02 3 01:23.32 0 0 0 0 /usr/lib/firefox/plugin-container 4658 tecmint 20 4657 3 S 207M 17M 1 0.00 0.02 2 00:08.23 0 0 0 142 gnome-terminal 2890 tecmint 20 2571 3 S 340M 68M 0 0.00 0.01 1 01:19.95 0 0 0 0 compiz 3521 tecmint 20 1 24 S 710M 148M 1 0.01 0.00 1 01:47.84 0 0 0 0 skype 1 root 20 0 0 S 3M 2M 0 0.00 0.00 0 00:02.57 0 0 0 0 /sbin/init 2 root 20 0 0 S 0 0 1 0.00 0.00 0 00:00.00 0 0 0 0 kthreadd 3 root 20 2 0 S 0 0 0 0.00 0.00 0 00:00.60 0 0 0 0 ksoftirqd/0 5 root 0 2 0 S 0 0 0 0.00 0.00 0 00:00.00 0 0 0 0 kworker/0:0H 7 root 0 2 0 S 0 0 0 0.00 0.00 0 00:00.00 0 0 0 0 kworker/u:0H 8 root RT 2 0 S 0 0 0 0.00 0.00 0 00:04.42 0 0 0 0 migration/0 9 root 20 2 0 S 0 0 0 0.00 0.00 0 00:00.00 0 0 0 0 rcu_bh 10 root 20 2 0 R 0 0 0 0.00 0.00 0 00:02.22 0 0 0 0 rcu_sched 11 root RT 2 0 S 0 0 0 0.00 0.00 0 00:00.05 0 0 0 0 watchdog/0 12 root RT 2 0 S 0 0 1 0.00 0.00 0 00:00.07 0 0 0 0 watchdog/1 13 root 20 2 0 S 0 0 1 0.00 0.00 0 00:00.73 0 0 0 0 ksoftirqd/1 14 root RT 2 0 S 0 0 1 0.00 0.00 0 00:01.96 0 0 0 0 migration/1 16 root 0 2 0 S 0 0 1 0.00 0.00 0 00:00.00 0 0 0 0 kworker/1:0H 17 root 0 2 0 S 0 0 1 0.00 0.00 0 00:00.00 0 0 0 0 cpuset
Og nú síðast en ekki síst, til að nota collectl tólið sem ps tólið skaltu keyra eftirfarandi skipun í flugstöðinni þinni. Þú munt fá upplýsingar um ferla í kerfinu þínu á sama hátt og þú gerir þegar þú keyrir ps skipunina í flugstöðinni þinni.
# collectl -c1 -sZ -i:1 waiting for 1 second sample... ### RECORD 1 >>> tecmint-vgn-z13gn <<< (1397979716.001) (Sun Apr 20 13:11:56 2014) ### # PROCESS SUMMARY (counters are /sec) # PID User PR PPID THRD S VSZ RSS CP SysT UsrT Pct AccuTime RKB WKB MajF MinF Command 1 root 20 0 0 S 3M 2M 0 0.00 0.00 0 00:02.57 0 0 0 0 /sbin/init 2 root 20 0 0 S 0 0 1 0.00 0.00 0 00:00.00 0 0 0 0 kthreadd 3 root 20 2 0 S 0 0 0 0.00 0.00 0 00:00.60 0 0 0 0 ksoftirqd/0 5 root 0 2 0 S 0 0 0 0.00 0.00 0 00:00.00 0 0 0 0 kworker/0:0H 7 root 0 2 0 S 0 0 0 0.00 0.00 0 00:00.00 0 0 0 0 kworker/u:0H 8 root RT 2 0 S 0 0 0 0.00 0.00 0 00:04.42 0 0 0 0 migration/0 9 root 20 2 0 S 0 0 0 0.00 0.00 0 00:00.00 0 0 0 0 rcu_bh 10 root 20 2 0 S 0 0 0 0.00 0.00 0 00:02.24 0 0 0 0 rcu_sched 11 root RT 2 0 S 0 0 0 0.00 0.00 0 00:00.05 0 0 0 0 watchdog/0 12 root RT 2 0 S 0 0 1 0.00 0.00 0 00:00.07 0 0 0 0 watchdog/1 13 root 20 2 0 S 0 0 1 0.00 0.00 0 00:00.73 0 0 0 0 ksoftirqd/1 14 root RT 2 0 S 0 0 1 0.00 0.00 0 00:01.96 0 0 0 0 migration/1 16 root 0 2 0 S 0 0 1 0.00 0.00 0 00:00.00 0 0 0 0 kworker/1:0H 17 root 0 2 0 S 0 0 1 0.00 0.00 0 00:00.00 0 0 0 0 cpuset 18 root 0 2 0 S 0 0 1 0.00 0.00 0 00:00.00 0 0 0 0 khelper 19 root 20 2 0 S 0 0 0 0.00 0.00 0 00:00.00 0 0 0 0 kdevtmpfs 20 root 0 2 0 S 0 0 0 0.00 0.00 0 00:00.00 0 0 0 0 netns 21 root 20 2 0 S 0 0 0 0.00 0.00 0 00:00.00 0 0 0 0 bdi-default 22 root 0 2 0 S 0 0 0 0.00 0.00 0 00:00.00 0 0 0 0 kintegrityd
Ég er mjög viss um að margir Linux kerfisstjórar munu líka við þetta tól og finna fyrir krafti þess þegar þeir nota það til hins ýtrasta. Ef þú vilt efla þekkingu þína á collectl á næsta stig skaltu skoða handbókarsíður þess og halda áfram að æfa þig.
Sláðu bara inn eftirfarandi skipun í flugstöðinni þinni og byrjaðu að lesa.
# man collectl
Tilvísunartenglar
collectl Heimasíða