{"id":36207,"date":"2019-10-31T22:10:17","date_gmt":"2019-10-31T19:10:17","guid":{"rendered":"https:\/\/prohoster.info\/blog\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami\/"},"modified":"2019-10-31T22:10:17","modified_gmt":"2019-10-31T19:10:17","slug":"ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami","title":{"rendered":"ISPsystem, iart\u0103-ne \u0219i la revedere! De ce \u0219i cum am scris propriul nostru panou de control pentru servere","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"ISPsystem, iart\u0103-ne \u0219i la revedere! De ce \u0219i cum am scris propriul nostru panou de control pentru servere\" src=\"\/wp-content\/uploads\/2019\/07\/512df00a9ec2d8ff8e3586dd57702924.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSalut! Suntem \u00abTehnologii de Hosting\u00bb \u0219i acum 5 ani am lansat <noindex><a rel=\"nofollow\" href=\"https:\/\/vdsina.ru\/?partner=habr1\">VDSina<\/a><\/noindex> \u2014 primul hosting vds creat special pentru dezvoltatori. Ne str\u0103duim s\u0103-l facem la fel de convenabil ca DigitalOcean, dar cu suport \u00een limba rom\u00e2n\u0103, metode de plat\u0103 \u0219i servere \u00een Rom\u00e2nia. Dar DigitalOcean nu \u00eenseamn\u0103 doar fiabilitate \u0219i pre\u021b, ci \u0219i servicii.<\/p>\n<p>Software-ul de la ISPsystem s-a dovedit a fi o fr\u00e2n\u0103 pe calea spre un serviciu excelent. Acum trei ani foloseam sistemul de facturare Billmanager \u0219i panoul de control al serverelor VMmanager \u0219i ne-am dat seama rapid c\u0103 a oferi un serviciu de calitate f\u0103r\u0103 panoul nostru este practic imposibil. <br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Cum ISPsystem a distrus confortul<\/h2>\n<p>\n<b>Bugs<\/b><\/p>\n<p>Nu puteam s\u0103 repar\u0103m bug-urile noi \u2014 de fiecare dat\u0103 trebuia s\u0103 scriem la suportul altora \u0219i s\u0103 a\u0219tept\u0103m. Rezolvarea oric\u0103rei probleme necesita reac\u021bia unei companii ter\u021be. <\/p>\n<p>Suportul de la ISPsystem r\u0103spundea rezonabil, dar solu\u021biile veneau doar dup\u0103 c\u00e2teva versiuni, \u0219i nu \u00eentotdeauna \u0219i nu toate. Uneori, bug-urile critice erau reparate dup\u0103 c\u00e2teva s\u0103pt\u0103m\u00e2ni. Trebuia s\u0103 ne lini\u0219tim clien\u021bii, s\u0103 ne cerem scuze \u0219i s\u0103 a\u0219tept\u0103m ca ISPsystem s\u0103 rezolve bug-ul.<\/p>\n<p><b>Amenin\u021barea timpilor de nefunc\u021bionare<\/b><\/p>\n<p>Actualiz\u0103rile puteau provoca timp de nefunc\u021bionare imprevizibil, care provocau erori noi. <\/p>\n<p>Fiecare actualizare era o loterie: trebuia s\u0103 \u00eenchidem sistemul de facturare \u0219i s\u0103 facem sacrificii zeilor actualiz\u0103rilor \u2014 de c\u00e2teva ori, actualizarea a provocat timp de nefunc\u021bionare de 10-15 minute. Administratorii no\u0219tri st\u0103teau \u00een expecta\u021bie \u2014 niciodat\u0103 nu \u0219tiau c\u00e2t va dura timpul de nefunc\u021bionare \u0219i nu puteau prezice c\u00e2nd ISPsystem va decide s\u0103 lanseze o nou\u0103 actualizare. <\/p>\n<p>\u00cen a cincea genera\u021bie a Billmanager-ului a devenit mai bine, dar pentru a accesa func\u021biile necesare a fost necesar\u0103 instalarea unei versiuni beta, care se actualiza s\u0103pt\u0103m\u00e2nal. Dac\u0103 ceva se strica, trebuia s\u0103 d\u0103m acces dezvoltatorilor ter\u021bi pentru a repara ceva. <\/p>\n<p><b>Interfa\u021ba incomod\u0103 a panoului<\/b><\/p>\n<p>Totul era \u00eemp\u0103r\u021bit \u00een panouri diferite \u0219i gestionat din locuri diferite. De exemplu, clien\u021bii pl\u0103teau prin Billmanager, dar pentru a reporni sau reinstala VDS trebuiau s\u0103 foloseasc\u0103 VMManager. Angaja\u021bii no\u0219tri trebuiau s\u0103 comute \u00eentre feronerie pentru a ajuta clientul, a verifica sarcina serverului s\u0103u sau a vedea ce sistem de operare folose\u0219te.<\/p>\n<p>O astfel de interfa\u021b\u0103 consum\u0103 timp \u2014 at\u00e2t al nostru, c\u00e2t \u0219i al clien\u021bilor. \u00centr-o astfel de situa\u021bie, nu poate fi vorba de confortul aferent DigitalOcean. <\/p>\n<p><b>Cicluri scurte de via\u021b\u0103 cu actualiz\u0103ri frecvente ale API-ului<\/b><\/p>\n<p>Am scris plugin-uri proprii \u2014 de exemplu, un plugin cu metode de plat\u0103 suplimentare care nu exist\u0103 \u00een VMManager.<\/p>\n<p>\u00cen ultimii ani, VMManager a avut un ciclu de via\u021b\u0103 relativ scurt, iar \u00een versiunile noi denumirile variabilelor sau func\u021biilor din API s-au schimbat aleatoriu \u2014 ceea ce a rupt plugin-urile noastre. Suportul pentru versiunile mai vechi a fost rapid \u00eenchis, \u0219i a trebuit s\u0103 ne actualiz\u0103m.<\/p>\n<p><b>Nu se poate extinde<\/b><\/p>\n<p>Mai exact, se poate, dar extrem de ineficient. Limit\u0103rile de licen\u021b\u0103 nu permit modificarea codului surs\u0103, se pot scrie doar plugin-uri. Maximul de plugin-uri este \u2014 c\u00e2teva elemente de meniu, un wizard pas cu pas. ISPsystem este orientat spre universalitate, iar noi aveam nevoie de solu\u021bii specializate.<\/p>\n<p>Astfel s-a maturizat decizia de a scrie propriul nostru panel. Ne-am stabilit obiectivele:<\/p>\n<ul>\n<li>A reac\u021biona rapid la erori, bug-uri \u0219i a putea s\u0103 le remediem singuri, f\u0103r\u0103 a-l face pe client s\u0103 a\u0219tepte.<\/li>\n<li>A modifica liber interfa\u021ba conform fluxurilor de lucru \u0219i nevoilor clientului.<\/li>\n<li>A \u00eembun\u0103t\u0103\u021bi utilizabilitatea printr-un design curat \u0219i clar.<\/li>\n<\/ul>\n<p>\n\u0218i am \u00eenceput dezvoltarea.<\/p>\n<h2>Arhitectura noului panel<\/h2>\n<p>\nAvem o echip\u0103 de dezvoltare autosuficient\u0103, a\u0219a c\u0103 panelul l-am scris noi \u00een\u0219ine. <br \/>\nPrincipala munc\u0103 a fost realizat\u0103 de trei ingineri \u2014 directorul tehnic Serghei a conceput arhitectura \u0219i a scris agentul de server, Alexei a realizat billing-ul, iar frontend-ul a fost construit de frontend-erul nostru Arty\u0219. <\/p>\n<h3>Pasul 1. Agentul de server<\/h3>\n<p>Agentul de server este un server web pe Python, care gestioneaz\u0103 biblioteca <noindex><a rel=\"nofollow\" href=\"https:\/\/libvirt.org\/\">libvirt<\/a><\/noindex>, care, la r\u00e2ndul ei, gestioneaz\u0103 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.qemu.org\/\">hipervizorul Qemu-kvm<\/a><\/noindex>. <\/p>\n<p>Agentul controleaz\u0103 toate serviciile de pe server: crearea, oprirea, \u0219tergerea VDS-urilor, instalarea sistemelor de operare, modificarea parametrilor \u0219i a\u0219a mai departe prin biblioteca libvirt. La data public\u0103rii acestui articol, acesta are peste patruzeci de func\u021bii diferite, pe care le complet\u0103m \u00een func\u021bie de sarcina \u0219i nevoile clientului.<\/p>\n<p>Teoretic, libvirt ar fi putut fi gestionat direct din billing, dar acest lucru ar fi necesitat prea mult cod suplimentar \u0219i am decis s\u0103 distribui aceste func\u021bii \u00eentre agent \u0219i billing \u2014 billing-ul face pur \u0219i simplu cereri agentului prin JSON API.<\/p>\n<p>Agentul a fost primul lucru pe care l-am f\u0103cut, deoarece nu necesita nicio interfa\u021b\u0103 \u0219i putea fi testat direct din consola serverului. <\/p>\n<p><b>Ce ne-a adus agentul de server:<\/b> A ap\u0103rut un strat care simplific\u0103 via\u021ba tuturor \u2014 facturarea nu trebuie s\u0103 transmit\u0103 o mul\u021bime de comenzi, ci doar s\u0103 fac\u0103 o solicitare. Apoi, agentul va face tot ce este necesar: de exemplu, va aloca spa\u021biu pe disc \u0219i memorie RAM. <\/p>\n<h3>Pasul 2. Facturarea<\/h3>\n<p>\nPentru dezvoltatorul nostru Alex, aceasta nu era prima sa interfa\u021b\u0103 de administrare \u2014 Alex este de mult timp \u00een hosting, a\u0219a c\u0103 \u00een\u021belege \u00een general ce are nevoie clientul \u0219i ce \u00eei trebuie furnizorului.<\/p>\n<p>Noi numim facturarea \u00eentre noi \u00abpanoul de control\u00bb: \u00een el nu sunt doar bani \u0219i servicii, ci \u0219i gestionarea acestora, suport pentru clien\u021bi \u0219i multe altele.<\/p>\n<p>Pentru a migra de la softul ISPSystem, a fost necesar s\u0103 p\u0103str\u0103m complet func\u021bionalitatea anterioar\u0103 pentru clien\u021bi, s\u0103 transfer\u0103m toate ac\u021biunile financiare ale utilizatorilor din vechea facturare \u00een nou\u0103, precum \u0219i toate serviciile \u0219i conexiunile dintre ele. Am studiat ce exist\u0103 \u00een produsul actual, apoi solu\u021biile competitorilor, \u00een principal DO \u0219i Vultr. Am analizat defectele \u0219i avantajele, am adunat recenziile persoanelor care au lucrat cu vechile produse de la ISPsystem. <\/p>\n<p>\u00cen noua facturare am folosit dou\u0103 stive: PHP clasic, MySQL (iar \u00een viitor ne propunem s\u0103 trecem la PostgreSQL), Yii2 ca framework pe backend \u0219i VueJS pe frontend. Stivele func\u021bioneaz\u0103 independent una de cealalt\u0103, sunt dezvoltate de persoane diferite \u0219i comunic\u0103 prin intermediul JSON API. Pentru dezvoltare, atunci \u0219i acum folosim <noindex><a rel=\"nofollow\" href=\"https:\/\/www.jetbrains.com\/phpstorm\/\">PHPStorm<\/a><\/noindex> \u0219i <noindex><a rel=\"nofollow\" href=\"https:\/\/www.jetbrains.com\/webstorm\/\">WebStorm<\/a><\/noindex> de la JetBrains \u0219i le iubim cu c\u0103ldur\u0103 (b\u0103ie\u021bi, salut!)<\/p>\n<p>Panoul este proiectat pe un principiu modular: module ale sistemelor de plat\u0103, modul pentru \u00eenregistratorii de domenii sau, de exemplu, modul pentru certificatele SSL. Este u\u0219or s\u0103 ad\u0103ug\u0103m o nou\u0103 func\u021bie sau s\u0103 elimin\u0103m una veche. Extensibilitatea a fost arhitectural conceput\u0103, inclusiv \u00een partea de \u00abhardware\u00bb.<br \/>\n<img decoding=\"async\" alt=\"ISPsystem, iart\u0103-ne \u0219i la revedere! De ce \u0219i cum am scris propriul nostru panou de control pentru servere\" src=\"\/wp-content\/uploads\/2019\/07\/8f4b1bf9c16cc73023cacdde44cae0b3.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<b>Ce am ob\u021binut<\/b>: un panou de control, asupra c\u0103ruia avem control complet. Acum erorile sunt corectate \u00een c\u00e2teva ore, nu s\u0103pt\u0103m\u00e2ni, iar noile func\u021bii sunt implementate la cererea clien\u021bilor, nu dup\u0103 dorin\u021ba ISPSystem.<\/p>\n<h3>Pasul 3. Interfa\u021ba<\/h3>\n<p>\n<img decoding=\"async\" alt=\"ISPsystem, iart\u0103-ne \u0219i la revedere! De ce \u0219i cum am scris propriul nostru panou de control pentru servere\" src=\"\/wp-content\/uploads\/2019\/07\/48be006688e2246f9a416d2d6a717a82.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nInterfa\u021ba este crea\u021bia echipei noastre. <\/p>\n<p>Mai \u00eent\u00e2i am verificat ce s-ar \u00eent\u00e2mpla dac\u0103 am face o extensie peste API-ul ISPsystem, f\u0103r\u0103 a schimba radical interfa\u021ba. Rezultatul a fost mediocre, a\u0219a c\u0103 am decis s\u0103 facem totul de la zero.<\/p>\n<p>Am crezut c\u0103 cel mai important este s\u0103 facem interfa\u021ba logic\u0103, cu un design curat \u0219i minimalist, iar apoi vom ob\u021bine un panou frumos. Discu\u021biile despre amplasarea elementelor au avut loc \u00een Megaplan \u0219i, treptat, a prins via\u021b\u0103 interfa\u021ba pe care utilizatorii o v\u0103d acum \u00een panoul de control. <\/p>\n<p>Primul a ap\u0103rut designul paginii de facturare, deoarece deja realizasem pluginuri pentru pl\u0103\u021bi pentru ISPsystem. <\/p>\n<p><b>Frontend<\/b><\/p>\n<p>Am decis s\u0103 facem panoul o aplica\u021bie SPA \u2014 care nu consum\u0103 multe resurse \u0219i se \u00eencarc\u0103 rapid. Frontendul nostru, Artysh, a decis s\u0103-l scrie pe Vue \u2014 pe atunci Vue abia ap\u0103ruse. Am presupus c\u0103 framework-ul se va dezvolta dinamic, la fel ca React, \u0219i, dup\u0103 un timp, comunitatea Vue se va extinde, ap\u0103r\u00e2nd o mul\u021bime de biblioteci. Ne-am bazat pe Vue \u0219i nu am regretat \u2014 acum, ad\u0103ugarea de noi func\u021bii pe frontend, deja programate pe backend, necesit\u0103 pu\u021bin timp. Vom vorbi mai multe despre frontendul panoului \u00eentr-un articol separat.<\/p>\n<p><b>Leg\u0103tura dintre frontend \u0219i backend<\/b><\/p>\n<p>Frontendul a fost conectat la backend prin push-uri. A fost nevoie de mult\u0103 munc\u0103 pentru a scrie un handler propriu, dar acum actualizarea informa\u021biilor pe pagin\u0103 se face aproape instantaneu.<\/p>\n<p><b>Ce a ie\u0219it:<\/b> interfa\u021ba panoului a devenit mai simpl\u0103. Am f\u0103cut-o adaptiv\u0103, iar \u00eenc\u0103rcarea rapid\u0103 permite utilizarea ei chiar \u0219i de pe telefoane mobile \u00een ultimele minute \u00eenainte de decolare, f\u0103r\u0103 a necesita instalarea unei aplica\u021bii separate pentru lucrul cu panoul.<\/p>\n<h3>Pasul 4. Testare \u0219i schema de migrare <\/h3>\n<p>\nC\u00e2nd totul a fost configurat \u0219i s-au efectuat primele teste, a fost ridicat\u0103 problema migra\u021biei. Primul lucru pe care l-am f\u0103cut a fost s\u0103 instal\u0103m sistemul de facturare \u0219i s\u0103 \u00eencepem testarea func\u021bion\u0103rii sale cu agentul serverului.<\/p>\n<p>Apoi am scris un script simplu care transfer\u0103 baza de date din vechiul sistem de facturare \u00een cel nou.<\/p>\n<p>A fost necesar s\u0103 test\u0103m \u0219i s\u0103 verific\u0103m practic totul, deoarece datele au fost consolidate \u00eentr-o nou\u0103 baz\u0103 din trei vechi: Billmanager, VMmanager \u0219i IPmanager. Probabil, migrarea testelor a fost cea mai complicat\u0103 parte cu care ne-am confruntat \u00een procesul de dezvoltare a noului panou.<\/p>\n<p>Dup\u0103 verific\u0103ri, am \u00eenchis vechiul sistem de facturare. Migrarea final\u0103 a datelor a fost un moment foarte emo\u021bionant, dar, din fericire, s-a realizat \u00een c\u00e2teva minute \u0219i f\u0103r\u0103 probleme notabile. Au fost mici bug-uri, pe care le-am corectat pe parcursul s\u0103pt\u0103m\u00e2nii. Timpul principal a fost ocupat de testarea a ceea ce am ob\u021binut.<\/p>\n<p>Apoi am trimis e-mailuri clien\u021bilor cu adresa noii panouri \u0219i factur\u0103rii \u0219i am realizat redirec\u021bionarea. <\/p>\n<p><b>\u00cen concluzie:<\/b> <b>E VIDA!<\/b><\/p>\n<h2>Sf\u00e2r\u0219it fericit<\/h2>\n<p>\nDin primele ore de func\u021bionare a software-ului nostru, am sim\u021bit toate avantajele tranzi\u021biei. Codul a fost complet al nostru \u0219i cu o arhitectur\u0103 convenabil\u0103, iar interfa\u021ba - curat\u0103 \u0219i logic\u0103.<br \/>\n<img decoding=\"async\" alt=\"ISPsystem, iart\u0103-ne \u0219i la revedere! De ce \u0219i cum am scris propriul nostru panou de control pentru servere\" src=\"\/wp-content\/uploads\/2019\/07\/c673e49afb4bf25c8922161a8bb927a2.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Prima recenzie dup\u0103 lansarea noii panouri<\/i><\/p>\n<p>Am \u00eenceput procesul de tranzi\u021bie \u00een decembrie, cu c\u00e2teva zile \u00eenainte de Anul Nou 2017, c\u00e2nd erau cele mai mici \u00eenc\u0103rc\u0103ri, pentru a face tranzi\u021bia mai u\u0219oar\u0103 pentru clien\u021bi - aproape nimeni nu lucreaz\u0103 \u00eenainte de s\u0103rb\u0103tori.<\/p>\n<p>Ceea ce am ob\u021binut \u00een urma tranzi\u021biei la propriul nostru sistem (\u00een afar\u0103 de fiabilitatea \u0219i confortul general) a fost posibilitatea de a ad\u0103uga rapid func\u021bionalitate pentru clien\u021bii cheie - a fi fa\u021ba lor, nu spatele.<\/p>\n<h3>Ce urmeaz\u0103?<\/h3>\n<p>\nCre\u0219tem, cre\u0219te volumul de date, clien\u021bii, datele clien\u021bilor. A trebuit s\u0103 ad\u0103ug\u0103m un server Memcached pe backend \u0219i doi manageri de cozi cu sarcini diferite. Pe frontend exist\u0103 caching \u0219i propriile cozi. <\/p>\n<p>Desigur, am avut \u0219i aventuri pe m\u0103sur\u0103 ce produsul s-a dezvoltat \u0219i s-a complicat, de exemplu, c\u00e2nd am ad\u0103ugat HighLoad. <\/p>\n<p>\u00cen urm\u0103torul articol, vom povesti cum am lansat planul Hi-CPU: despre hardware, software, ce sarcini am rezolvat \u0219i ce am ob\u021binut.<br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/vdsina\/blog\/460107\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u0432\u0435\u0442! \u041c\u044b \u00ab\u0425\u043e\u0441\u0442\u0438\u043d\u0433 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438\u00bb \u0438 5 \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 VDSina \u2014 \u043f\u0435\u0440\u0432\u044b\u0439 vds \u0445\u043e\u0441\u0442\u0438\u043d\u0433, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432. \u041c\u044b \u0441\u0442\u0440\u0435\u043c\u0438\u043c\u0441\u044f \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0433\u043e \u0443\u0434\u043e\u0431\u043d\u044b\u043c, \u043a\u0430\u043a DigitalOcean, \u043d\u043e \u0441 \u0440\u0443\u0441\u0441\u043a\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439, \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438 \u043e\u043f\u043b\u0430\u0442\u044b \u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438 \u0432 \u0420\u043e\u0441\u0441\u0438\u0438. \u041d\u043e DigitalOcean \u044d\u0442\u043e \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0434\u0435\u0436\u043d\u043e\u0441\u0442\u044c \u0438 \u0446\u0435\u043d\u0430, \u044d\u0442\u043e \u0435\u0449\u0435 \u0438 \u0441\u0435\u0440\u0432\u0438\u0441. \u0421\u043e\u0444\u0442 \u043e\u0442 ISPsystem \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0432\u0435\u0440\u0435\u0432\u043a\u043e\u0439, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u043b\u0430 \u043d\u0430\u043c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":27085,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-36207","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.2.1 - aioseo.com -->\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\/ro\/blog\/administrirovanie\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\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\udd47ISPsystem, \u043f\u0440\u043e\u0441\u0442\u0438 \u0438 \u043f\u0440\u043e\u0449\u0430\u0439! \u041f\u043e\u0447\u0435\u043c\u0443 \u0438 \u043a\u0430\u043a \u043c\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0441\u0432\u043e\u044e \u043f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami\" \/>\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-31T19:10:17+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:10:17+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\udd47ISPsystem, iart\u0103-ne \u0219i la revedere! De ce \u0219i cum am scris panoul nostru de control pentru servere | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","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\udd47ISPsystem, \u043f\u0440\u043e\u0441\u0442\u0438 \u0438 \u043f\u0440\u043e\u0449\u0430\u0439! \u041f\u043e\u0447\u0435\u043c\u0443 \u0438 \u043a\u0430\u043a \u043c\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0441\u0432\u043e\u044e \u043f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438 | ProHoster","og:url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami","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-31T19:10:17+00:00","article:modified_time":"2019-10-31T19:10:17+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36207","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-22 02:25:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:48:27","updated":"2026-01-22 02:25:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/36207","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=36207"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/36207\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/27085"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=36207"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=36207"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=36207"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}