{"id":87282,"date":"2020-07-06T13:44:51","date_gmt":"2020-07-06T11:44:51","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury"},"modified":"2021-02-01T11:41:48","modified_gmt":"2021-02-01T09:41:48","slug":"ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury","title":{"rendered":"Alates 'start-up' kuni tuhandete serveriteni k\u00fcmnes andmekeskuses. Kuidas me kasvu taga ajasime Linuxi infrastruktuuris","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Kui teie IT infrastruktuur kasvab liiga kiiresti, seisate varem v\u00f5i hiljem silmitsi valikuga \u2013 kas suurendada inimesi selle toetamiseks v\u00f5i alustada automatiseerimist. Kuni teatud hetkeni elasime me esimeses paradigmas, seej\u00e4rel algas pikk teekond Infrastructure-as-Code'i juurde.<\/p>\n<p><img decoding=\"async\" alt=\"Alates &#039;start-up&#039; kuni tuhandete serveriteni k\u00fcmnes andmekeskuses. Kuidas me kasvu taga ajasime Linuxi infrastruktuuris\" src=\"\/wp-content\/uploads\/2020\/07\/adbcf170e3e0f794355eb1eb052585c1.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nMuidugi ei ole NSPK startup, kuid selline \u00f5hkkond valitses ettev\u00f5ttes selle esimestel tegevusaastatel, ja need olid v\u00e4ga huvitavad aastad. Minu nimi on <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/users\/dkorn\/\">Korjnikov Dmitri<\/a><\/noindex>, olen \u00fcle 10 aasta hooldanud Linuxi infrastruktuuri, millele on seatud k\u00f5rged k\u00e4ttesaadavuse n\u00f5uded. Liitusin NSPK meeskonnaga 2016. aasta jaanuaris ja kahjuks ei olnud ma ettev\u00f5tte loomise algusaegadel, kuid tulin suure muutuste etapi ajal.<\/p>\n<p>\u00dcldiselt v\u00f5ib \u00f6elda, et meie meeskond toob ettev\u00f5ttele v\u00e4lja kaks toodet. Esiteks \u2013 infrastruktuur. Post ei tohi seista, DNS peab t\u00f6\u00f6tama ja domeeni kontrollijad peavad lasma teid serveritesse, mis ei tohi kokku kukkuda. Ettev\u00f5tte IT maastik on tohutu! Need on business&amp;mission critical s\u00fcsteemid, m\u00f5nedel on k\u00e4ttesaadavuse n\u00f5udeks 99,999. Teine toode \u2013 need on serverid, f\u00fc\u00fcsilised ja virtuaalsed. Me peame olemasolevaid j\u00e4lgima ja uusi regulaarset tarnima paljudele osakondadele. Selles artiklis tahan r\u00f5hutada, kuidas me arendasime infrastruktuuri, mis vastutab eluts\u00fckli eest. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/et\/server\/\"   title=\"serverite\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1507\">serverite<\/a>.<\/p>\n<p><b>Teekonna algus<\/b><\/p>\n<p>Teekonna alguses n\u00e4gi meie tehnoloogia virn v\u00e4lja j\u00e4rgmiselt:<br \/>\n<i>OS CentOS 7<br \/>\nDomeeni kontrollijad FreeIPA<br \/>\nAutomatiseerimine \u2013 Ansible(+Tower), Cobbler<\/i><\/p>\n<p>K\u00f5ik see asus kolme domeeni, jaotatuna mitme andmekeskuse vahel. \u00dches andmekeskuses \u2013 kontoris\u00fcsteemid ja testimispoliigonid, teistes PROD.<\/p>\n<p>Serverite loomine n\u00e4gi mingil hetkel v\u00e4lja nii:<\/p>\n<p><img decoding=\"async\" alt=\"Alates &#039;start-up&#039; kuni tuhandete serveriteni k\u00fcmnes andmekeskuses. Kuidas me kasvu taga ajasime Linuxi infrastruktuuris\" src=\"\/wp-content\/uploads\/2020\/07\/2cc6209276489dc6e9d1bf46236d3785.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>VM CentOS minimal malli ja vajalik miinimum, nagu \u00f5ige \/etc\/resolv.conf, tuleb \u00fclej\u00e4\u00e4nu Ansible'iga.<\/p>\n<p>CMDB \u2013 Excel.<\/p>\n<p>Kui server on f\u00fc\u00fcsiline, siis installitakse selle peale OS mitte virtuaalse masina kopeerimise teel, vaid Cobbleri abil \u2013 Cobbleri konfi lisatakse sihtserveri MAC-aadressid, server saab DHCP kaudu IP-aadressi ja seej\u00e4rel installitakse OS.<\/p>\n<p>Alguses proovisime me isegi Cobbleris mingit konfiguratsioonihaldust. Kuid aja jooksul hakkas see tekitama probleeme konfiguratsioonide \u00fclekandmisel nii teistesse andmekeskustesse kui ka Ansible'i koodile, mis valmistab VM-e ette.<\/p>\n<p>Ansible'it n\u00e4gid paljud meist toona kui mugavat Bash'i laiendust ja ei pidanud tagasihoidlikuks shell'i, sed'i kasutamise konstruktsioonide osas. \u00dches\u00f5naga, Bashsible. See t\u00f5i l\u00f5puks kaasa selle, et kui playbook ei t\u00f6\u00f6tanud mingil p\u00f5hjusel serveris, oli lihtsam server kustutada, playbook 'i parandada ja uuesti k\u00e4ivitada. Mingeid versioonihalduse skripte ei toimunud ning konfiguratsioonide \u00fclekandmine ei olnud samuti v\u00f5imalik.<\/p>\n<p>N\u00e4iteks, kui soovisime muuta mingit konfiguratsiooni k\u00f5ikides serverites:<\/p>\n<ol>\n<li>Muudame konfiguratsiooni olemasolevates serverites loogilises segmendis\/andmekeskuses. M\u00f5nikord ei pruugi see toimuda \u00fche p\u00e4evaga \u2013 k\u00e4ttesaadavuse n\u00f5uded ja suurte numbrite seadus ei luba k\u00f5iki muudatusi korraga rakendada. M\u00f5ned muudatused v\u00f5ivad olla potentsiaalselt h\u00e4vitavad ja n\u00f5uavad millegi_restartimist \u2013 alates teenustest kuni kogu OS-ni.<\/li>\n<li>Parandame Ansible'is<\/li>\n<li>Parandame Cobbleris<\/li>\n<li>Korrake N korda iga loogilise segmendi\/andmekeskuse jaoks<\/li>\n<\/ol>\n<p>Selleks, et k\u00f5ik muudatused sujuksid, tuli arvesse v\u00f5tta mitmeid tegureid, ja muudatused toimuvad pidevalt.<\/p>\n<ul>\n<li>Ansible'i koodi, konfiguratsioonifailide refaktooring<\/li>\n<li>Siseste best practice'ide muutmine<\/li>\n<li>Muudatused p\u00e4rast intsidentide\/\u00f5nnetuste anal\u00fc\u00fcsi<\/li>\n<li>Turvastandardite muutmine, nii sisemised kui v\u00e4lised. N\u00e4iteks PCI DSS t\u00e4iendatakse igal aastal uute n\u00f5uetega.<\/li>\n<\/ul>\n<p><b>Infrastruktuuri kasv ja teekonna algus<\/b><\/p>\n<p>Serverite\/loogiliste domeenide\/andmekeskuste arv kasvas, koos sellega konfiguratsioonide vigade hulk. \u00dchel hetkel j\u00f5udsime kolme suunani, kuhu on vaja arendada konfiguratsioonihaldust:<\/p>\n<ol>\n<li>Automatiseerimine. Kuidas iganes v\u00f5imalik, tuleb v\u00e4ltida inimfaktorit korduvates toimingutes.<\/li>\n<li>Korduvus. Infrastruktuuri haldamine on palju lihtsam, kui see on ettearvatav. Serverite ja nende ettevalmistamise t\u00f6\u00f6riistade konfiguratsioon peab olema igal pool identne. See on samuti oluline tootearenduse meeskondade jaoks \u2013 rakendus peab p\u00e4rast testimist j\u00f5udma tootmis keskkonda, mis on seadistatud analooge testkeskkonnale.<\/li>\n<li>Mugavus ja l\u00e4bipaistvus muudatuste tegemisel konfiguratsioonihalduses.<\/li>\n<\/ol>\n<p>J\u00e4\u00e4nud on lisada paar t\u00f6\u00f6riista.<\/p>\n<p>Koodide hoidjana valisime GitLab CE, mitte viimaseks tagasihoidlikuks \u00fchtekuuluvasse CI\/CD mudelisse.<\/p>\n<p>Salvestite hoidjana \u2013 Hashicorp Vault, sealhulgas suurep\u00e4rase API t\u00f5ttu.<\/p>\n<p>Konfiguratsioonide ja ansible rollide testimine \u2013 Molecule + Testinfra. Testid toimuvad palju kiiremini, kui \u00fchendate ansible'i mitogeniga. Samal ajal alustasime oma CMDB ja orkestri kirjutamist automaatse juurutamise jaoks (pildil Cobbleri kohal), kuid see on juba hoopis teine lugu, millest r\u00e4\u00e4gib tulevikus minu kolleeg ja nende s\u00fcsteemide peamine arendaja.<\/p>\n<p>Meie valik:<\/p>\n<p><i>Molecule + Testinfra<br \/>\nAnsible + Tower + AWX<br \/>\nServerite maailm + DITNET (Omandatud arendus)<br \/>\nCobbler<br \/>\nGitlab + GitLab runner<br \/>\nHashicorp Vault<br \/>\n<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Alates &#039;start-up&#039; kuni tuhandete serveriteni k\u00fcmnes andmekeskuses. Kuidas me kasvu taga ajasime Linuxi infrastruktuuris\" src=\"\/wp-content\/uploads\/2020\/07\/e84263618966f757e76d0384c9da276d.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>Muide ansible'i rollidest. Alguses oli neid \u00fcks, p\u00e4rast mitmeid refaktoreerimisi muutus neid 17. Soovitan tungivalt jagada monoliitseid rolle idempotentseteks rollideks, mida saab hiljem eraldi k\u00e4ivitada, lisades vajadusel silte. Me jagasime rolle funktsiooni j\u00e4rgi \u2013 v\u00f5rgundus, logimine, paketid, riistvara, molecule jne. Ja \u00fcldiselt j\u00e4rgnesime allolevale strateegiale. Ma ei v\u00e4ida, et see on ainu\u00f5ige t\u00f5de, kuid meil t\u00f6\u00f6tas see.<\/p>\n<ul>\n<li><b>Serverite kopeerimine \"kuldse pildi\" j\u00e4rgi on kuri!<\/b>Peamised puudused \u2013 te ei tea kindlasti, mis seisus pildid hetkel on, ja k\u00f5ik muudatused satuvad k\u00f5igi piltide kaudu k\u00f5ikidesse virtualiseerimise farmidesse.<\/li>\n<li><b>Kasutage vaikimisi konfiguratsioonifaile minimaalselt ja leppige teiste osakondadega kokku, et peamiste s\u00fcsteemifailide eest vastutate teie.<\/b>, n\u00e4iteks:\n<ol>\n<li>J\u00e4tke \/etc\/sysctl.conf t\u00fchjaks, seaded peaksid olema ainult \/etc\/sysctl.d\/. Teie vaikimisi \u00fches failis, kohandatud rakenduse jaoks teises.<\/li>\n<li>Kasutage override faile systemd unitide redigeerimiseks.<\/li>\n<\/ol>\n<\/li>\n<li><b>Mallige k\u00f5ik konfiguratsioonid ja sisestage need t\u00e4ielikult, v\u00f5imalusel v\u00e4ltige sed'i ja selle sarnaseid k\u00e4sklusi m\u00e4ngudes.<\/b><\/li>\n<li><b>Refaktoreerides konfiguratsioonihalduse koodi:<\/b>\n<ol>\n<li>Jagage \u00fclesandeid loogilisteks \u00fcksusteks ja kirjutage monoliit rollide formaadis.<\/li>\n<li>Kasutage lintereid! Ansible-lint, yaml-lint jne.<\/li>\n<li>Muutke l\u00e4henemist! Unustage bashsible. Tuleb kirjeldada s\u00fcsteemi olekut.<\/li>\n<\/ol>\n<\/li>\n<li><b>Iga Ansible rolli jaoks tuleb kirjutada testid molekulis ja genereerida raportid iga p\u00e4ev.<\/b><\/li>\n<li>Meie puhul, p\u00e4rast testide ettevalmistamist (mille hulk \u00fcletab 100), leidsime umbes 70000 viga. Parandasime neid mitu kuud.<img decoding=\"async\" alt=\"Alates &#039;start-up&#039; kuni tuhandete serveriteni k\u00fcmnes andmekeskuses. Kuidas me kasvu taga ajasime Linuxi infrastruktuuris\" src=\"\/wp-content\/uploads\/2020\/07\/afa87e6305ef99a7ed6bdab0bc78a433.jpg\" style=\"display:block;margin: 0 auto;\"><\/li>\n<\/ul>\n<p><b>Meie rakendamine<\/b><\/p>\n<p>Nii, ansible rollid olid valmis, mallitud ja kontrollitud linteritega. Ja isegi gitid on igal pool \u00fcles seatud. Kuid usaldusv\u00e4\u00e4rse koodi kohaletoimetamise k\u00fcsimus erinevatesse segmentidesse j\u00e4i avatuks. Otsustasime s\u00fcnkroniseerida skriptide abil. N\u00e4eb v\u00e4lja nii:<\/p>\n<p><img decoding=\"async\" alt=\"Alates &#039;start-up&#039; kuni tuhandete serveriteni k\u00fcmnes andmekeskuses. Kuidas me kasvu taga ajasime Linuxi infrastruktuuris\" src=\"\/wp-content\/uploads\/2020\/07\/7c850301b5838b295d75834374e09b9f.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>P\u00e4rast muutuse saabumist k\u00e4ivitatakse CI, luuakse testserver, rakendatakse rolle, testitakse molekuliga. Kui k\u00f5ik on korras, l\u00e4heb kood tootmisfiliaali. Kuid me ei rakenda uut koodi olemasolevatele serveritele automaatselt. See on teatud peatamine, mis on vajalik meie s\u00fcsteemide k\u00f5rge k\u00e4ttesaadavuse tagamiseks. Ja kui infrastruktuur muutub tohutuks, m\u00e4ngib rolli ka suurte numbrite seadus \u2013 isegi kui olete kindel, et muudatus on kahjutu, v\u00f5ib see viia kurvade tagaj\u00e4rgedeni.<\/p>\n<p>Serverite loomise variante on samuti palju. Me valisime l\u00f5puks kohandatud skriptid Pythonis. Ja CI jaoks ansible:<\/p>\n<pre><code class=\"json\">- name: create1.yml - VM loomine mallist\n  vmware_guest:\n    hostname: \"{{datacenter}}\".domain.ru\n    username: \"{{ username_vc }}\"\n    password: \"{{ password_vc }}\"\n    validate_certs: no\n    cluster: \"{{cluster}}\"\n    datacenter: \"{{datacenter}}\"\n    name: \"{{ name }}\"\n    state: poweredon\n    folder: \"\/{{folder}}\"\n    template: \"{{template}}\"\n    customization:\n      hostname: \"{{ name }}\"\n      domain: domain.ru\n      dns_servers:\n        - \"{{ ipa1_dns }}\"\n        - \"{{ ipa2_dns }}\"\n    networks:\n      - name: \"{{ network }}\"\n        type: static\n        ip: \"{{ip}}\"\n        netmask: \"{{netmask}}\"\n        gateway: \"{{gateway}}\"\n        wake_on_lan: True\n        start_connected: True\n        allow_guest_control: True\n    wait_for_ip_address: yes\n    disk:\n      - size_gb: 1\n        type: thin\n        datastore: \"{{datastore}}\"\n      - size_gb: 20\n        type: thin\n        datastore: \"{{datastore}}\"<\/code><\/pre>\n<p>Siin ongi see, kuhu me j\u00f5udsime, s\u00fcsteem j\u00e4tkab elu ja arengut.<\/p>\n<ul>\n<li>17 ansible rolli serveri seadistamiseks. Iga roll on m\u00f5eldud lahendama erinevat loogilist \u00fclesannet (logimine, auditeerimine, kasutajate autoriseerimine, j\u00e4lgimine jne).<\/li>\n<li>Rollide testimine. Molecule + TestInfra.<\/li>\n<li>Omandatud arendus: CMDB + Orkestrator.<\/li>\n<li>Serveri loomise aeg ~30 minutit, automatiseeritud ja praktiliselt ei s\u00f5ltu t\u00f6\u00f6de j\u00e4rjekorrast.<\/li>\n<li>Infrastruktuuri \u00fchtlane olek\/nimetus k\u00f5ikides segmentides \u2013 playbookid, hoidlad, virtualiseerimise elemendid.<\/li>\n<li>Igap\u00e4evane serverite oleku kontroll koos aruannete genereerimisega k\u00f5rvalekalletest normist.<\/li>\n<\/ul>\n<p>Loodan, et minu lugu on kasulik neile, kes on alguses. Millist automatiseerimist steeki teie kasutate?<\/p>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/nspk\/blog\/509460\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0415\u0441\u043b\u0438 \u0432\u0430\u0448\u0430 IT \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0440\u0430\u0441\u0442\u0451\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u044b\u0441\u0442\u0440\u043e, \u0432\u044b \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0451\u0442\u0435\u0441\u044c \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u2013 \u043b\u0438\u043d\u0435\u0439\u043d\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u043b\u044e\u0434\u0441\u043a\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043d\u0430 \u0435\u0451 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0438\u043b\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e. \u0414\u043e \u043a\u0430\u043a\u043e\u0433\u043e-\u0442\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u043c\u044b \u0436\u0438\u043b\u0438 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c\u0435, \u0430 \u043f\u043e\u0442\u043e\u043c \u043d\u0430\u0447\u0430\u043b\u0441\u044f \u0434\u043e\u043b\u0433\u0438\u0439 \u043f\u0443\u0442\u044c \u043a Infrastructure-as-Code. \u0420\u0430\u0437\u0443\u043c\u0435\u0435\u0442\u0441\u044f, \u041d\u0421\u041f\u041a \u2013 \u043d\u0435 \u0441\u0442\u0430\u0440\u0442\u0430\u043f, \u043d\u043e \u0442\u0430\u043a\u0430\u044f \u0430\u0442\u043c\u043e\u0441\u0444\u0435\u0440\u0430 \u0446\u0430\u0440\u0438\u043b\u0430 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0432 \u043f\u0435\u0440\u0432\u044b\u0435 \u0433\u043e\u0434\u044b \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044f, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":87283,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-87282","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.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0415\u0441\u043b\u0438 \u0432\u0430\u0448\u0430 IT \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0440\u0430\u0441\u0442\u0451\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u044b\u0441\u0442\u0440\u043e, \u0432\u044b \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0451\u0442\u0435\u0441\u044c \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u2013 \u043b\u0438\u043d\u0435\u0439\u043d\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u043b\u044e\u0434\u0441\u043a\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043d\u0430 \u0435\u0451 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0438\u043b\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e.\" \/>\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\/et\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\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\u041e\u0442 \u201c\u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0430\u201d \u0434\u043e \u0442\u044b\u0441\u044f\u0447 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432 \u0434\u0435\u0441\u044f\u0442\u043a\u0435 \u0426\u041e\u0414. \u041a\u0430\u043a \u043c\u044b \u0433\u043d\u0430\u043b\u0438\u0441\u044c \u0437\u0430 \u0440\u043e\u0441\u0442\u043e\u043c Linux \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0415\u0441\u043b\u0438 \u0432\u0430\u0448\u0430 IT \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0440\u0430\u0441\u0442\u0451\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u044b\u0441\u0442\u0440\u043e, \u0432\u044b \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0451\u0442\u0435\u0441\u044c \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u2013 \u043b\u0438\u043d\u0435\u0439\u043d\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u043b\u044e\u0434\u0441\u043a\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043d\u0430 \u0435\u0451 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0438\u043b\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury\" \/>\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=\"2020-07-06T11:44:51+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-02-01T09:41:48+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\udd47Alates \u201cstart-upist\u201d tuhande serverini k\u00fcmnes andmekeskuses. Kuidas me j\u00e4rgnesime Linuxi infrastruktuuri kasvule | ProHoster","description":"Kui teie IT-infrastruktuur kasvab liiga kiiresti, seisate varem v\u00f5i hiljem silmitsi valikuga \u2013 kas suurendada inimesetootlust selle toetamiseks v\u00f5i alustada automatiseerimist.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","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\u041e\u0442 \u201c\u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0430\u201d \u0434\u043e \u0442\u044b\u0441\u044f\u0447 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432 \u0434\u0435\u0441\u044f\u0442\u043a\u0435 \u0426\u041e\u0414. \u041a\u0430\u043a \u043c\u044b \u0433\u043d\u0430\u043b\u0438\u0441\u044c \u0437\u0430 \u0440\u043e\u0441\u0442\u043e\u043c Linux \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b | ProHoster","og:description":"\u0415\u0441\u043b\u0438 \u0432\u0430\u0448\u0430 IT \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0440\u0430\u0441\u0442\u0451\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u044b\u0441\u0442\u0440\u043e, \u0432\u044b \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0451\u0442\u0435\u0441\u044c \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u2013 \u043b\u0438\u043d\u0435\u0439\u043d\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u043b\u044e\u0434\u0441\u043a\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043d\u0430 \u0435\u0451 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0438\u043b\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e.","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury","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":"2020-07-06T11:44:51+00:00","article:modified_time":"2021-02-01T09:41:48+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"87282","title":null,"description":"","keywords":"","keyphrases":null,"primary_term":null,"canonical_url":"","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 13:55:30","updated":"2026-02-09 16:50:33","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/87282","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=87282"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/87282\/revisions"}],"predecessor-version":[{"id":158751,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/87282\/revisions\/158751"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/87283"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=87282"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=87282"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=87282"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}