أصبحت المراقبة سهلة: كيف تبدأ مع Checkmk

نشرت: 2021-11-24

تعتبر مراقبة البنية التحتية لتكنولوجيا المعلومات معقدة ، ولكن أداة مثل Checkmk تجعلها أسهل.

أضافت العديد من المؤسسات تقنيات السحابة الأصلية إلى مجموعة التقنيات الخاصة بها لتحسين أداء منتجاتها. في الوقت نفسه ، غالبًا ما يستمرون في تشغيل شبكاتهم الخاصة والبنية التحتية المحلية. يجب معالجة هذا التحول إلى البنية التحتية المختلطة في المراقبة نظرًا للعدد الهائل من المقاييس التي يتم إنشاؤها كل ثانية لمكونات مختلفة مثل نظام التشغيل والتخزين والخادم والبيئات السحابية وما إلى ذلك ، وكلها مهمة للتأكد من تشغيل التطبيقات في الذروة أداء.

هذه المقاييس هي إشارة أساسية لفرق DevOps لفهم سلامة بنيتها التحتية. هذا هو السبب في أن المؤسسات بحاجة إلى حل مراقبة لمساعدتها على تحديد المشكلات بسرعة في الإنتاج باستخدام المقاييس والتصورات والتحليلات. Checkmk هي واحدة من أكثر أدوات مراقبة البنية التحتية شيوعًا وإفادة. في هذا المقال ، سأخبرك لماذا تستحق Checkmk سمعتها الطيبة وكيف يمكنك اتخاذ الخطوات الأولى معها.

ما هو Checkmk؟

يتحقق Checkmk باستمرار من وظيفة أي جانب من جوانب بيئات تكنولوجيا المعلومات الحديثة وهو مناسب بشكل خاص للبنى التحتية المختلطة. من ناحية أخرى ، يعتبر Checkmk مرنًا ويدعم الحاويات والأصول السحابية والأنظمة المحلية مثل المفاتيح والخوادم. من ناحية أخرى ، من السهل حقًا البدء وإدارة المراقبة الخاصة بك ، لأن Checkmk يأتي مع تنبيهات تلقائية تعتمد على الكثير من الخبرة في مجال تكنولوجيا المعلومات والميزات الذكية الأخرى التي ستوفر لك الكثير من الوقت.

إذا كنت تريد استخدام Checkmk مجانًا ، فلديك خياران: أولاً ، يمكنك الذهاب إلى Checkmk Raw Edition ، وهو مفتوح المصدر تمامًا ومجاني للاستخدام دون أي قيود. ثانيًا ، هناك إصدار Checkmk Enterprise التجريبي الذي يحتوي على جميع الميزات الإضافية لإصدارات Checkmk Enterprise ، ولكن بعد 30 يومًا ، سيقتصر عدد المضيفين على 25.

كيف يحل Checkmk المشكلة؟

يمكن لـ Checkmk مراقبة التطبيقات والخوادم وقواعد البيانات والشبكات والحاويات والتخزين وما إلى ذلك. يوفر قائمة ضخمة من أكثر من 2000 مراقبة المكونات الإضافية. مع هذه المكونات الإضافية. يمكن تمديد Checkmk لمراقبة تقنيات معينة من بائعين مختلفين متاحين في السوق. بعض المكونات الإضافية الشائعة لـ Checkmk هي Docker و Kubernetes و Cisco و Nginx و VMware و Linux و Windows و AWS و Dell. مع أكثر من 2000 مكون إضافي ، تبرز Checkmk كحل واعد جدًا لمراقبة البنية التحتية المتاح حاليًا.

أيضًا ، بالنسبة لأي حل مراقبة ، من الأهمية بمكان مدى سرعة وصحة قراءة المقاييس وإعداد التنبيهات والإشعارات الذكية. يلبي حل Checkmk كل هذه المعايير. من خلال ميزة الاكتشاف التلقائي ، يمكن لـ Checkmk تحديد أكثر من 90٪ من الخدمات والأجهزة. الآن ، تتطلب معظم الشركات قابلية التوسع والأتمتة. يمكنك زيادة سعة المراقبة من مئات المضيفين إلى آلاف المضيفين بسهولة في Checkmk والاستفادة من وكلائها المتاحين للأتمتة.

قم بتثبيت Checkmk في حاوية Docker

في هذه المقالة ، سأقوم بتثبيت Checkmk Raw Edition في حاوية Docker على خادم Linux يعمل على Ubuntu 20.04. من Dockerhub ، يمكنك تنزيل حاوية Checkmk Docker. لديها ما يقرب من 5 ملايين + سحب حتى الآن ، مما يوضح مدى شعبية Checkmk واستخدامها على نطاق واسع.

checkmk dockerhub

التقط صورة 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

سيكون اسم الحاوية هو "المراقبة" ، وسوف يستمع خادم الويب إلى المنفذ 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. افتح العنوان في متصفح الويب واستخدم بيانات الاعتماد الخاصة بك لتسجيل الدخول.

checkmk تسجيل الدخول

بمجرد تسجيل الدخول ، هذه هي "لوحة التحكم الرئيسية" التي ستظهر. إنه فارغ لأنك لم تقم بإضافة أي مضيفين حتى الآن.

لوحة القيادة checkmk

مراقبة عامل الإرساء باستخدام 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 وانقر فوق Setup -> Hosts.

يستضيف checkmk

  • انقر فوق "إضافة مضيف".

checkmk إضافة المضيف

  • قدم الآن اسم المضيف وعنوان IP وانقر فوق "حفظ وانتقل إلى تكوين الخدمة".

checkmk المضيف عامل ميناء

  • بمجرد القيام بذلك ، سيبدأ Checkmk في اكتشاف الخدمة تلقائيًا.

checkmk عامل ميناء

قم بالتمرير لأسفل لرؤية خدمات المراقبة التي تعمل تحت مضيف Docker. يمكنك أن ترى أن الخدمات لا تتم مراقبتها حاليًا. إذا كنت ترغب في مراقبة كل شيء ، فإن أسهل حل هو النقر فوق "إصلاح الكل". إذا كنت ترغب في تكوين الخدمات التي يجب مراقبتها ، يمكنك القيام بذلك بالتفصيل أيضًا. انقر فوق علامة + إذا كنت تريد مراقبة خدمة.

checkmk قائمة خدمة عامل ميناء

بمجرد تحديد الخدمات التي تريد مراقبتها ، ستظهر في علامة التبويب "الخدمات المراقبة". ستحصل على جميع تفاصيل الحالة لكل خدمة تراقبها. إذا قمت بالنقر فوق ؟ التوقيع ، ستنتقل هذه الخدمة إلى قائمة الخدمات التي لم يتم تحديدها. إذا قمت بالنقر فوق علامة X ، فستنتقل الخدمة إلى علامة التبويب "الخدمات المعطلة".

checkmk للخدمات المراقبة

لقد عطلت أربع خدمات ، لذا يمكنني رؤيتها في علامة التبويب تعطيل الخدمات.

checkmk المعوقين الخدمات

عندما تنتهي من إضافة الخدمات ، تحتاج إلى تنشيط التغييرات قبل أن تدخل حيز الإنتاج.

  • انقر فوق الحقل المميز بعلامة التعجب الصفراء (!) في الزاوية اليمنى العليا لمشاهدة التغييرات المعلقة.
  • انقر فوق تنشيط في المواقع المحددة .

لقد نجحت في مراقبة خدمات Docker باستخدام Checkmk!

استنتاج

كان هذا كل شيء عن Checkmk ، أداة مراقبة البنية التحتية. إنها أداة سهلة الاستخدام للغاية يجب أن تحاول مراقبة بيئات الإنتاج الخاصة بك. أوصي بتجربة الإصدار المجاني من Checkmk لبدء المراقبة.