Grafana+Zabbix: ishlab chiqarish liniyasining ishlashini vizualizatsiya qilish

Ushbu maqolada men ochiq kodli Zabbix va Grafana tizimlaridan foydalanish bo'yicha tajribamni ishlab chiqarish liniyalarining ishlashini ko'rish uchun baham ko'rmoqchiman. Ma'lumotlar sanoat avtomatizatsiyasi yoki IoT loyihalarida to'plangan ma'lumotlarni vizual ravishda ko'rsatish yoki tahlil qilishning tezkor usulini izlayotganlar uchun foydali bo'lishi mumkin. Maqola batafsil o'quv qo'llanma emas, balki ishlab chiqarish zavodi uchun ochiq kodli dasturiy ta'minotga asoslangan monitoring tizimi uchun tushunchadir.

Uskunalar to'plami

Zabbix – biz zavodning IT infratuzilmasini kuzatish uchun uzoq vaqtdan beri foydalanamiz. Tizim shu qadar qulay va universal bo'lib chiqdiki, biz unga ishlab chiqarish liniyalari, sensorlar va kontrollerlardan ma'lumotlarni kiritishni boshladik. Bu bizga barcha o'lchov ma'lumotlarini bir joyda to'plash, resurslar iste'moli va uskunaning ishlashining oddiy grafiklarini yaratish imkonini berdi, ammo bizda haqiqatan ham tahlil va chiroyli grafiklar etishmadi.

grafana analitik va ma'lumotlarni vizualizatsiya qilish uchun kuchli vositadir. Ko'p sonli plaginlar sizga turli manbalardan (zabbix, clickhouse, influxDB) ma'lumotlarni olish, ularni tezda qayta ishlash (o'rtacha qiymat, yig'indi, farq va boshqalarni hisoblash) va barcha turdagi grafiklarni (oddiy chiziqlardan, tezlik o'lchagichlar, murakkab diagrammalar uchun jadvallar ).

Draw.io – onlayn muharrirda oddiy blok-sxemadan qavat rejasiga chizish imkonini beruvchi xizmat. Ko'plab tayyor shablonlar va chizilgan narsalar mavjud. Ma'lumotlarni barcha asosiy grafik formatlarga yoki xml ga eksport qilish mumkin.

Hammasini bir joyga qo'yish

Grafana va Zabbixni qanday o'rnatish va sozlash haqida ko'plab maqolalar yozilgan, men sizga asosiy konfiguratsiya nuqtalari haqida aytib beraman.

Zabbix serverida "tarmoq tuguni" (host) yaratilgan bo'lib, u "ma'lumotlar elementlari" (elementlar) bizning sensorlar ko'rsatkichlariga ega bo'ladi. Tugunlar va ma'lumotlar elementlarining nomlarini oldindan o'ylab ko'rish va ularni iloji boricha tuzilgan qilish tavsiya etiladi, chunki biz ularga oddiy iboralar orqali grafanadan kiramiz. Ushbu yondashuv qulay, chunki siz bitta so'rov bilan elementlar guruhidan ma'lumotlarni olishingiz mumkin.

Granani sozlash uchun siz qo'shimcha plaginlarni o'rnatishingiz kerak bo'ladi:

  • Aleksandr Zobnin tomonidan Zabbix (alexanderzobnin-zabbix-app) - zabbix bilan integratsiya
  • natel-diskret-panel - gorizontal grafikda diskret vizualizatsiya uchun plagin
  • pierosavi-imageit-panel - rasmingizning yuqori qismida ma'lumotlarni ko'rsatish uchun plagin
  • agenty-flowcharting-panel - draw.io dan diagrammani dinamik vizualizatsiya qilish uchun plagin

Zabbix bilan integratsiyaning o'zi grafana, ConfigurationData sourcesZabbix menyusida sozlangan. U erda siz api zabbix serverining manzilini ko'rsatishingiz kerak, bu menda bor http://zabbix.local/zabbix/api_jsonrpc.php, va kirish uchun parol bilan kiring. Agar hamma narsa to'g'ri bajarilgan bo'lsa, sozlamalarni saqlashda api versiya raqami ko'rsatilgan xabar paydo bo'ladi: zabbix API versiyasi: 5.0.1

Boshqaruv paneli yaratish

Grafana va uning plaginlari sehri shu erdan boshlanadi.

Natel-diskret panel plagini
Bizda liniyalardagi motorlarning holati to'g'risida ma'lumotlar mavjud (ishlayotgan = 1, ishlamaydi =0). Diskret grafikdan foydalanib, biz ko'rsatadigan o'lchovni chizishimiz mumkin: dvigatelning holati, necha daqiqa/soat yoki % ishlaganligi va qanchalik tez-tez ishga tushirilganligi.

Grafana+Zabbix: ishlab chiqarish liniyasining ishlashini vizualizatsiya qilish
Dvigatel holatini vizualizatsiya qilish

Menimcha, bu apparat ishlashini vizualizatsiya qilish uchun eng yaxshi grafikalardan biridir. Siz darhol qancha vaqt ishlamay qolganini va qaysi rejimlarda tez-tez ishlashini ko'rishingiz mumkin. Ma'lumotlar juda ko'p bo'lishi mumkin, ularni diapazonlar bo'yicha jamlash, qiymatlar bo'yicha o'zgartirish mumkin (agar qiymat "1" bo'lsa, uni "ON" sifatida ko'rsating)

Plagin pierosavi-imageit-panel

Tasvirni sizda allaqachon chizilgan diagramma yoki datchiklar ma'lumotlarini qo'llashni xohlagan qavat rejasi mavjud bo'lganda ishlatish qulay. Vizualizatsiya sozlamalarida siz tasvirning URL manzilini ko'rsatishingiz va kerakli sensor elementlarini qo'shishingiz kerak. Element rasmda ko'rinadi va sichqoncha yordamida kerakli joyga joylashtirilishi mumkin.

Grafana+Zabbix: ishlab chiqarish liniyasining ishlashini vizualizatsiya qilish
Harorat va bosim ko'rsatkichlari bilan o'choq diagrammasi

agenty-flowcharting-panel plagini

FlowCharting vizualizatsiyasini yaratish haqida batafsilroq gaplashmoqchiman, chunki bu juda funktsional vosita. Bu sizga dinamik mnemonik diagrammani yaratishga imkon beradi, uning elementlari ko'rsatkichlar qiymatlariga ta'sir qiladi (rang, joy, nom va boshqalarni o'zgartirish).

Ma'lumotlarni qabul qilish

Grafana-da har qanday vizualizatsiya elementini yaratish manbadan ma'lumotlarni so'rash bilan boshlanadi, bizning holatlarimizda bu zabbix. So'rovlardan foydalanib, biz diagrammada foydalanmoqchi bo'lgan barcha ko'rsatkichlarni olishimiz kerak. Metrik tafsilotlar - Zabbix-dagi ma'lumotlar elementlarining nomlari; siz individual metrikani yoki muntazam ifoda orqali filtrlangan to'plamni belgilashingiz mumkin. Mening misolimda Item maydonida quyidagi ibora mavjud: “/(^1-satr)|(mavjudlik)|(qovoq)/” - bu degani: nomi “1-qator” bilan boshlangan yoki “mavjudlik” so‘zini o‘z ichiga olgan barcha ko‘rsatkichlarni tanlang. ” yoki tarkibida “qovoq” so‘zi bor

Grafana+Zabbix: ishlab chiqarish liniyasining ishlashini vizualizatsiya qilish
Birinchi qatorli dvigatellar va xom ashyo mavjudligi haqida ma'lumotlar uchun so'rovni o'rnatish misoli

Ma'lumotlarni konvertatsiya qilish

Manba ma'lumotlari har doim ham biz uni ko'rsatishimiz kerak bo'lgan shaklda bo'lmasligi mumkin. Misol uchun, bizda idishdagi mahsulotning og'irligi (kg) bo'yicha daqiqama-daqiqa ma'lumotlarimiz bor va biz to'ldirish tezligini t/soatda ko'rsatishimiz kerak. Men buni quyidagi tarzda qilaman: men vazn ma'lumotlarini olaman va uni metrik qiymatlar orasidagi farqni hisoblaydigan grafana delta funktsiyasi bilan o'zgartiraman, shuning uchun joriy og'irlik kg / min ga aylanadi. Keyin natijani tonna/soatda olish uchun 0.06 ga ko'paytiraman. Og'irlik ko'rsatkichi bir nechta so'rovlarda ishlatilganligi sababli, men unga yangi taxallusni (setAlias) belgilayman va uni vizualizatsiya qoidasida ishlataman.

Grafana+Zabbix: ishlab chiqarish liniyasining ishlashini vizualizatsiya qilish
Delta va multiplikator parametridan foydalanish va so'rovda metrikani qayta nomlash misoli

Ma'lumotni konvertatsiya qilishning yana bir misoli: men partiyalar sonini hisoblashim kerak edi (tsikl boshlanishi = vosita ishga tushishi). Ko'rsatkich "1-qator - 1-tankdan nasos pompasi (holat)" dvigatel holatiga qarab hisoblanadi. Transformatsiya: biz dastlabki metrikaning ma'lumotlarini delta funktsiyasi (qiymatlar farqi) bilan o'zgartiramiz, shuning uchun ko'rsatkich dvigatelni ishga tushirish uchun "+1", to'xtash uchun "-1" va dvigatel ishlaganda "0" qiymatiga ega bo'ladi. holatini o'zgartirmaydi. Keyin 1 dan kichik barcha qiymatlarni olib tashlayman va ularni jamlayman. Natijada dvigatelning ishga tushirilishi soni.

Grafana+Zabbix: ishlab chiqarish liniyasining ishlashini vizualizatsiya qilish
Ma'lumotni joriy holatdan boshlanishlar soniga aylantirishga misol

Endi vizualizatsiyaning o'zi haqida

Displey sozlamalarida "Chizishni tahrirlash" tugmasi mavjud bo'lib, u diagramma chizishingiz mumkin bo'lgan muharrirni ishga tushiradi. Diagrammadagi har bir ob'ekt o'z parametrlariga ega. Misol uchun, agar siz muharrirda shrift sozlamalarini belgilasangiz, ular Grafana'da ma'lumotlarni vizualizatsiya qilish uchun qo'llaniladi.

Grafana+Zabbix: ishlab chiqarish liniyasining ishlashini vizualizatsiya qilish
Draw.io-da muharrir shunday ko'rinadi

Diagramma saqlangandan so'ng, u grafanada paydo bo'ladi va siz elementlarni o'zgartirish qoidalarini yaratishingiz mumkin.

Parameter() da biz quyidagilarni belgilaymiz:

  • Variantlar—qoida nomini, maʼlumotlari ishlatiladigan metrikaning nomi yoki taxallusni oʻrnating (Metriklarga qoʻllash). Ma'lumotlarni yig'ish turi (Aggregatsiya) metrikaning yakuniy natijasiga ta'sir qiladi, shuning uchun Oxirgi oxirgi qiymat tanlanishini bildiradi, avg - yuqori o'ng burchakda tanlangan davr uchun o'rtacha qiymat.
  • Eshiklar - chegara qiymatlari parametri rangni qo'llash mantiqini tavsiflaydi, ya'ni tanlangan rang metrik ma'lumotlarga qarab diagrammadagi elementlarga qo'llaniladi. Mening misolimda, agar o'lchov qiymati "0" bo'lsa, holat "Ok" bo'lsa, rang yashil bo'ladi, qiymat ">1" bo'lsa, holat Kritik va rang qizil bo'ladi.
  • Rang/Tooltipi xaritalari" va "Yorliq/matnli xaritalar" - sxema elementi va uning xatti-harakati uchun stsenariyni tanlash. Birinchi stsenariyda ob'ekt bo'yalgan bo'ladi, ikkinchisida metrik ma'lumotlar bilan matn bo'ladi. Diagrammadagi ob'ektni tanlash uchun siz sxema belgisini bosishingiz va diagramma ustiga bosishingiz kerak.

Grafana+Zabbix: ishlab chiqarish liniyasining ishlashini vizualizatsiya qilish
Ushbu misolda men nasosni va uning o'qini ishlasa qizil rangga, ishlamasa yashil rangga bo'yayman.

Oqim diagrammasi plaginidan foydalanib, men butun chiziqning diagrammasini chizishga muvaffaq bo'ldim, unda:

  1. birliklarning rangi ularning holatiga mos ravishda o'zgaradi
  2. idishlarda mahsulot yo'qligi haqida signal mavjud
  3. vosita chastotasi sozlamalari ko'rsatiladi
  4. birinchi tankni to'ldirish / tushirish tezligi
  5. liniyaning ishlash davrlari soni (partiya) hisoblanadi

Grafana+Zabbix: ishlab chiqarish liniyasining ishlashini vizualizatsiya qilish
Ishlab chiqarish liniyasining ishlashini ingl

natija

Men uchun eng qiyin narsa nazoratchilardan ma'lumot olish edi. Zabbix-ning ma'lumotlarni qabul qilish nuqtai nazaridan ko'p qirraliligi va plaginlar tufayli Grafana-ning moslashuvchanligi tufayli ishlab chiqarish liniyasining keng qamrovli monitoringi ekranini yaratish uchun bir necha kun kerak bo'ldi. Vizualizatsiya grafiklar va davlat statistikasini ko'rish imkonini berdi, shuningdek, barcha qiziquvchilarga Internet orqali oson kirish imkonini berdi - bularning barchasi qiyinchiliklarni tezda aniqlash va birliklardan samarasiz foydalanish imkonini berdi.

xulosa

Menga Zabbix+Grafana kombinatsiyasi juda yoqdi va agar sizga murakkab tijorat mahsulotlarini dasturlash yoki amalga oshirishsiz kontrollerlar yoki sensorlardan olingan ma'lumotlarni tezda qayta ishlash kerak bo'lsa, unga e'tibor berishni maslahat beraman. Albatta, bu professional SCADA tizimlarining o'rnini bosa olmaydi, lekin bu butun ishlab chiqarishning markazlashtirilgan monitoringi uchun vosita sifatida etarli bo'ladi.

Manba: www.habr.com

a Izoh qo'shish