Як почати роботу з Checkmk

Моніторинг ІТ-інфраструктури складний, але такий інструмент, як Checkmk, полегшує його.

Багато організацій додали хмарні технології до свого набору технологій, щоб підвищити продуктивність своїх продуктів. У той же час вони часто продовжують керувати власними мережами та локальною інфраструктурою. Цей перехід до гібридних інфраструктур необхідно розглянути в моніторингу через величезну кількість показників, які генеруються щосекунди для різних компонентів, таких як операційна система, сховище, сервер, хмарні середовища тощо. Усі вони важливі для забезпечення максимальної продуктивності програм. продуктивність.

Ці показники є важливим сигналом для команд DevOps, щоб зрозуміти працездатність своєї інфраструктури. Ось чому організаціям потрібне рішення для моніторингу, яке допоможе їм швидко виявити проблеми у виробництві за допомогою показників, візуалізації та аналітики. Checkmk є одним із найпопулярніших і найкорисніших інструментів моніторингу інфраструктури. У цій статті я розповім вам, чому Checkmk заслуговує такої гарної репутації та як ви можете зробити перші кроки з ним.

Що таке Checkmk?

Checkmk постійно перевіряє роботу будь-якого аспекту сучасних ІТ-середовищ і особливо добре підходить для гібридних інфраструктур. З одного боку, Checkmk є гнучким і підтримує контейнери, хмарні ресурси та локальні системи, такі як комутатори та сервери. З іншого боку, розпочати та керувати своїм моніторингом дуже легко, оскільки Checkmk постачається з автоматичними сповіщеннями на основі багатого досвіду ІТ та інших інтелектуальних функцій, які заощадять вам багато часу.

Якщо ви хочете використовувати Checkmk безкоштовно, у вас є два варіанти: по-перше, ви можете вибрати Checkmk Raw Edition, який є повністю відкритим і безкоштовним для використання без будь-яких обмежень. По-друге, є Пробна версія Checkmk Enterprise який має всі додаткові функції Checkmk Enterprise Editions, але через 30 днів кількість хостів буде обмежено до 25.

Як Checkmk вирішує проблему?

Checkmk може контролювати програми, сервери, бази даних, мережі, контейнери, сховище тощо. Він надає величезний список із понад 2000 плагінів моніторингу. За допомогою цих плагінів. Checkmk можна розширити для моніторингу конкретних технологій від різних постачальників, доступних на ринку. Кілька популярних плагінів Checkmk призначені для Docker, Kubernetes, Cisco, Nginx, VMware, Linux, Windows, AWS, Dell. Завдяки понад 2000 плагінам Checkmk є дуже перспективним рішенням для моніторингу інфраструктури, доступним на даний момент.

Крім того, для будь-якого рішення моніторингу важливо, наскільки швидко та правильно вони можуть зчитувати показники та налаштовувати інтелектуальні сповіщення та сповіщення. Рішення Checkmk відповідає всім цим критеріям. Завдяки функції автоматичного виявлення Checkmk може ідентифікувати понад 90% служб і пристроїв. Зараз більшість підприємств потребують масштабованості та автоматизації. Ви можете з легкістю масштабувати потужність моніторингу від сотень хостів до тисяч хостів у Checkmk і використовувати його агенти, доступні для автоматизації.

  Як швидко додавати посилання, фотографії та медіа до Apple Notes на iPhone та iPad

Встановіть Checkmk у контейнер Docker

У цій статті я збираюся встановити Checkmk Raw Edition у контейнері Docker на сервері Linux, що працює на Ubuntu 20.04. З Dockerhub ви можете завантажити Контейнер Checkmk Docker. На сьогоднішній день він має понад 5 мільйонів спроб, що свідчить про те, наскільки популярним і широко використовуваним є Checkmk.

Візьміть образ Docker з останньою версією Checkmk і запустіть його всередині контейнера за допомогою команди 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

Назва контейнера буде «monitoring», веб-сервер буде слухати порт 5000 і відкриватиметься на порту 8080 вузла. Контейнер використовуватиме тимчасову файлову систему та місцевий часовий пояс.

[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, виконавши команду 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

Виконайте команду docker ps, щоб перевірити, чи запущено контейнер 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

Щоб отримати дані для входу у веб-інтерфейс Checkmk, роздрукуйте журнал контейнера 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

Контейнер Checkmk Docker запускатиметься за замовчуванням за адресою https://localhost:8080/cmk/check_mk. Результат наведеної вище команди повідомляє вам, що ім’я користувача — cmkadmin і пароль, у моєму випадку пароль — ClFxBPre. Відкрийте адресу у веб-браузері та ввійдіть за допомогою своїх облікових даних.

  Як видалити всі повідомлення та розмови Kik

Після входу в систему з’явиться «Головна інформаційна панель». Він порожній, оскільки ви ще не додали жодного хоста.

Монітор Docker за допомогою Checkmk

Зазвичай ви встановлюєте агент Checkmk на свою машину, на якій розміщено ваші контейнери Docker, а потім використовуєте плагін Checkmk для Docker для моніторингу всіх контейнерів. Цей плагін (mk_docker.py) використовує Python-API Docker для відстеження контейнерів Docker і отримання повної видимості їх стану та продуктивності в реальному часі. Ви можете прочитати докладніше про Моніторинг Docker за допомогою Checkmk на сайті Checkmk.

Оскільки в моєму середовищі Docker працює лише один контейнер Docker, мій контейнер Checkmk Docker, я просто використовую агент Checkmk, який працює в контейнері Docker, і не встановлюватиму Checkmk на своєму хості Docker. Агент попередньо встановлено в контейнері Checkmk, тому мені просто потрібно додати свій контейнер Checkmk як хост.

Давайте отримаємо IP-адресу, на якій працює служба Docker, за допомогою ifconfig на терміналі.

[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

У моєму випадку служба Docker працює на 172.17.0.1. Наступним кроком буде додавання служби Docker як хоста в Checkmk, щоб її можна було контролювати.

  • Перейдіть до Checkmk і натисніть «Налаштування» -> «Хости».
  Spotify продовжує призупинятися [Best Fixes]

  • Тепер введіть ім’я хоста та IP-адресу та натисніть «Зберегти та перейти до конфігурації служби».

  • Щойно ви це зробите, Checkmk автоматично почне пошук служби.

Прокрутіть униз, щоб побачити служби моніторингу, що працюють на хості Docker. Ви бачите, що сервіси зараз не контролюються. Якщо ви хочете контролювати все, найпростішим рішенням є натиснути «Виправити все». Якщо ви хочете налаштувати, які служби слід відстежувати, ви також можете зробити це детально. Клацніть на знак +, якщо ви хочете контролювати послугу.

Після вибору служб, які потрібно відстежувати, вони з’являться на вкладці «Відстежувані служби». Ви отримаєте всі відомості про стан кожної служби, яку ви відстежуєте. Якщо натиснути на ? знак, ця служба переміститься до списку невизначених послуг. Якщо натиснути на знак X, служба переміститься на вкладку «Відключені служби».

Я вимкнув чотири служби, тому я бачу їх на вкладці «Вимкнути служби».

Коли ви закінчите з додаванням служб, вам потрібно активувати зміни, перш ніж вони підуть у виробництво.

  • Натисніть на виділене поле з жовтим знаком оклику (!) у верхньому правому куті, щоб побачити незавершені зміни.
  • Натисніть «Активувати» на вибраних сайтах.

Ви успішно відстежили служби Docker за допомогою Checkmk!

Висновок

Ось і все про Checkmk, інструмент моніторингу інфраструктури. Це дуже простий у використанні інструмент, який ви повинні спробувати контролювати виробниче середовище. Рекомендую спробувати Безкоштовна версія Checkmk щоб розпочати моніторинг.