Å ajÄ rakstÄ vÄlos dalÄ«ties pieredzÄ par atvÄrtÄ pirmkoda sistÄmu Zabbix un Grafana izmantoÅ”anu, lai vizualizÄtu ražoÅ”anas lÄ«niju darbÄ«bu. InformÄcija var bÅ«t noderÄ«ga tiem, kas meklÄ Ätru veidu, kÄ vizuÄli parÄdÄ«t vai analizÄt savÄktos datus rÅ«pnieciskÄs automatizÄcijas vai IoT projektos. Raksts nav detalizÄta apmÄcÄ«ba, bet gan koncepcija par uzraudzÄ«bas sistÄmu, kuras pamatÄ ir atvÄrtÄ pirmkoda programmatÅ«ra ražotnei.
RÄ«kkopa
Zabbix ā mÄs to izmantojam jau ilgu laiku, lai uzraudzÄ«tu rÅ«pnÄ«cas IT infrastruktÅ«ru. SistÄma izrÄdÄ«jÄs tik Ärta un universÄla, ka sÄkÄm tajÄ ievadÄ«t datus no ražoÅ”anas lÄ«nijÄm, sensoriem un kontrolieriem. Tas ļÄva mums apkopot visus metrikas datus vienuviet, izveidot vienkÄrÅ”us resursu patÄriÅa un aprÄ«kojuma veiktspÄjas grafikus, taÄu mums patieÅ”Äm trÅ«ka analÄ«tikas un skaistu grafiku.
grafana ir spÄcÄ«gs analÄ«tikas un datu vizualizÄcijas rÄ«ks. Liels skaits spraudÅu ļauj iegÅ«t datus no dažÄdiem avotiem (zabbix, clickhouse, influxDB), apstrÄdÄt tos lidojuma laikÄ (aprÄÄ·inÄt vidÄjo vÄrtÄ«bu, summu, starpÄ«bu utt.) un zÄ«mÄt visu veidu grafikus (no vienkÄrÅ”Äm lÄ«nijÄm, spidometri, tabulas lÄ«dz sarežģītÄm diagrammÄm).
Draw.io ā pakalpojums, kas ļauj zÄ«mÄt no vienkÄrÅ”as blokshÄmas lÄ«dz stÄva plÄnam tieÅ”saistes redaktorÄ. Ir daudz gatavu veidÅu un zÄ«mÄtu objektu. Datus var eksportÄt uz visiem galvenajiem grafikas formÄtiem vai xml.
Visu to apvienojot
Ir daudz rakstu par to, kÄ instalÄt un konfigurÄt Grafana un Zabbix, es jums pastÄstÄ«Å”u par galvenajiem konfigurÄcijas punktiem.
Zabbix serverÄ« tiek izveidots ātÄ«kla mezglsā (resursdators), kuram piederÄs ādatu elementiā (vienumi) ar mÅ«su sensoru metriku. Ieteicams iepriekÅ” pÄrdomÄt mezglu un datu elementu nosaukumus un padarÄ«t tos pÄc iespÄjas strukturÄtÄkus, jo mÄs tiem piekļūsim no grafana, izmantojot regulÄras izteiksmes. Å Ä« pieeja ir Ärta, jo ar vienu pieprasÄ«jumu var iegÅ«t datus no elementu grupas.
Lai konfigurÄtu grafana, jums bÅ«s jÄinstalÄ papildu spraudÅi:
- Aleksandra ZobÅina Zabbix (alexanderzobnin-zabbix-app) ā integrÄcija ar zabbix
- natel-discrete-panel ā spraudnis diskrÄtai vizualizÄcijai horizontÄlÄ grafikÄ
- pierosavi-imageit-panel ā spraudnis datu parÄdÄ«Å”anai attÄla augÅ”pusÄ
- agenty-flowcharting-panel ā spraudnis diagrammas dinamiskai vizualizÄcijai no draw.io
Pati integrÄcija ar Zabbix ir konfigurÄta grafana izvÄlnes vienumÄ ConfigurationData sourcesZabbix. Tur jÄnorÄda api zabbix servera adrese, tÄda man ir
InformÄcijas paneļa izveide
Å eit sÄkas Grafana un tÄs spraudÅu burvÄ«ba.
Natel diskrÄta paneļa spraudnis
Mums ir dati par motoru stÄvokli uz lÄ«nijÄm (strÄdÄ = 1, nedarbojas = 0). Izmantojot diskrÄto grafiku, mÄs varam uzzÄ«mÄt skalu, kurÄ bÅ«s redzams: dzinÄja statuss, cik minÅ«tes/stundas vai % tas strÄdÄja un cik bieži tas tika iedarbinÄts.
DzinÄja statusu vizualizÄcija
ManuprÄt, Å”is ir viens no labÄkajiem grafikiem aparatÅ«ras veiktspÄjas vizualizÄÅ”anai. Uzreiz var redzÄt, cik ilgi ir bijis dÄ«kstÄvÄ un kÄdos režīmos strÄdÄ biežÄk. Datu var bÅ«t daudz, tos var apkopot pa diapazoniem, pÄrveidot pÄc vÄrtÄ«bÄm (ja vÄrtÄ«ba ir ā1, tad parÄdÄ«t to kÄ āONā)
Spraudnis pierosavi-imageit-panel
Imageit ir Ärti lietot, ja jums jau ir uzzÄ«mÄta diagramma vai stÄva plÄns, kurÄ vÄlaties lietot datus no sensoriem. VizualizÄcijas iestatÄ«jumos ir jÄnorÄda attÄla URL un jÄpievieno nepiecieÅ”amie sensora elementi. Elements parÄdÄs attÄlÄ un ar peli to var novietot vÄlamajÄ vietÄ.
KrÄsns diagramma ar temperatÅ«ras un spiediena metriku
spraudnis agenty-flowcharting-panel
Es vÄlÄtos sÄ«kÄk pastÄstÄ«t par FlowCharting vizualizÄcijas izveidi, jo tas ir neticami funkcionÄls rÄ«ks. Tas ļauj izveidot dinamisku mnemonisku diagrammu, kuras elementi reaÄ£Äs uz metrikas vÄrtÄ«bÄm (mainÄ«t krÄsu, pozÄ«ciju, nosaukumu utt.).
Datu saÅemÅ”ana
Jebkura vizualizÄcijas elementa izveide programmÄ Grafana sÄkas ar datu pieprasÄ«jumu no avota, mÅ«su gadÄ«jumÄ tas ir zabbix. Izmantojot vaicÄjumus, mums ir jÄiegÅ«st visa metrika, ko mÄs vÄlamies izmantot diagrammÄ. Metrikas informÄcija ir Zabbix datu elementu nosaukumi; varat norÄdÄ«t atseviŔķu metriku vai kopu, kas filtrÄta, izmantojot regulÄro izteiksmi. ManÄ piemÄrÄ laukÄ Vienums ir izteiciens: "/(^rinda 1)|(pieejamÄ«ba)|(cukini)/" ā tas nozÄ«mÄ: atlasiet visus rÄdÄ«tÄjus, kuru nosaukums sÄkas ar "rindu 1" vai satur vÄrdu "pieejamÄ«ba". ā vai satur vÄrdu ācukiniā
PiemÄrs datu pieprasÄ«juma izveidei par pirmÄs rindas dzinÄjiem un izejvielu pieejamÄ«bu
Datu konvertÄÅ”ana
Avota dati ne vienmÄr var bÅ«t tÄdÄ formÄ, kÄdÄ mums tie jÄparÄda. PiemÄram, mums ir minÅ«ti pa minÅ«ti dati par produkta svaru traukÄ (kg), un mums ir jÄuzrÄda uzpildes Ätrums t/stundÄ. Es to daru Å”Ädi: Åemu svara datus un pÄrveidoju tos ar funkciju grafana delta, kas aprÄÄ·ina starpÄ«bu starp metriskajÄm vÄrtÄ«bÄm, tÄpÄc paÅ”reizÄjais svars pÄrvÄrÅ”as kg/min. Tad es reizinu ar 0.06, lai iegÅ«tu rezultÄtu tonnÄs/stundÄ. TÄ kÄ svara metrika tiek izmantota vairÄkos vaicÄjumos, es norÄdÄ«ju tam jaunu aizstÄjvÄrdu (setAlias) un izmantoÅ”u to vizualizÄcijas noteikumÄ.
PiemÄrs parametra delta un reizinÄtÄja izmantoÅ”anai un metrikas pÄrdÄvÄÅ”anai vaicÄjumÄ
Å eit ir vÄl viens datu konvertÄÅ”anas piemÄrs: man vajadzÄja saskaitÄ«t partiju skaitu (cikla sÄkums = dzinÄja iedarbinÄÅ”ana). Metrika tiek aprÄÄ·inÄta, pamatojoties uz motora stÄvokli "1. lÄ«nija - sÅ«kÅa sÅ«knis no tvertnes 1 (statuss)". TransformÄcija: mÄs mainÄm sÄkotnÄjÄs metrikas datus ar delta funkciju (vÄrtÄ«bu starpÄ«ba), tÄpÄc metrikai bÅ«s vÄrtÄ«ba ā+1ā motora iedarbinÄÅ”anai, ā-1ā apturÄÅ”anai un ā0ā, kad dzinÄjs to iedarbina. nemaina savu statusu. Tad es noÅemu visas vÄrtÄ«bas, kas ir mazÄkas par 1, un tÄs summÄju. RezultÄts ir dzinÄja palaiÅ”anas reižu skaits.
PiemÄrs datu konvertÄÅ”anai no paÅ”reizÄjÄ statusa uz sÄkumu skaitu
Tagad par paÅ”u vizualizÄciju
Displeja iestatÄ«jumos ir poga āRediÄ£Ät zÄ«mÄjumuā, kas palaiž redaktoru, kurÄ var zÄ«mÄt diagrammu. Katram objektam diagrammÄ ir savi parametri. PiemÄram, ja redaktorÄ norÄdÄt fonta iestatÄ«jumus, tie tiks lietoti datu vizualizÄcijai programmÄ Grafana.
Å Ädi izskatÄs redaktors vietnÄ Draw.io
PÄc diagrammas saglabÄÅ”anas tÄ parÄdÄ«sies grafÄnÄ, un jÅ«s varat izveidot noteikumus elementu maiÅai.
Parametros () mÄs norÄdÄm:
- Opcijas ā iestatiet kÄrtulas nosaukumu, tÄs metrikas nosaukumu vai aizstÄjvÄrdu, kuras dati tiks izmantoti (Lietot metrikai). Datu apkopoÅ”anas veids (Aggregation) ietekmÄ metrikas gala rezultÄtu, tÄpÄc PÄdÄjais nozÄ«mÄ, ka tiks atlasÄ«ta pÄdÄjÄ vÄrtÄ«ba, bet vidÄjÄ vÄrtÄ«ba ir augÅ”ÄjÄ labajÄ stÅ«rÄ« atlasÄ«tÄ perioda vidÄjÄ vÄrtÄ«ba.
- SliekÅ”Åi - sliekÅ”Åa vÄrtÄ«bu parametrs apraksta krÄsu pielietojuma loÄ£iku, tas ir, izvÄlÄtÄ krÄsa tiks piemÄrota diagrammas elementiem atkarÄ«bÄ no metrikas datiem. ManÄ piemÄrÄ, ja metrikas vÄrtÄ«ba ir ā0ā, statuss ir āOkā, krÄsa bÅ«s zaļa, ja vÄrtÄ«ba ir ā>1ā, statuss bÅ«s Kritisks un krÄsa bÅ«s sarkana.
- KrÄsu/rÄ«ka padomu kartÄjumi" un "EtiÄ·etes/teksta kartÄjumi" ā shÄmas elementa un tÄ darbÄ«bas scenÄrija atlase. PirmajÄ scenÄrijÄ objekts tiks nokrÄsots, otrajÄ uz tÄ bÅ«s teksts ar datiem no metrikas. Lai diagrammÄ atlasÄ«tu objektu, jums jÄnoklikŔķina uz Ä·Ädes zÄ«mes un noklikŔķiniet uz diagrammas.
Å ajÄ piemÄrÄ es krÄsoju sÅ«kni un tÄ bultiÅu sarkanu, ja tas darbojas, un zaļu, ja tas nedarbojas.
Izmantojot blokshÄmas spraudni, es varÄju uzzÄ«mÄt visas lÄ«nijas diagrammu, kurÄ:
- vienÄ«bu krÄsa mainÄs atbilstoÅ”i to statusam
- ir trauksme par produkta neesamību konteineros
- tiek parÄdÄ«ts motora frekvences iestatÄ«jums
- pirmais tvertnes uzpildes/izmeÅ”anas Ätrums
- tiek aprÄÄ·inÄts lÄ«nijas darbÄ«bas ciklu skaits (partija).
RažoÅ”anas lÄ«nijas darbÄ«bas vizualizÄcija
PiedzÄ«vojiet efektÄ«vu rezultÄtu spÄku
VisgrÅ«tÄk man bija iegÅ«t datus no kontrolieriem. Pateicoties Zabbix daudzpusÄ«bai datu saÅemÅ”anas ziÅÄ un Grafana elastÄ«bai spraudÅu dÄļ, bija nepiecieÅ”amas tikai dažas dienas, lai izveidotu visaptveroÅ”u ražoÅ”anas lÄ«nijas uzraudzÄ«bas ekrÄnu. VizualizÄcija ļÄva skatÄ«t grafikus un stÄvokļa statistiku, kÄ arÄ« Ärtu piekļuvi tÄ«meklÄ« ikvienam interesentam - tas viss ļÄva Ätri noteikt vÄjÄs vietas un neefektÄ«vu mÄrvienÄ«bu izmantoÅ”anu.
SecinÄjums
Man ļoti patika Zabbix+Grafana kombinÄcija un iesaku tai pievÄrst uzmanÄ«bu, ja nepiecieÅ”ams Ätri apstrÄdÄt datus no kontrolleriem vai sensoriem, neprogrammÄjot un neievieÅ”ot sarežģītus komercproduktus. Protams, tas neaizstÄs profesionÄlÄs SCADA sistÄmas, taÄu ar to pietiks kÄ instruments visas ražoÅ”anas centralizÄtai uzraudzÄ«bai.
Avots: www.habr.com