{"id":33632,"date":"2019-10-31T21:53:52","date_gmt":"2019-10-31T18:53:52","guid":{"rendered":"https:\/\/prohoster.info\/blog\/eshhe-odna-sistema-monitoringa\/"},"modified":"2019-10-31T21:53:52","modified_gmt":"2019-10-31T18:53:52","slug":"eshhe-odna-sistema-monitoringa","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/eshhe-odna-sistema-monitoringa","title":{"rendered":"E\u0161te jeden syst\u00e9m monitorovania","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"E\u0161te jeden syst\u00e9m monitorovania\" src=\"\/wp-content\/uploads\/2019\/05\/88d4cf9cc7bbb9aeeddef21a14f6434b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>16 modemov, 4 mobiln\u00ed oper\u00e1tori = Odch\u00e1dzaj\u00faca r\u00fdchlos\u0165 933,45 Mbit\/s<\/em> <\/p>\n<p><\/p>\n<h2 id=\"vvedenie\">\u00davod<\/h2>\n<p><\/p>\n<p>Ahoj! Toto je \u010dl\u00e1nok o tom, ako sme si vytvorili nov\u00fd monitorovac\u00ed syst\u00e9m. Na rozdiel od existuj\u00facich syst\u00e9mov pon\u00faka vysokofrekven\u010dn\u00e9 synchronizovan\u00e9 z\u00edskavanie metr\u00edk a ve\u013emi mal\u00e9 spotreby zdrojov. Frekvencia dotazovania m\u00f4\u017ee dosiahnu\u0165 0,1 milisekundy s presnos\u0165ou synchroniz\u00e1cie medzi metr\u00edkami v 10 nanosekund\u00e1ch. V\u0161etky bin\u00e1rne s\u00fabory zaberaj\u00fa 6 megabajtov. <\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2 id=\"o-proekte\">O projekte<\/h2>\n<p><\/p>\n<p>M\u00e1me dos\u0165 \u0161pecifick\u00fd produkt. Vyr\u00e1bame komplexn\u00e9 rie\u0161enie na zhrnutie prenosovej kapacity a odolnosti d\u00e1tov\u00fdch kan\u00e1lov. To znamen\u00e1, \u017ee m\u00e1me nieko\u013eko kan\u00e1lov, napr\u00edklad Oper\u00e1tor1 (40 Mbit\/s) + Oper\u00e1tor2 (30 Mbit\/s) + nie\u010do \u010fal\u0161ie (5 Mbit\/s), v\u00fdsledkom je jeden stabiln\u00fd a r\u00fdchly kan\u00e1l, ktor\u00e9ho r\u00fdchlos\u0165 bude pribli\u017ene tak\u00e1to: (40+30+5)x0.92=75\u00d70.92=69 Mbit\/s. <\/p>\n<p><\/p>\n<p>Tak\u00e9to rie\u0161enia s\u00fa \u017eiadan\u00e9 tam, kde kapacita ak\u00e9hoko\u013evek jedn\u00e9ho kan\u00e1la nie je dostato\u010dn\u00e1. Napr\u00edklad doprava, syst\u00e9my videonahr\u00e1vania a streamovania videa v re\u00e1lnom \u010dase, prenos \u017eiv\u00fdch r\u00e1dio a telev\u00edznych vysielan\u00ed, ak\u00e9ko\u013evek vidiecke objekty, kde s\u00fa v oblasti komunik\u00e1cie len z\u00e1stupcovia ve\u013ekej \u0161tvorky a r\u00fdchlos\u0165 na jednom modeme\/kan\u00e1li nie je dostato\u010dn\u00e1.<br \/>\nPre ka\u017ed\u00fa z t\u00fdchto oblast\u00ed vyd\u00e1vame samostatn\u00fa radu zariaden\u00ed, av\u0161ak ich softv\u00e9rov\u00e1 \u010das\u0165 je takmer rovnak\u00e1 a kvalitn\u00fd monitorovac\u00ed syst\u00e9m je jedn\u00fdm z jeho hlavn\u00fdch modulov, bez spr\u00e1vnej implement\u00e1cie ktor\u00e9ho by produkt nebol mo\u017en\u00fd.<\/p>\n<p><\/p>\n<p>Za nieko\u013eko rokov sa n\u00e1m podarilo vytvori\u0165 viacvrstvov\u00fd r\u00fdchly, multiplatformov\u00fd a \u013eahk\u00fd monitorovac\u00ed syst\u00e9m. O ktor\u00fd sa chceme podeli\u0165 s v\u00e1\u017eenou komunitou.<\/p>\n<p><\/p>\n<h2 id=\"postanovka-zadachi\">Stanovenie \u00falohy<\/h2>\n<p><\/p>\n<p>Monitorovac\u00ed syst\u00e9m zabezpe\u010duje z\u00edskavanie metr\u00edk dvoch z\u00e1sadne odli\u0161n\u00fdch tried: metriky v re\u00e1lnom \u010dase a v\u0161etky ostatn\u00e9. K syst\u00e9mu monitorovania bolo stanoven\u00fdch len nieko\u013eko po\u017eiadaviek:<\/p>\n<p><\/p>\n<ol>\n<li>Vysokofrekven\u010dn\u00e9 synchronizovan\u00e9 z\u00edskavanie metr\u00edk v re\u00e1lnom \u010dase a ich prenos do syst\u00e9mu spr\u00e1vy komunik\u00e1cie bez oneskorenia.<br \/>\nVysok\u00e1 frekvencia a synchroniz\u00e1cia r\u00f4znych metr\u00edk nie je len d\u00f4le\u017eit\u00e1, ale je \u017eivotne potrebn\u00e1 na anal\u00fdzu entropie prenosov\u00fdch kan\u00e1lov. Ak je priemern\u00e1 latencia jedn\u00e9ho prenosov\u00e9ho kan\u00e1la 30 milisek\u00fand, potom chyba v synchroniz\u00e1cii medzi ostatn\u00fdmi metr\u00edkami len o jednu milisekundu povedie k degrad\u00e1cii r\u00fdchlosti v\u00fdsledn\u00e9ho kan\u00e1la pribli\u017ene o 5 %. Ak sa pom\u00fdlime v synchroniz\u00e1cii o 1 milisekundu v 4 kan\u00e1loch, degrad\u00e1cia r\u00fdchlosti m\u00f4\u017ee klesn\u00fa\u0165 a\u017e na 30 %. Okrem toho sa entropia v kan\u00e1loch men\u00ed ve\u013emi r\u00fdchlo, preto ak ju mer\u00e1me menej ako raz za 0,5 milisekundy, na r\u00fdchlych kan\u00e1loch s malou latenciou dosiahneme vysok\u00fa degrad\u00e1ciu r\u00fdchlosti. Samozrejme, tak\u00e1to presnos\u0165 nie je potrebn\u00e1 pre v\u0161etky metr\u00edky a nie vo v\u0161etk\u00fdch podmienkach. Ke\u010f bude latencia v kan\u00e1le 500 milisek\u00fand, a pracujeme aj s tak\u00fdmi, tak chyba 1 milisekundy takmer nebude vidite\u013en\u00e1. Rovnako pre metr\u00edky syst\u00e9mov \u017eivotnej podpory n\u00e1m sta\u010d\u00ed frekvencia dotazovania a synchroniz\u00e1cie ka\u017ed\u00e9 2 sekundy, av\u0161ak samotn\u00fd monitorovac\u00ed syst\u00e9m by mal by\u0165 schopn\u00fd pracova\u0165 s ultra vysok\u00fdmi frekvenciami dotazovania a super presnou synchroniz\u00e1ciou metr\u00edk.<\/li>\n<li>Minim\u00e1lna spotreba zdrojov a jednotn\u00fd stack.<br \/>\nKoncov\u00e9 zariadenie m\u00f4\u017ee predstavova\u0165 ako v\u00fdkonn\u00fd palubn\u00fd komplex, ktor\u00fd dok\u00e1\u017ee analyzova\u0165 situ\u00e1ciu na ceste alebo vykon\u00e1va\u0165 biometrick\u00fa identifik\u00e1ciu os\u00f4b, tak aj jednoplatov\u00fd po\u010d\u00edta\u010d ve\u013ekosti dlane, ktor\u00fd nos\u00ed pod nepriestrelnou vestou \u010dlen \u0161peci\u00e1lnych s\u00edl na prenos videa v re\u00e1lnom \u010dase za zl\u00fdch podmienok pripojenia. Napriek tejto rozmanitosti architekt\u00far a v\u00fdpo\u010dtov\u00fdch v\u00fdkonov by sme chceli ma\u0165 jednotn\u00fd softv\u00e9rov\u00fd stack.<\/li>\n<li>Dohodov\u00e1 architekt\u00fara<br \/>\nMetriky musia by\u0165 zhroma\u017e\u010fovan\u00e9 a agregovan\u00e9 na koncovom zariaden\u00ed, ma\u0165 miestny syst\u00e9m ukladania a vizualiz\u00e1cie v re\u00e1lnom \u010dase a retrospekt\u00edvne. V pr\u00edpade existencie pripojenia \u2014 odosiela\u0165 d\u00e1ta do centr\u00e1lneho monitorovacieho syst\u00e9mu. Ke\u010f pripojenie neexistuje \u2014 front na odosielanie by sa mal akumulova\u0165 a nemal by spotrebov\u00e1va\u0165 opera\u010dn\u00fa pam\u00e4\u0165. <\/li>\n<li>API na integr\u00e1ciu do syst\u00e9mu monitorovania z\u00e1kazn\u00edka, preto\u017ee nikto nepotrebuje ve\u013ea syst\u00e9mov monitorovania. Z\u00e1kazn\u00edk by mal zhroma\u017e\u010fova\u0165 d\u00e1ta z ak\u00fdchko\u013evek zariaden\u00ed a siet\u00ed do jedn\u00e9ho monitorovania.<\/li>\n<\/ol>\n<p><\/p>\n<h2 id=\"chto-poluchilos\">\u010co sa podarilo<\/h2>\n<p><\/p>\n<p>Aby som neza\u0165a\u017eoval u\u017e aj tak rozsiahly lonn\u00fd text, nebudem uv\u00e1dza\u0165 pr\u00edklady a merania v\u0161etk\u00fdch syst\u00e9mov monitorovania. Na to by bola potrebn\u00e1 \u010fal\u0161ia \u010dl\u00e1nok. Jednoducho poviem, \u017ee sa n\u00e1m nepodarilo n\u00e1js\u0165 syst\u00e9m monitorovania, ktor\u00fd by dok\u00e1zal z\u00edska\u0165 dve metriky z\u00e1rove\u0148 s chybou menej ako 1 milisekundu a ktor\u00fd by rovnako efekt\u00edvne fungoval na architekt\u00fare ARM s 64 MB RAM aj na architekt\u00fare x86_64 s 32 GB RAM. Preto sme sa rozhodli nap\u00edsa\u0165 svoj, ktor\u00fd to v\u0161etko dok\u00e1\u017ee. Tu je, \u010do sme vytvorili:<\/p>\n<p><\/p>\n<h3 id=\"summirovanie-propusknoy-sposobnosti-treh-kanalov-dlya-raznoy-topologii-seti\">S\u00fa\u010det priepustnosti troch kan\u00e1lov pre r\u00f4zne topol\u00f3gie siete<\/h3>\n<p>\n<center><div class=\"youtube-placeholder\" data-id=\"3vPFHz7jFGM\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/3vPFHz7jFGM\/hqdefault.jpg\" alt=\"Prehrajte video\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><br \/>\n<center><div class=\"youtube-placeholder\" data-id=\"uEk_kQBbdP0\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/uEk_kQBbdP0\/hqdefault.jpg\" alt=\"Prehrajte video\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><\/p>\n<h3 id=\"vizualizaciya-nekotoryh-klyuchevyh-metrik\">Vizualiz\u00e1cia niektor\u00fdch k\u013e\u00fa\u010dov\u00fdch metr\u00edk<\/h3>\n<p>\n<img decoding=\"async\" alt=\"E\u0161te jeden syst\u00e9m monitorovania\" src=\"\/wp-content\/uploads\/2019\/05\/2c866d3a4ac719d91b99ddaf27cf8a93.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"E\u0161te jeden syst\u00e9m monitorovania\" src=\"\/wp-content\/uploads\/2019\/05\/38a67251267894b81fae9edb741d4d90.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"E\u0161te jeden syst\u00e9m monitorovania\" src=\"\/wp-content\/uploads\/2019\/05\/a5f49c0eb6d6e0d975d660a688fb5aad.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"E\u0161te jeden syst\u00e9m monitorovania\" src=\"\/wp-content\/uploads\/2019\/05\/91457b8e952842ac6a60d7f13cba7804.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h2 id=\"arhitektura\">Architekt\u00fara<\/h2>\n<p><\/p>\n<p>Ako hlavn\u00fd programovac\u00ed jazyk, \u010di u\u017e na zariaden\u00ed alebo v d\u00e1tovom centre, pou\u017e\u00edvame Golang. V\u00fdrazne n\u00e1m u\u013eah\u010dil \u017eivot svojou implement\u00e1ciou viacn\u00e1sobnosti a mo\u017enos\u0165ou z\u00edska\u0165 jeden staticky prepojen\u00fd vykonate\u013en\u00fd bin\u00e1rny s\u00fabor pre ka\u017ed\u00fa slu\u017ebu. V d\u00f4sledku toho zna\u010dne \u0161etr\u00edme na zdrojoch, sp\u00f4soboch a prev\u00e1dzke nasadenia slu\u017eby na koncov\u00e9 zariadenia, \u010dase v\u00fdvoja a ladenia k\u00f3du. <\/p>\n<p><\/p>\n<p>Syst\u00e9m je realizovan\u00fd pod\u013ea klasick\u00e9ho modul\u00e1rneho princ\u00edpu a obsahuje nieko\u013eko podsyst\u00e9mov:<\/p>\n<p><\/p>\n<ol>\n<li>Registr\u00e1cia metr\u00edk.<br \/>\nKa\u017ed\u00e1 metrika je spravovan\u00e1 svoj\u00edm vlastn\u00fdm vl\u00e1knom a synchronizovan\u00e1 cez kan\u00e1ly. Podarilo sa n\u00e1m dosiahnu\u0165 presnos\u0165 synchroniz\u00e1cie a\u017e na 10 nanosek\u00fand.<\/li>\n<li>Ukladanie metr\u00edk<br \/>\nVybrali sme medzi t\u00fdm, \u010di nap\u00ed\u0161eme vlastn\u00e9 \u00falo\u017eisko pre \u010dasov\u00e9 rady alebo pou\u017eijeme nie\u010do existuj\u00face. Datab\u00e1za je potrebn\u00e1 pre retrospekt\u00edvne d\u00e1ta, ktor\u00e9 bud\u00fa \u010falej vizualizovan\u00e9. T.j. neobsahuje d\u00e1ta o latenci\u00e1ch v kan\u00e1li ka\u017ed\u00fdch 0,5 milisekundy alebo ukazovate\u013eoch ch\u00fdb v prenosovej sieti, ale m\u00e1 r\u00fdchlos\u0165 na ka\u017edom rozhran\u00ed ka\u017ed\u00fdch 500 milisek\u00fand. Okrem vysok\u00fdch po\u017eiadaviek na kr\u00ed\u017eov\u00fa platformovos\u0165 a n\u00edzku spotrebu zdrojov je pre n\u00e1s mimoriadne d\u00f4le\u017eit\u00e9 ma\u0165 mo\u017enos\u0165 spracova\u0165 d\u00e1ta priamo tam, kde s\u00fa ulo\u017een\u00e9. To obrovsky \u0161etr\u00ed v\u00fdpo\u010dtov\u00e9 zdroje. Od roku 2016 pou\u017e\u00edvame S\u00daDB Tarantool v tomto projekte a zatia\u013e nevid\u00edme n\u00e1hradu v horizonte. Flexibiln\u00fd, s optim\u00e1lnou spotrebou zdrojov, s viac ne\u017e adekv\u00e1tnou technickou podporou. V Tarantool je tie\u017e realizovan\u00fd GIS modul. Nie je s\u00edce tak\u00fd v\u00fdkonn\u00fd ako PostGIS, ale vysta\u010d\u00ed na na\u0161e \u00falohy, s\u00favisiace s uchov\u00e1van\u00edm niektor\u00fdch metr\u00edk viazan\u00fdch na lokalitu (aktu\u00e1lne pre dopravu). <\/li>\n<li>Vizualiz\u00e1cia metr\u00edk<br \/>\nTu je v\u0161etko relat\u00edvne jednoduch\u00e9. Berieme d\u00e1ta z \u00falo\u017eiska a zobrazujeme ich bu\u010f v re\u00e1lnom \u010dase, alebo retrospekt\u00edvne. <\/li>\n<li>Synchroniz\u00e1cia d\u00e1t s centr\u00e1lnym syst\u00e9mom monitorovania.<br \/>\nCentr\u00e1lny monitorovac\u00ed syst\u00e9m prij\u00edma d\u00e1ta od v\u0161etk\u00fdch zariaden\u00ed, uklad\u00e1 ich s po\u017eadovanou retrospekt\u00edvou a cez API ich odovzd\u00e1va do monitorovacieho syst\u00e9mu Z\u00e1kazn\u00edka. Na rozdiel od klasick\u00fdch monitorovac\u00edch syst\u00e9mov, kde 'hlava' chod\u00ed a zbiera \u00fadaje \u2014 m\u00e1me sp\u00e4tn\u00fd model. Zariadenia automaticky odosielaj\u00fa d\u00e1ta, ke\u010f je dostupn\u00e9 pripojenie. To je ve\u013emi d\u00f4le\u017eit\u00fd bod, preto\u017ee to umo\u017e\u0148uje z\u00edska\u0165 d\u00e1ta zo zariadenia za obdobie, po\u010das ktor\u00e9ho nebolo dostupn\u00e9, a nezat\u00fdka\u0165 kan\u00e1ly a zdroje v \u010dase, ke\u010f je zariadenie nedostupn\u00e9. Ako centr\u00e1lny monitorovac\u00ed syst\u00e9m pou\u017e\u00edvame server Influx monitoring. Na rozdiel od podobn\u00fdch syst\u00e9mov vie importova\u0165 retrospekt\u00edvne \u00fadaje (t.j. s \u010dasovou pe\u010diatkou odli\u0161nou od momentu z\u00edskania metriky). Zozbieran\u00e9 metriky vizualizuje upraven\u00e1 Grafana. Tento \u0161tandardn\u00fd stack bol vybran\u00fd aj preto, \u017ee m\u00e1 hotov\u00e9 API integr\u00e1cie takmer s ka\u017ed\u00fdm monitorovac\u00edm syst\u00e9mom z\u00e1kazn\u00edka.<\/li>\n<li>Synchroniz\u00e1cia d\u00e1t s centr\u00e1lnym syst\u00e9mom spr\u00e1vy zariaden\u00ed.<br \/>\nSyst\u00e9m spr\u00e1vy zariaden\u00ed implementuje Zero Touch Provisioning (aktualiz\u00e1cia firmv\u00e9ru, konfigur\u00e1cie at\u010f.) a na rozdiel od monitorovacieho syst\u00e9mu prij\u00edma len probl\u00e9my so zariadeniami. S\u00fa to sp\u00fa\u0161\u0165a\u010de pre \u010dinnos\u0165 palubn\u00fdch hardv\u00e9rov\u00fdch str\u00e1\u017enych slu\u017eieb a v\u0161etky metriky syst\u00e9mov \u017eivotn\u00e9ho cyklu: teplota CPU a SSD, za\u0165a\u017eenie CPU, vo\u013en\u00e9 miesto a S.M.A.R.T. zdravie diskov. \u00dalo\u017eisko subsyst\u00e9mu je postaven\u00e9 rovnako na Tarantool. To n\u00e1m poskytuje zna\u010dn\u00fa r\u00fdchlos\u0165 pri agreg\u00e1cii \u010dasov\u00fdch r\u00e1dov tis\u00edcok zariaden\u00ed a \u00faplne rie\u0161i ot\u00e1zku synchroniz\u00e1cie \u00fadajov s t\u00fdmito zariadeniami. V Tarantool je zabudovan\u00fd vynikaj\u00faci syst\u00e9m front a garantovanej dod\u00e1vky. T\u00fato d\u00f4le\u017eit\u00fa funkciu sme dostali z krabice, skvel\u00e9!<\/li>\n<\/ol>\n<p><\/p>\n<h3 id=\"sistema-upravleniya-setyu\">Syst\u00e9m spr\u00e1vy siete<\/h3>\n<p>\n<img decoding=\"async\" alt=\"E\u0161te jeden syst\u00e9m monitorovania\" src=\"\/wp-content\/uploads\/2019\/05\/a468aca776c28aee5987a17ae351f057.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h2 id=\"chto-dalshe\">\u010co \u010falej<\/h2>\n<p><\/p>\n<p>Moment\u00e1lne je na\u0161ou najslab\u0161ou str\u00e1nkou centr\u00e1lna monitorovacia s\u00fastava. Je implementovan\u00e1 na 99,9 % na \u0161tandardnom stacku a m\u00e1 nieko\u013eko nedostatkov:<\/p>\n<p><\/p>\n<ol>\n<li>InfluxDB str\u00e1ca \u00fadaje pri v\u00fdpadku nap\u00e1jania. Z\u00e1kazn\u00edk zvy\u010dajne okam\u017eite z\u00edskava v\u0161etko, \u010do prich\u00e1dza zo zariaden\u00ed, a v samotnej datab\u00e1ze nie s\u00fa \u00fadaje star\u0161ie ako 5 min\u00fat, av\u0161ak v bud\u00facnosti to m\u00f4\u017ee by\u0165 probl\u00e9m.<\/li>\n<li>Grafana m\u00e1 nieko\u013eko probl\u00e9mov s agreg\u00e1ciou \u00fadajov a synchroniz\u00e1ciou ich zobrazenia. Naj\u010dastej\u0161\u00ed probl\u00e9m je, ke\u010f v datab\u00e1ze le\u017e\u00ed \u010dasov\u00e1 s\u00e9ria s intervalom 2 sekundy za\u010d\u00ednaj\u00faca napr\u00edklad od 00:00:00, zatia\u013e \u010do Grafana za\u010d\u00edna zobrazova\u0165 \u00fadaje v agreg\u00e1cii s +1 sekundou. V\u00fdsledkom je, \u017ee pou\u017e\u00edvate\u013e vid\u00ed \u201eposkakuj\u00faci\u201c graf.<\/li>\n<li>Nadmieru k\u00f3du pre API integr\u00e1ciu s tret\u00edmi stranami monitorovacieho syst\u00e9mu. M\u00f4\u017ee to by\u0165 ove\u013ea kompaktnej\u0161ie a samozrejme preprogramova\u0165 to na Go )<\/li>\n<\/ol>\n<p><\/p>\n<p>Predpoklad\u00e1m, \u017ee v\u0161etci ste videli, ako vyzer\u00e1 Grafana a bezom\u0148a pozn\u00e1te jej probl\u00e9my, preto nebudem pre\u0165a\u017eova\u0165 pr\u00edspevok obr\u00e1zkami.<\/p>\n<p><\/p>\n<h2 id=\"zaklyuchenie\">Z\u00e1ver<\/h2>\n<p><\/p>\n<p>Vedome som sa nerozhodol popisova\u0165 technick\u00e9 detaily, ale op\u00edsal som len z\u00e1kladn\u00fd dizajn tohto syst\u00e9mu. Po prv\u00e9, na technick\u00e9 a kompletn\u00e9 op\u00edsanie syst\u00e9mu by bolo potrebn\u00e9 e\u0161te jedno ozna\u010denie. Po druh\u00e9, nie v\u0161etk\u00fdm to bude zauj\u00edmav\u00e9. Nap\u00ed\u0161te v koment\u00e1roch, ak\u00e9 technick\u00e9 podrobnosti by ste chceli vedie\u0165. <\/p>\n<p><\/p>\n<p>Ak m\u00e1 niekto ot\u00e1zky mimo tohto \u010dl\u00e1nku, m\u00f4\u017eete mi p\u00edsa\u0165 na adresu a.rodin @ qedr.com<\/p>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/451778\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>16 \u043c\u043e\u0434\u0435\u043c\u043e\u0432, 4 \u0441\u043e\u0442\u043e\u0432\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430= \u0418\u0441\u0445\u043e\u0434\u044f\u0449\u0430\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c 933.45 \u041c\u0431\u0438\u0442\/\u0441 \u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u041f\u0440\u0438\u0432\u0435\u0442! \u042d\u0442\u043e \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u043c\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0434\u043b\u044f \u0441\u0435\u0431\u044f \u043d\u043e\u0432\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430. \u041e\u0442 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u043e\u043d\u0430 \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u0432\u044b\u0441\u043e\u043a\u043e\u0447\u0430\u0441\u0442\u043e\u0442\u043d\u043e\u0433\u043e \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043c\u0435\u0442\u0440\u0438\u043a \u0438 \u043e\u0447\u0435\u043d\u044c \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435\u043c \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432. \u0427\u0430\u0441\u0442\u043e\u0442\u0430 \u043e\u043f\u0440\u043e\u0441\u0430 \u043c\u043e\u0436\u0435\u0442 \u0434\u043e\u0441\u0442\u0438\u0433\u0430\u0442\u044c 0.1 \u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434\u044b \u0441 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c\u044e \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u0435\u0436\u0434\u0443 \u043c\u0435\u0442\u0440\u0438\u043a\u0430\u043c\u0438 \u0432 10 \u043d\u0430\u043d\u043e\u0441\u0435\u043a\u0443\u043d\u0434. \u0412\u0441\u0435 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0442 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":25323,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-33632","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"16 \u043c\u043e\u0434\u0435\u043c\u043e\u0432, 4 \u0441\u043e\u0442\u043e\u0432\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430= \u0418\u0441\u0445\u043e\u0434\u044f\u0449\u0430\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c 933.45.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/eshhe-odna-sistema-monitoringa\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0415\u0449\u0435 \u043e\u0434\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"16 \u043c\u043e\u0434\u0435\u043c\u043e\u0432, 4 \u0441\u043e\u0442\u043e\u0432\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430= \u0418\u0441\u0445\u043e\u0434\u044f\u0449\u0430\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c 933.45.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/eshhe-odna-sistema-monitoringa\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:53:52+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:53:52+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47E\u0161te jeden monitorovac\u00ed syst\u00e9m | ProHoster","description":"16 modemov, 4 mobiln\u00ed oper\u00e1tori = V\u00fdstupn\u00e1 r\u00fdchlos\u0165 933,45.","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/eshhe-odna-sistema-monitoringa","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0415\u0449\u0435 \u043e\u0434\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 | ProHoster","og:description":"16 \u043c\u043e\u0434\u0435\u043c\u043e\u0432, 4 \u0441\u043e\u0442\u043e\u0432\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430= \u0418\u0441\u0445\u043e\u0434\u044f\u0449\u0430\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c 933.45.","og:url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/eshhe-odna-sistema-monitoringa","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:53:52+00:00","article:modified_time":"2019-10-31T18:53:52+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"33632","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 16:05:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:19:51","updated":"2026-01-21 16:05:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/33632","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=33632"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/33632\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media\/25323"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=33632"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=33632"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=33632"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}