Cum să începeți cu Checkmk

Monitorizarea infrastructurii IT este complexă, dar un instrument precum Checkmk o face mai ușoară.

Multe organizații au adăugat tehnologii native cloud la stack-ul lor de tehnologie pentru a îmbunătăți performanța produselor lor. În același timp, deseori continuă să ruleze propriile rețele și infrastructura locală. Această trecere la infrastructurile hibride trebuie abordată în monitorizare, datorită numărului imens de metrici care sunt generate în fiecare secundă pentru diferite componente, cum ar fi sistemul de operare, stocarea, serverul, mediile cloud etc. Toate sunt importante pentru a vă asigura că aplicațiile rulează la vârf. performanţă.

Aceste valori sunt un semnal esențial pentru ca echipele DevOps să înțeleagă starea de sănătate a infrastructurii lor. Acesta este motivul pentru care organizațiile au nevoie de o soluție de monitorizare care să le ajute să identifice rapid problemele din producție cu metrici, vizualizări și analize. Checkmk este unul dintre cele mai populare și utile instrumente de monitorizare a infrastructurii. În acest articol, vă voi spune de ce Checkmk își merită buna reputație și cum puteți face primii pași cu el.

Ce este Checkmk?

Checkmk verifică constant funcționarea oricărui aspect al mediilor IT moderne și este deosebit de potrivit pentru infrastructurile hibride. Pe de o parte, Checkmk este flexibil și acceptă containere, active cloud și sisteme locale, cum ar fi comutatoarele și serverele. Pe de altă parte, este foarte ușor să începeți și să vă gestionați monitorizarea, deoarece Checkmk vine cu alerte automate bazate pe multă experiență IT și alte funcții inteligente care vă vor economisi mult timp.

Dacă doriți să utilizați Checkmk gratuit, aveți două opțiuni: În primul rând, puteți alege Checkmk Raw Edition, care este complet open-source și este gratuită, fără limitări. În al doilea rând, există Checkmk Enterprise Trial Edition care are toate caracteristicile suplimentare ale Checkmk Enterprise Editions, dar după 30 de zile numărul de gazde va fi limitat la 25.

Cum rezolvă Checkmk problema?

Checkmk poate monitoriza aplicații, servere, baze de date, rețele, containere, stocare și altele. Oferă o listă masivă de peste 2.000 de plug-in-uri de monitorizare. Cu aceste plug-in-uri. Checkmk poate fi extins pentru a monitoriza tehnologii specifice de la diferiți furnizori disponibili pe piață. Câteva pluginuri populare Checkmk sunt pentru Docker, Kubernetes, Cisco, Nginx, VMware, Linux, Windows, AWS, Dell. Cu peste 2.000 de plug-in-uri, Checkmk se remarcă ca o soluție foarte promițătoare de monitorizare a infrastructurii disponibilă în prezent.

  Gestionați-vă finanțele afacerii cu contul de verificare Novo

De asemenea, pentru orice soluție de monitorizare, este crucial cât de rapid și corect pot citi valorile și pot configura alerte și notificări inteligente. Soluția Checkmk îndeplinește toate aceste criterii. Cu caracteristica sa de auto-descoperire, Checkmk poate identifica mai mult de 90% dintre servicii și dispozitive. Acum, majoritatea afacerilor necesită scalabilitate și automatizare. Puteți scala cu ușurință capacitatea de monitorizare de la o sută de gazde la mii de gazde în Checkmk și să utilizați agenții săi disponibili pentru automatizare.

Instalați Checkmk într-un container Docker

În acest articol, voi instala Checkmk Raw Edition într-un container Docker pe un server Linux care rulează pe Ubuntu 20.04. Din Dockerhub, puteți descărca Container Checkmk Docker. Are aproape 5 milioane de extrageri până acum, ceea ce arată cât de popular și utilizat pe scară largă este Checkmk.

Luați imaginea Docker cu cea mai recentă versiune Checkmk și rulați-o într-un container utilizând comanda docker container run.

docker container run -dit -p 8080:5000 --tmpfs /opt/omd/sites/cmk/tmp:uid=1000,gid=1000 -v monitoring:/omd/sites --name monitoring -v /etc/localtime:/etc/localtime:ro --restart always checkmk/check-mk-raw:2.0.0-latest

Numele containerului va fi „monitorizare”, serverul web va asculta portul 5000 și se va deschide la portul 8080 al nodului. Containerul va folosi sistemul de fișiere temporar și fusul orar local.

[email protected]:~$ sudo docker container run -dit -p 8080:5000 --tmpfs /opt/omd/sites/cmk/tmp:uid=1000,gid=1000 -v/omd/sites --name monitoring -v/etc/localtime:/etc/localtime:ro --restart always checkmk/check-mk-raw:2.0.0-latest
Unable to find image 'checkmk/check-mk-raw:2.0.0-latest' locally
2.0.0-latest: Pulling from checkmk/check-mk-raw
33847f680f63: Pull complete
474905f2790b: Pull complete
1804f0e63047: Pull complete
f36fe6334464: Pull complete
03c68dfa69cf: Pull complete
b60cfdb78e96: Pull complete
Digest: sha256:7788fa2e31c7270be201d75285c13ccc7a74f67f991872ea63ba0cfa6708cac6
Status: Downloaded newer image for checkmk/check-mk-raw:2.0.0-latest
9729e323a840a08b0e758cfa9e6dbf76ba5dab4b2ecc4eea5174b8ee1a5cfbcf

Puteți verifica dacă imaginea Docker a fost descărcată rulând comanda Docker images.

[email protected]:~$ sudo docker images
REPOSITORY              TAG            IMAGE ID       CREATED        SIZE
bitnami/node-exporter   latest         ba0f519ca49b   34 hours ago   104MB
checkmk/check-mk-raw    2.0.0-latest   097319702432   13 days ago    1.03GB
hello-world             latest         feb5d9fea6a5   7 weeks ago    13.3kB

Rulați comanda docker ps pentru a vedea dacă rulează containerul Checkmk.

[email protected]:~$ sudo docker ps
CONTAINER ID   IMAGE                               COMMAND                  CREATED              STATUS                             PORTS                                                 NAMES
9729e323a840   checkmk/check-mk-raw:2.0.0-latest   "/docker-entrypoint.…"   About a minute ago   Up 59 seconds (health: starting)   6557/tcp, 0.0.0.0:8080->5000/tcp, :::8080->5000/tcp   monitoring
3d3a95ed3c25   bitnami/node-exporter:latest        "/opt/bitnami/node-e…"   25 hours ago         Up 25 hours                        9100/tcp                                              node-exporter

Pentru a obține detaliile de conectare pentru interfața web Checkmk, tipăriți jurnalul containerului Checkmk.

[email protected]:~$ sudo docker container logs 9729e323a840 
### CREATING SITE 'cmk'
Adding /opt/omd/sites/cmk/tmp to /etc/fstab.
Going to set TMPFS to off.
Temporary filesystem already mounted
Updating core configuration...
Generating configuration for core (type nagios)...Precompiling host checks...OK
OK
Executing post-create script "01_create-sample-config.py"...OK
Created new site cmk with version 2.0.0p15.cre.

  The site can be started with omd start cmk.
  The default web UI is available at http://9729e323a840/cmk/

  The admin user for the web applications is cmkadmin with password: ClFxBPre
  For command line administration of the site, log in with 'omd su cmk'.
  After logging in, you can change the password for cmkadmin with 'htpasswd etc/htpasswd cmkadmin'.

### STARTING XINETD
[ ok ] Starting internet superserver: xinetd.
### STARTING SITE
Temporary filesystem already mounted
Starting mkeventd...OK
Starting rrdcached...OK
Starting npcd...OK
Starting nagios...OK
Starting apache...OK
Starting redis...OK
Initializing Crontab...OK
### STARTING CRON
### CONTAINER STARTED

Containerul Checkmk Docker va rula implicit la https://localhost:8080/cmk/check_mk. Ieșirea comenzii de mai sus vă spune că numele de utilizator este cmkadmin și parola, în cazul meu parola este ClFxBPre. Deschideți adresa într-un browser web și utilizați acreditările pentru a vă conecta.

  20 de sfaturi și trucuri pentru Apple Watch pe care trebuie să le cunoașteți

După ce vă conectați, acesta este „Tabloul de bord principal” care va apărea. Este gol, deoarece nu ați adăugat încă gazde.

Monitorizați Docker folosind Checkmk

De obicei, instalați agentul Checkmk pe mașina dvs. care găzduiește containerele dvs. Docker și apoi utilizați pluginul Checkmk pentru Docker pentru a monitoriza toate containerele. Acest plug-in (mk_docker.py) folosește Python-API-ul Docker pentru a urmări containerele Docker și pentru a obține vizibilitate deplină asupra stării și performanței lor în timp real. Puteți citi mai multe detalii despre Monitorizare Docker cu Checkmk pe site-ul web Checkmk.

Deoarece în mediul meu Docker există un singur container Docker care rulează, containerul meu Checkmk Docker, voi folosi doar agentul Checkmk care rulează în containerul Docker și nu voi instala Checkmk pe gazda mea Docker. Agentul este preinstalat în containerul Checkmk, prin urmare, trebuie doar să adaug containerul meu Checkmk ca gazdă.

Să obținem adresa IP pe care rulează serviciul Docker utilizând ifconfig pe terminal.

[email protected]:~$ ifconfig
docker0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.17.0.1  netmask 255.255.0.0  broadcast 172.17.255.255
        inet6 fe80::42:59ff:fe8a:8ba8  prefixlen 64  scopeid 0x20<link>
        ether 02:42:59:8a:8b:a8  txqueuelen 0  (Ethernet)
        RX packets 5559  bytes 7230215 (7.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4164  bytes 614703 (614.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.108  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::144a:4682:35e7:bb2  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:91:82:82  txqueuelen 1000  (Ethernet)
        RX packets 699491  bytes 1044235622 (1.0 GB)
        RX errors 0  dropped 7  overruns 0  frame 0
        TX packets 101260  bytes 7555470 (7.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 20655  bytes 8446042 (8.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 20655  bytes 8446042 (8.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

veth44ba5ce: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet6 fe80::145f:1fff:fee9:a7b0  prefixlen 64  scopeid 0x20<link>
        ether 16:5f:1f:e9:a7:b0  txqueuelen 0  (Ethernet)
        RX packets 5559  bytes 7308041 (7.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4173  bytes 616263 (616.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

vetha82ee43: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet6 fe80::585c:6fff:fe0a:a79b  prefixlen 64  scopeid 0x20<link>
        ether 5a:5c:6f:0a:a7:9b  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 92  bytes 9799 (9.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

În cazul meu, serviciul Docker rulează pe 172.17.0.1. Următorul pas este să adăugați serviciul Docker ca gazdă în Checkmk, astfel încât să poată fi monitorizat.

  • Accesați Checkmk și faceți clic pe Setup -> Hosts.
  Cum să remediați tabelele corupte în MySQL

  • Acum furnizați numele de gazdă și adresa IP și faceți clic pe „Salvați și mergeți la configurația serviciului”.

  • Odată ce faci asta, Checkmk va porni automat descoperirea serviciului.

Derulați în jos pentru a vedea serviciile de monitorizare care rulează sub gazda Docker. Puteți vedea că serviciile nu sunt monitorizate în prezent. Dacă doriți să monitorizați totul, cea mai simplă soluție este să faceți clic pe „Remediați totul”. Dacă doriți să configurați ce servicii ar trebui monitorizate, puteți face acest lucru și în detaliu. Faceți clic pe semnul + dacă doriți să monitorizați un serviciu.

Odată ce selectați serviciile pe care doriți să le monitorizați, acestea vor apărea în fila „Servicii monitorizate”. Veți primi toate detaliile de stare pentru fiecare serviciu pe care îl monitorizați. Daca dai click pe ? semn, serviciul respectiv se va muta în lista serviciilor nehotărâte. Dacă faceți clic pe semnul X, serviciul se va muta în fila „Servicii dezactivate”.

Am dezactivat patru servicii, așa că le pot vedea în fila dezactivează servicii.

Când ați terminat cu adăugarea serviciilor, trebuie să activați modificările înainte ca acestea să intre în producție.

  • Faceți clic pe câmpul evidențiat cu semnul de exclamare galben (!) în colțul din dreapta sus pentru a vedea modificările în așteptare.
  • Faceți clic pe Activare pe site-urile selectate.

Ați monitorizat cu succes serviciile Docker folosind Checkmk!

Concluzie

Deci, totul a fost despre Checkmk, un instrument de monitorizare a infrastructurii. Este un instrument foarte ușor de utilizat pe care trebuie să încercați să vă monitorizați mediile de producție. Recomand să încercați Checkmk Free Edition pentru a începe monitorizarea.