Grafana+Zabbix: Үйлдвэрлэлийн шугамын үйл ажиллагааны дүрслэл

Энэ нийтлэлд би үйлдвэрлэлийн шугамын ажиллагааг дүрслэн харуулахын тулд нээлттэй эхийн Zabbix болон Grafana системийг ашиглах туршлагаа хуваалцахыг хүсч байна. Мэдээлэл нь үйлдвэрлэлийн автоматжуулалт эсвэл IoT төслүүдэд цуглуулсан өгөгдлийг нүдээр харуулах, дүн шинжилгээ хийх хурдан арга хайж буй хүмүүст хэрэгтэй байж болох юм. Уг нийтлэл нь дэлгэрэнгүй заавар биш, харин үйлдвэрийн нээлттэй эхийн программ хангамжид суурилсан хяналтын системийн тухай ойлголт юм.

Хэрэгсэл

Заббик – Үйлдвэрийн мэдээллийн технологийн дэд бүтцэд хяналт тавихын тулд бид үүнийг удаан хугацаанд ашиглаж байна. Систем нь маш тохиромжтой, бүх нийтийнх болсон тул бид үйлдвэрлэлийн шугам, мэдрэгч, хянагчаас өгөгдлийг оруулж эхлэв. Энэ нь бүх хэмжүүрийн өгөгдлийг нэг дор цуглуулж, нөөцийн зарцуулалт, тоног төхөөрөмжийн гүйцэтгэлийн энгийн графикуудыг гаргах боломжийг бидэнд олгосон боловч бидэнд аналитик, үзэсгэлэнтэй график үнэхээр дутагдаж байсан.

Графана нь аналитик болон өгөгдлийг дүрслэн харуулах хүчирхэг хэрэгсэл юм. Олон тооны залгаасууд нь янз бүрийн эх сурвалжаас (zabbix, clickhouse, influxDB) өгөгдөл авч, шууд боловсруулах (дундаж утга, нийлбэр, зөрүү гэх мэт) болон бүх төрлийн график зурах (энгийн шугам, хурд хэмжигч, нарийн төвөгтэй диаграмын хүснэгт).

Зураг.io – онлайн засварлагч дээр энгийн блок диаграммаас шалны төлөвлөгөө хүртэл зурах боломжийг олгодог үйлчилгээ. Маш олон бэлэн загвар, зурсан объектууд байдаг. Өгөгдлийг бүх үндсэн график формат эсвэл xml руу экспортлох боломжтой.

Бүгдийг нь нийлүүлж байна

Grafana болон Zabbix-ийг хэрхэн суулгах, тохируулах талаар олон нийтлэл бичсэн байгаа бөгөөд би үндсэн тохиргооны цэгүүдийн талаар танд хэлэх болно.

Zabbix сервер дээр "сүлжээний зангилаа" (хост) үүсгэгддэг бөгөөд энэ нь манай мэдрэгчээс авсан хэмжүүр бүхий "өгөгдлийн элементүүд" (зүйлс)-ийг эзэмших болно. Зангилаа болон өгөгдлийн элементүүдийн нэрийг урьдчилан бодож, тэдгээрийг аль болох бүтэцтэй болгохыг зөвлөж байна, учир нь бид тэдгээрт графанагаас ердийн хэллэгээр хандах болно. Та нэг хүсэлтээр бүлэг элементүүдээс мэдээлэл авах боломжтой тул энэ арга нь тохиромжтой.

Графанаг тохируулахын тулд та нэмэлт залгаасуудыг суулгах хэрэгтэй болно:

  • Заббикс Александр Зобнин (alexanderzobnin-zabbix-app) - zabbix-тэй нэгтгэх
  • natel-discrete-panel – хэвтээ график дээр салангид дүрслэл хийх залгаас
  • pierosavi-imageit-panel – таны зургийн дээд талд өгөгдөл харуулах залгаас
  • agenty-flowcharting-panel – draw.io сайтаас диаграммыг динамик дүрслэн харуулах залгаас

Zabbix-тэй нэгтгэх нь өөрөө grafana, ConfigurationData sourcesZabbix цэсийн зүйлд тохируулагдсан. Тэнд та api zabbix серверийн хаягийг зааж өгөх хэрэгтэй, энэ бол надад байгаа зүйл юм http://zabbix.local/zabbix/api_jsonrpc.php, нэвтрэхийн тулд нууц үгээр нэвтэрнэ үү. Хэрэв бүх зүйл зөв хийгдсэн бол тохиргоог хадгалахад api хувилбарын дугаар бүхий мессеж гарч ирнэ: zabbix API хувилбар: 5.0.1

Хяналтын самбар үүсгэх

Эндээс Графана болон түүний залгаасуудын ид шид эхэлдэг.

Natel-дискрет самбар залгаас
Шугаман дээрх моторуудын төлөв байдлын талаархи мэдээлэл бидэнд байна (ажиллах = 1, ажиллахгүй = 0). Дискрет графикийг ашигласнаар бид хөдөлгүүрийн төлөв байдал, хэдэн минут/цаг эсвэл % ажилласан, хэр давтамжтай ажиллаж байсныг харуулах масштабыг зурж болно.

Grafana+Zabbix: Үйлдвэрлэлийн шугамын үйл ажиллагааны дүрслэл
Хөдөлгүүрийн төлөв байдлын дүрслэл

Миний бодлоор энэ бол техник хангамжийн гүйцэтгэлийг харуулах хамгийн сайн графикуудын нэг юм. Энэ нь хэр удаан зогссон, ямар горимд илүү олон удаа ажиллаж байгааг шууд харах боломжтой. Маш олон өгөгдөл байж болно, тэдгээрийг мужаар нэгтгэж, утгаараа өөрчлөх боломжтой (хэрэв утга нь "1" бол "ON" гэж харуулна).

Plugin pierosavi-imageit-panel

Зураг нь мэдрэгчээс өгөгдөл ашиглахыг хүссэн диаграмм эсвэл шалны төлөвлөгөөг аль хэдийн зурсан тохиолдолд ашиглахад тохиромжтой. Дүрслэх тохиргоонд та зургийн URL-г зааж өгөх хэрэгтэй бөгөөд шаардлагатай мэдрэгч элементүүдийг нэмэх хэрэгтэй. Элемент нь зураг дээр гарч ирэх бөгөөд хулганаар хүссэн газартаа байрлуулж болно.

Grafana+Zabbix: Үйлдвэрлэлийн шугамын үйл ажиллагааны дүрслэл
Температур ба даралтын хэмжүүр бүхий зуухны диаграмм

Agenty-flowcharting-panel plugin

FlowCharting дүрслэлийг бий болгох талаар илүү дэлгэрэнгүй ярихыг хүсч байна, учир нь энэ нь гайхалтай ажиллагаатай хэрэгсэл юм. Энэ нь динамик мнемоник диаграмм хийх боломжийг олгодог бөгөөд түүний элементүүд нь хэмжүүрийн утгуудад (өнгө, байрлал, нэрийг өөрчлөх гэх мэт) хариу үйлдэл үзүүлэх болно.

Мэдээлэл хүлээн авч байна

Графана дахь аливаа дүрслэлийн элементийг үүсгэх нь эх сурвалжаас мэдээлэл авах хүсэлтээс эхэлдэг бөгөөд манай тохиолдолд энэ нь zabbix юм. Асуултуудыг ашигласнаар бид диаграммд ашиглахыг хүссэн бүх хэмжигдэхүүнийг авах хэрэгтэй. Метрийн дэлгэрэнгүй мэдээлэл нь Zabbix дахь өгөгдлийн элементүүдийн нэрс бөгөөд та бие даасан хэмжигдэхүүн эсвэл ердийн илэрхийллээр шүүсэн багцыг зааж өгч болно. Миний жишээн дэх "Зүйлийн" талбарт "/(^мөр 1)|(боломж)|(цуккини)/" илэрхийлэл агуулагдаж байна - энэ нь: нэр нь "мөр 1"-ээр эхэлсэн эсвэл "боломж" гэсэн үгийг агуулсан бүх хэмжигдэхүүнийг сонгоно гэсэн үг юм. ” эсвэл "цуккини" гэсэн үгийг агуулсан

Grafana+Zabbix: Үйлдвэрлэлийн шугамын үйл ажиллагааны дүрслэл
Эхний эгнээний хөдөлгүүрүүд болон түүхий эд материалын хүртээмжийн талаархи өгөгдлийн хүсэлтийг тохируулах жишээ

Өгөгдлийн хөрвүүлэлт

Эх өгөгдөл нь бидний харуулах шаардлагатай хэлбэрээр үргэлж байдаггүй байж магадгүй юм. Жишээлбэл, бид саванд байгаа бүтээгдэхүүний жингийн (кг) минутын минут тутамд өгөгдөлтэй байдаг бөгөөд бид дүүргэлтийн хурдыг т/цагаар харуулах хэрэгтэй. Би үүнийг дараах байдлаар хийдэг: Би жингийн өгөгдлийг авч, хэмжигдэхүүнүүдийн хоорондох зөрүүг тооцдог графана дельта функцээр хувиргадаг тул одоогийн жин кг / мин болж хувирдаг. Дараа нь би 0.06-аар үржүүлж үр дүнг тонн/цагт авна. Жин хэмжүүрийг хэд хэдэн асуулгад ашигладаг тул би түүнд шинэ нэр (setAlias) зааж өгсөн бөгөөд үүнийг дүрслэх дүрэмд ашиглах болно.

Grafana+Zabbix: Үйлдвэрлэлийн шугамын үйл ажиллагааны дүрслэл
Асуулгад дельта ба үржүүлэгчийн параметрийг ашиглах, хэмжигдэхүүний нэрийг өөрчлөх жишээ

Өгөгдөл хувиргах өөр нэг жишээ энд байна: Би багцын тоог тоолох шаардлагатай болсон (мөчлөгийн эхлэл = хөдөлгүүрийн эхлэл). Хэмжилтийг "1-р мөр - 1-р савнаас насосны насос (төлөв)" хөдөлгүүрийн төлөвт үндэслэн тооцоолно. Өөрчлөлт: бид анхны хэмжүүрийн өгөгдлийг дельта функцээр (утгын зөрүү) өөрчилдөг тул хэмжигдэхүүн нь хөдөлгүүрийг асаахад "+1", зогсоход "-1", хөдөлгүүр ажиллах үед "0" гэсэн утгатай байх болно. статусаа өөрчлөхгүй. Дараа нь би 1-ээс бага бүх утгыг хасаад тэдгээрийг нэгтгэнэ. Үр дүн нь хөдөлгүүр асаах тоо юм.

Grafana+Zabbix: Үйлдвэрлэлийн шугамын үйл ажиллагааны дүрслэл
Өгөгдлийг одоогийн төлөвөөс эхлэх тоо руу хөрвүүлэх жишээ

Одоо визуалчлалын тухай

Дэлгэцийн тохиргоонд "Зураг засах" товчлуур байдаг бөгөөд энэ нь диаграм зурах боломжтой засварлагчийг ажиллуулдаг. Диаграм дээрх объект бүр өөрийн гэсэн параметртэй байдаг. Жишээлбэл, хэрэв та засварлагч дээр фонтын тохиргоог зааж өгвөл тэдгээрийг Grafana дахь өгөгдлийн дүрслэлд ашиглах болно.

Grafana+Zabbix: Үйлдвэрлэлийн шугамын үйл ажиллагааны дүрслэл
Draw.io дээр засварлагч иймэрхүү харагдаж байна

Диаграммыг хадгалсны дараа энэ нь графана дээр гарч ирэх бөгөөд та элементүүдийг өөрчлөх дүрмийг үүсгэж болно.

Parameters()-д бид дараахыг зааж өгнө:

  • Сонголтууд—өгөгдөл нь ашиглагдах хэмжигдэхүүний дүрмийн нэр, нэр эсвэл бусад нэрийг тохируулах (Хэмжихэд хэрэглэх). Өгөгдлийн нэгтгэлийн төрөл (Нэгтгэх) нь хэмжүүрийн эцсийн үр дүнд нөлөөлдөг тул Сүүлд гэдэг нь хамгийн сүүлийн утгыг сонгоно гэсэн үг, дундаж нь баруун дээд буланд сонгосон хугацааны дундаж утга юм.
  • Босго - босго утгын параметр нь өнгөний хэрэглээний логикийг тодорхойлдог, өөрөөр хэлбэл сонгосон өнгө нь хэмжүүрийн өгөгдлөөс хамааран диаграммын элементүүдэд хэрэглэгдэх болно. Миний жишээн дээр хэмжүүрийн утга нь “0”, төлөв нь “Ok” байвал өнгө нь ногоон, утга “>1” бол төлөв нь Critical, өнгө нь улаан байх болно.
  • Өнгө/Хэрэгслийн зааврын зураглал" ба "Шошго/текстийн зураглал" - схемийн элемент болон түүний үйл ажиллагааны хувилбарыг сонгох. Эхний хувилбарт объектыг будаж, хоёр дахь тохиолдолд хэмжүүрийн өгөгдөлтэй текст байх болно. Диаграм дээрх объектыг сонгохын тулд та хэлхээний тэмдэг дээр дарж диаграмм дээр дарах хэрэгтэй.

Grafana+Zabbix: Үйлдвэрлэлийн шугамын үйл ажиллагааны дүрслэл
Энэ жишээнд би насос болон түүний сум ажиллаж байвал улаанаар, ажиллахгүй бол ногоон өнгөөр ​​будна.

Урсгал диаграмын залгаасыг ашиглан би бүх шугамын диаграммыг зурж чадсан бөгөөд үүнд:

  1. нэгжийн өнгө нь тэдний статусын дагуу өөрчлөгддөг
  2. саванд бүтээгдэхүүн байхгүй гэсэн дохиолол байдаг
  3. моторын давтамжийн тохиргоо гарч ирнэ
  4. анхны сав дүүргэх / буулгах хурд
  5. шугамын үйл ажиллагааны циклийн тоог (багц) тооцоолно

Grafana+Zabbix: Үйлдвэрлэлийн шугамын үйл ажиллагааны дүрслэл
Үйлдвэрлэлийн шугамын үйл ажиллагааны дүрслэл

үр дүн

Миний хувьд хамгийн хэцүү зүйл бол хянагчдаас мэдээлэл авах явдал байв. Zabbix-ийн өгөгдөл хүлээн авах олон талт байдал, залгаасуудын ачаар Grafana-ийн уян хатан байдлын ачаар үйлдвэрлэлийн шугамын иж бүрэн хяналтын дэлгэцийг бүтээхэд ердөө хоёрхон хоног зарцуулагдсан. Дүрслэл нь график, улсын статистик мэдээллийг үзэх, сонирхсон хүн бүрт вэбээр дамжуулан хялбар хандах боломжийг олгосон - энэ бүхэн хүндрэл, нэгжийн үр ашиггүй ашиглалтыг хурдан тодорхойлох боломжийг олгосон.

дүгнэлт

Надад Zabbix+Grafana хослол маш их таалагдсан бөгөөд хэрэв та нарийн төвөгтэй арилжааны бүтээгдэхүүнийг програмчлах, хэрэгжүүлэхгүйгээр хянагч эсвэл мэдрэгчээс өгөгдлийг хурдан боловсруулах шаардлагатай бол үүнийг анхаарч үзэхийг зөвлөж байна. Мэдээжийн хэрэг, энэ нь мэргэжлийн SCADA системийг орлохгүй, гэхдээ энэ нь бүхэл бүтэн үйлдвэрлэлд төвлөрсөн хяналт тавих хэрэгсэл болгон хангалттай байх болно.

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх