İzleme artık daha kolay: Checkmk'ye nasıl başlanır?

Yayınlanan: 2021-11-24

BT Altyapısı izleme karmaşıktır, ancak Checkmk gibi bir araç bunu kolaylaştırır.

Birçok kuruluş, ürünlerinin performansını artırmak için teknoloji yığınlarına bulutta yerel teknolojiler ekledi. Aynı zamanda, genellikle kendi ağlarını ve şirket içi altyapılarını çalıştırmaya devam ederler. İşletim sistemi, depolama, sunucu, bulut ortamları vb. gibi çeşitli bileşenler için her saniye üretilen çok sayıda metrik nedeniyle, hibrit altyapılara olan bu geçişin izlemede ele alınması gerekiyor. Bunların tümü, uygulamaların en üst düzeyde çalışmasını sağlamak için önemlidir. verim.

Bu ölçümler, DevOps ekiplerinin altyapılarının durumunu anlamaları için önemli bir sinyaldir. Bu nedenle kuruluşların üretimdeki sorunları metrikler, görselleştirmeler ve analitiklerle hızlı bir şekilde belirlemelerine yardımcı olacak bir izleme çözümüne ihtiyacı vardır. Checkmk, en popüler ve yardımcı altyapı izleme araçlarından biridir. Bu yazıda, Checkmk'nin neden bu iyi itibarı hak ettiğini ve onunla ilk adımları nasıl atabileceğinizi anlatacağım.

Checkmk nedir?

Checkmk, modern BT ortamlarının herhangi bir yönünün işlevini sürekli olarak kontrol eder ve özellikle hibrit altyapılar için çok uygundur. Bir yandan Checkmk esnektir ve kapsayıcıları, bulut varlıklarını ve anahtarlar ve sunucular gibi şirket içi sistemleri destekler. Öte yandan, başlamak ve izlemenizi yönetmek gerçekten çok kolay çünkü Checkmk, birçok BT uzmanlığına dayalı otomatik uyarılar ve size çok zaman kazandıracak diğer akıllı özelliklerle birlikte gelir.

Checkmk'i ücretsiz kullanmak istiyorsanız iki seçeneğiniz var: Birincisi, tamamen açık kaynak kodlu ve herhangi bir sınırlama olmaksızın kullanımı ücretsiz olan Checkmk Raw Edition'a gidebilirsiniz. İkincisi, Checkmk Enterprise Editions'ın tüm ek özelliklerine sahip olan Checkmk Enterprise Trial Edition var, ancak 30 gün sonra ana bilgisayar sayısı 25 ile sınırlı olacak.

Checkmk sorunu nasıl çözüyor?

Checkmk uygulamaları, sunucuları, veritabanlarını, ağları, kapsayıcıları, depolamayı vb. izleyebilir. 2.000'den fazla izleme eklentisinden oluşan devasa bir liste sunar. Bu eklentiler ile. Checkmk, piyasada bulunan farklı satıcılardan belirli teknolojileri izlemek için genişletilebilir. Birkaç popüler Checkmk eklentisi Docker, Kubernetes, Cisco, Nginx, VMware, Linux, Windows, AWS, Dell içindir. 2.000'den fazla eklentisi ile Checkmk, şu anda mevcut olan çok umut verici bir altyapı izleme çözümü olarak öne çıkıyor.

Ayrıca, herhangi bir izleme çözümü için, metrikleri ne kadar hızlı ve doğru okuyabilecekleri ve akıllı uyarı ve bildirimler kurabilecekleri çok önemlidir. Checkmk'nin çözümü tüm bu kriterleri karşılamaktadır. Otomatik keşif özelliği ile Checkmk, hizmet ve cihazların %90'ından fazlasını tanımlayabilir. Artık çoğu işletme ölçeklenebilirlik ve otomasyon gerektiriyor. Checkmk'te izleme kapasitesini yüz ana bilgisayardan binlerce ana bilgisayara kolaylıkla ölçeklendirebilir ve otomasyon için mevcut aracılarından yararlanabilirsiniz.

Checkmk'yi bir Docker kapsayıcısına kurun

Bu yazımda Ubuntu 20.04 üzerinde çalışan bir Linux sunucu üzerinde bir Docker konteynerine Checkmk Raw Edition kurulumu yapacağım. Dockerhub'dan Checkmk Docker kapsayıcısını indirebilirsiniz. Şimdiye kadar neredeyse 5 milyondan fazla çekişe sahip, bu da Checkmk'nin ne kadar popüler ve yaygın olarak kullanıldığını gösteriyor.

checkmk dockerhub

En son Checkmk sürümüyle Docker görüntüsünü alın ve docker container run komutunu kullanarak bir kapsayıcı içinde çalıştırın.

 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

Konteynerin adı 'izleme' olacak, web sunucusu 5000 bağlantı noktasını dinleyecek ve düğümün 8080 numaralı bağlantı noktasında açılacaktır. Kap, geçici dosya sistemini ve yerel saat dilimini kullanır.

 [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

Docker image komutunu çalıştırarak Docker docker images indirilip indirilmediğini kontrol edebilirsiniz.

 [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

Checkmk kapsayıcısının çalışıp çalışmadığını görmek için docker ps komutunu çalıştırın.

 [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

Checkmk web arayüzü için oturum açma ayrıntılarını almak için Checkmk kapsayıcı günlüğünü yazdırın.

 [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

Checkmk Docker kapsayıcısı varsayılan olarak https://localhost:8080/cmk/check_mk konumunda çalışacaktır . Yukarıdaki komutun çıktısı size kullanıcı adının cmkadmin ve şifre olduğunu söyler, benim durumumda şifre ClFxBPre. Adresi bir web tarayıcısında açın ve oturum açmak için kimlik bilgilerinizi kullanın.

checkmk giriş

Giriş yaptığınızda, bu görünecek olan 'Ana kontrol paneli'dir. Henüz herhangi bir ana bilgisayar eklemediğiniz için boş.

kontrol paneli

Checkmk Kullanarak Docker'ı İzleme

Genellikle, Checkmk aracısını Docker kapsayıcılarınızı barındıran makinenize yükler ve ardından tüm kapsayıcıları izlemek için Docker için Checkmk eklentisini kullanırsınız. Bu eklenti (mk_docker.py), Docker kapsayıcılarını izlemek ve gerçek zamanlı durum ve performanslarına ilişkin tam görünürlük elde etmek için Docker'ın Python-API'sini kullanır. Checkmk ile Docker izleme hakkında daha fazla ayrıntıyı Checkmk web sitesinde okuyabilirsiniz.

Docker ortamımda çalışan tek bir Docker konteyneri olduğundan, Checkmk Docker konteynerim, sadece Docker konteynerinde çalışan Checkmk aracısını kullanacağım ve Checkmk'yi Docker ana bilgisayarıma kurmayacağım. Aracı, Checkmk kapsayıcısına önceden yüklenmiştir, bu nedenle, yalnızca Checkmk kapsayıcımı ana bilgisayar olarak eklemem gerekiyor.

Terminal üzerinde ifconfig kullanarak Docker servisinin çalıştığı IP adresini alalım.

 [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

Benim durumumda Docker hizmeti 172.17.0.1 üzerinde çalışıyor. Bir sonraki adım, Docker hizmetini, izlenebilmesi için Checkmk'de bir ana bilgisayar olarak eklemektir.

  • Checkmk'ye gidin ve Kurulum -> Ana Bilgisayarlar'a tıklayın.

checkmk ana bilgisayarları

  • "Ev sahibi ekle"yi tıklayın.

checkmk ana bilgisayar ekle

  • Şimdi ana bilgisayar adını ve IP adresini sağlayın ve 'Kaydet ve hizmet yapılandırmasına git' seçeneğine tıklayın.

checkmk ana bilgisayar liman işçisi

  • Bunu yaptığınızda, Checkmk hizmet keşfini otomatik olarak başlatacaktır.

checkmk liman işçisi hizmeti

Docker ana bilgisayarı altında çalışan izleme hizmetlerini görmek için aşağı kaydırın. Hizmetlerin şu anda izlenmediğini görebilirsiniz. Her şeyi izlemek istiyorsanız, en kolay çözüm 'Tümünü düzelt'i tıklamaktır. Hangi servislerin izlenmesi gerektiğini yapılandırmak istiyorsanız, bunu detaylı olarak da yapabilirsiniz. Bir hizmeti izlemek istiyorsanız + işaretine tıklayın.

checkmk liman işçisi hizmet listesi

İzlemek istediğiniz hizmetleri seçtiğinizde, bunlar 'İzlenen hizmetler' sekmesine gelirler. İzlediğiniz her hizmet için tüm durum ayrıntılarını alacaksınız. üzerine tıklarsanız ? işareti, o hizmet kararsız hizmetler listesine taşınacaktır. X işaretine tıklarsanız, hizmet 'Devre dışı bırakılan hizmetler' sekmesine taşınır.

checkmk izlenen hizmetler

Dört hizmeti devre dışı bıraktım, böylece bunları devre dışı bırakma hizmetleri sekmesinde görebiliyorum.

checkmk engelli hizmetleri

Hizmetleri eklemeyi tamamladığınızda, değişiklikleri üretime geçmeden önce etkinleştirmeniz gerekir.

  • Bekleyen değişiklikleri görmek için sağ üst köşede sarı ünlem işareti (!) bulunan vurgulanan alana tıklayın.
  • Seçili sitelerde etkinleştir'e tıklayın.

Checkmk kullanarak Docker hizmetlerini başarıyla izlediniz!

Çözüm

Yani hepsi bir altyapı izleme aracı olan Checkmk ile ilgiliydi. Üretim ortamlarınızı izlemek için denemeniz gereken, kullanımı çok kolay bir araçtır. İzlemeye başlamak için Checkmk Ücretsiz Sürümü denemenizi tavsiye ederim.