{"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":"Kuidas me kasvasime Linuxi infrastruktuuri tuhandete serveritega k\u00fcmnes andmekeskuses alates \u201estart-up'ist\u201c","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Kui teie IT-infrastruktuur kasvab liiga kiiresti, peate t\u00f4tama valiku \u2013 kas suurendada inimressursse selle toetamiseks v\u00f5i alustada automatiseerimist. Teatud aja jooksul elasime esimeses paradigmas, kuid seej\u00e4rel algas pikk tee Infrastructure-as-Code'i suunas.<\/p>\n<p><img decoding=\"async\" alt=\"Kuidas me kasvasime Linuxi infrastruktuuri tuhandete serveritega k\u00fcmnes andmekeskuses alates \u201estart-up&#039;ist\u201c\" 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 \/>\nT\u00f5epoolest, NSPK ei ole idufirma, kuid selline \u00f5hkkond valitses ettev\u00f5ttes selle esimese olemasolu aasta jooksul ning need olid v\u00e4ga huvitavad aastad. Minu nimi on <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/users\/dkorn\/\">Kornjakov Dmitri<\/a><\/noindex>, olen rohkem kui 10 aastat toetanud k\u00f5rgtehnoloogia n\u00f5udmistega Linuxi infrastruktuuri. Liitusin NSPK meeskonnaga jaanuaris 2016 ja kahjuks ei kogenud ettev\u00f5tte algusaegu, kuid tulin perioodil, mil toimusid suured muutused.<\/p>\n<p>\u00dcldiselt v\u00f5ib \u00f6elda, et meie meeskond pakub ettev\u00f5ttele kahte toodet. Esimene on infrastruktuur. Postkast peab t\u00f6\u00f6tama, DNS peab toimima, ja domeeni kontrollijad peavad lastma teid serveritesse, mis ei tohi kokku kukkuda. Ettev\u00f5tte IT-maastik on tohutu! Need on business&amp;mission critical s\u00fcsteemid, mille k\u00e4ttesaadavuse n\u00f5uded on m\u00f5nel juhul 99,999. Teine toode on serverid, nii f\u00fc\u00fcsilised kui virtuaalsed. Eksisteerivates tuleb hoolt kanda, ja uusi tuleb regulaarselt tarnida paljusid osakondi. Selles artiklis tahan r\u00f5hutada, kuidas me arendasime infrastruktuuri, mis toetab eluts\u00fcklit. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/et\/server\/\"   title=\"serverid\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1507\">serverid<\/a>.<\/p>\n<p><b>Teekonna algus<\/b><\/p>\n<p>Alguses n\u00e4gi meie tehnoloogiapeal v\u00e4lja j\u00e4rgmine:<br \/>\n<i>OS CentOS 7<br \/>\nDomeeni kontrollijad FreeIPA<br \/>\nAutomatiseerimine \u2013 Ansible(+Tower), Cobbler<\/i><\/p>\n<p>K\u00f5ik need asusid kolmes domeenis, mis olid jaotatud mitmele andmekeskusele. \u00dches andmekeskuses olid kontoris\u00fcsteemid ja testimisplatvormid, teistes PROD.<\/p>\n<p>Serverite loomine n\u00e4gi mingil hetkel v\u00e4lja nii:<\/p>\n<p><img decoding=\"async\" alt=\"Kuidas me kasvasime Linuxi infrastruktuuri tuhandete serveritega k\u00fcmnes andmekeskuses alates \u201estart-up&#039;ist\u201c\" src=\"\/wp-content\/uploads\/2020\/07\/2cc6209276489dc6e9d1bf46236d3785.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>VM CentOS minimal mall ja vajalik minimaalne, n\u00e4iteks korrektne \/etc\/resolv.conf, k\u00f5ik muu saab Ansible'i kaudu.<\/p>\n<p>CMDB \u2013 Excel.<\/p>\n<p>Kui server on f\u00fc\u00fcsiline, siis OS installitakse selle asemel, et virtuaalmasinat kopeerida, Cobbleri abil \u2013 Cobbleri konfiguratsioonile lisatakse sihtserveri MAC-aadresse, server saab DHCP kaudu IP-aadressi ja seej\u00e4rel installitakse OS.<\/p>\n<p>Alguses proovisime isegi teha mingit konfiguratsioonihaldust Cobbleris. Kuid aja jooksul hakkas see tekitama probleeme konfiguratsioonide \u00fclekandmisel nii teistesse andmekeskustesse kui ka Ansible'i koodi VM ettevalmistamiseks.<\/p>\n<p>Paljude jaoks oli Ansible sel ajal mugav Bash'i laiendus, ja me ei hoidunud shell'i ja sed'i kasutamisest. \u00dcks s\u00f5na \u2013 Bashsible. See t\u00f5i kaasa selle, et kui playbook mingil p\u00f5hjusel serveril ei t\u00f6\u00f6tanud, oli lihtsam server kustutada, playbook't parandada ja uuesti \u00fcles laadida. Scriptide versioonide haldamist tegelikult ei olnud, samuti mitte konfiguratsioonide \u00fclekandmist.<\/p>\n<p>N\u00e4iteks, me tahtsime muuta mingit konfiguratsiooni k\u00f5igil serveritel:<\/p>\n<ol>\n<li>Muudame konfiguratsiooni olemasolevates serverites loogilises segmendis\/andmekeskuses. M\u00f5nikord ei toimu see p\u00e4evaga \u2013 saadavuse n\u00f5uded ja suurte numbrite seadus ei v\u00f5imalda k\u00f5iki muudatusi korraga rakendada. Ja m\u00f5ned muudatused on potentsiaalselt h\u00e4vitavad ning vajavad millegi taask\u00e4ivitamist \u2013 teenustest kuni operatsioonis\u00fcsteemini.<\/li>\n<li>Korrigeerime Ansible'is<\/li>\n<li>Korrigeerime Cobbleris<\/li>\n<li>Korratakse N korda iga loogilise segmendi\/andmekeskuse jaoks<\/li>\n<\/ol>\n<p>Selleks, et k\u00f5ik muudatused sujuvalt kulgeks, tuli arvesse v\u00f5tta mitmeid tegureid, ja muudatusi toimub pidevalt.<\/p>\n<ul>\n<li>Ansible'i koodi, konfiguratsioonifailide refaktoreerimine<\/li>\n<li>Sisemiste parimate praktikade muutmine<\/li>\n<li>Muudatused s\u00fcndmuste\/juhuslike olukordade anal\u00fc\u00fcsi tulemusena<\/li>\n<li>Turvastandardi muudatused, nii sise- kui v\u00e4liste. N\u00e4iteks PCI DSS t\u00e4iendatakse iga aasta uute n\u00f5uetega.<\/li>\n<\/ul>\n<p><b>Infrastruktuuri kasv ja teekonna algus<\/b><\/p>\n<p>Serverite\/logiliste domeenide\/andmekeskuste arv suurenes, samas suurenes ka konfiguratsioonivigade arv. Millalgi j\u00f5udsime kolme suunani, kuhu oli vaja configuration management'i suunata:<\/p>\n<ol>\n<li>Automatiseerimine. K\u00fcllalt palju tuleb v\u00e4ltida inimfaktorit korduvates toimingutes.<\/li>\n<li>Korratavus. Infrastruktuuri haldamine on palju lihtsam, kui see on prognoositav. Serverite ja nende ettevalmistamise t\u00f6\u00f6riistade konfiguratsioon peab olema igal pool \u00fchesugune. See on samuti oluline toote meeskondade jaoks \u2013 rakendus peab p\u00e4rast testimist garanteeritult j\u00f5udma tootmiskeskkonda, mis on sarnane testkeskkonnaga.<\/li>\n<li>Muudatuste lihtsus ja l\u00e4bipaistvus configuration management'is.<\/li>\n<\/ol>\n<p>M\u00f5ned t\u00f6\u00f6riistad on veel lisada.<\/p>\n<p>Koodihoiustajana valisime GitLab CE, mitte v\u00e4hem t\u00e4htis oli ka sisseehitatud CI\/CD moodulite olemasolu.<\/p>\n<p>Salajaste hoidla \u2013 Hashicorp Vault, sealhulgas suurep\u00e4rane API.<\/p>\n<p>Konfiguratsioonide ja ansible rollide testimine \u2013 Molecule + Testinfra. Testid toimuvad palju kiiremini, kui \u00fchendate ansible\u2019i mitogeniga. Samal ajal hakkasime kirjutama oma CMDB-d ja orkestrit avtomaatseks nasteks (pildil Cobbleri kohal), kuid see on juba hoopis teine lugu, millest r\u00e4\u00e4gib tulevikus minu kolleeg ja nende s\u00fcsteemide pea arendaja.<\/p>\n<p>Meie valik:<\/p>\n<p><i>Molecule + Testinfra<br \/>\nAnsible + Tower + AWX<br \/>\nServerite maailm + DITNET (oma arendus)<br \/>\nCobbler<br \/>\nGitlab + GitLab runner<br \/>\nHashicorp Vault<br \/>\n<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Kuidas me kasvasime Linuxi infrastruktuuri tuhandete serveritega k\u00fcmnes andmekeskuses alates \u201estart-up&#039;ist\u201c\" src=\"\/wp-content\/uploads\/2020\/07\/e84263618966f757e76d0384c9da276d.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>Muide, ansible rollidest. Alguses oli \u00fcks, p\u00e4rast mitmeid refaktoreerimisi sai neid 17. Soovitan kategooriliselt jagada monoliit idempotentseteks rollideks, mida saab hiljem eraldi k\u00e4ivitada, lisaks saab lisada silte. Me jagasime rollid funktsionaalsuse j\u00e4rgi \u2013 v\u00f5rk, logimine, paketid, riistvara, molecule jne. Tegelikult j\u00e4rgnesime allpool olevatele strateegiatele. Ma ei n\u00f5ua, et see oleks ainus t\u00f5de, kuid see t\u00f6\u00f6tas meie jaoks.<\/p>\n<ul>\n<li><b>Serverite kopeerimine \"kuldsetest piltidest\" on kuritegu!<\/b>Peamiste puudustega \u2013 te ei tea t\u00e4pselt, millises seisundis pildid praegu on, ja et k\u00f5ik muudatused j\u00f5uavad k\u00f5ikidesse piltidesse k\u00f5igil virtualiseerimissektoritel.<\/li>\n<li><b>Kasutage vaikimisi konfiguratsioonifaile minimaalselt ja leppige kokku teiste osakondadega, et p\u00f5hikohustused s\u00fcsteemifailide osas on teie.<\/b>, n\u00e4iteks:\n<ol>\n<li>J\u00e4tke \/etc\/sysctl.conf t\u00fchjaks, seadistused peavad olema ainult \/etc\/sysctl.d\/. Teie vaikimisi \u00fches failis, kohandused rakenduse jaoks teises.<\/li>\n<li>Kasutage override-faile systemd \u00fcksuste redigeerimiseks.<\/li>\n<\/ol>\n<\/li>\n<li><b>Template'ige k\u00f5ik konfiguratsioonid ja tooge need t\u00e4ielikult sisse, v\u00e4ltige v\u00f5imaluse korral 'sed' ja sarnaseid t\u00f6\u00f6riistu m\u00e4nguk\u00e4ikudes.<\/b><\/li>\n<li><b>Refaktoreerides konfigureerimise haldus s\u00fcsteemi:<\/b>\n<ol>\n<li>Jagage \u00fclesanded loogilisteks \u00fcksusteks ja kirjutage monoliit rollideks \u00fcmber.<\/li>\n<li>Kasutage linte! Ansible-lint, yaml-lint jne.<\/li>\n<li>Muuda l\u00e4henemist! Mingit bashsible. Tuleb kirjeldada s\u00fcsteemi olekut.<\/li>\n<\/ol>\n<\/li>\n<li><b>K\u00f5igi Ansible rollide jaoks tuleb kirjutada testid molekulis ja genereerida aruanded \u00fcks kord p\u00e4evas.<\/b><\/li>\n<li>Meie puhul, p\u00e4rast testide ettevalmistamist (mille arv \u00fcletas 100) leidis umbes 70000 viga. Parandamine v\u00f5ttis mitu kuud.<img decoding=\"async\" alt=\"Kuidas me kasvasime Linuxi infrastruktuuri tuhandete serveritega k\u00fcmnes andmekeskuses alates \u201estart-up&#039;ist\u201c\" src=\"\/wp-content\/uploads\/2020\/07\/afa87e6305ef99a7ed6bdab0bc78a433.jpg\" style=\"display:block;margin: 0 auto;\"><\/li>\n<\/ul>\n<p><b>Meie teostus<\/b><\/p>\n<p>Nii et, ansible rollid olid valmis, template'eritud ja linters kontrollitud. Ja isegi git'id on k\u00f5ik \u00fcles t\u00f5stetud. Kuid k\u00fcsimus usaldusv\u00e4\u00e4rsest koodi edastamisest erinevatesse segmentidesse j\u00e4i avatuks. Otsustasime s\u00fcnkroniseerida skriptidega. N\u00e4eb v\u00e4lja nii:<\/p>\n<p><img decoding=\"async\" alt=\"Kuidas me kasvasime Linuxi infrastruktuuri tuhandete serveritega k\u00fcmnes andmekeskuses alates \u201estart-up&#039;ist\u201c\" src=\"\/wp-content\/uploads\/2020\/07\/7c850301b5838b295d75834374e09b9f.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>P\u00e4rast muudatuse saabumist k\u00e4ivitatakse CI, luuakse testserver, k\u00e4ivad l\u00e4bi rollid ja testitakse molekuliga. Kui k\u00f5ik on korras, saadetakse kood tootmisettev\u00f5tte haru. Kuid me ei rakenda uut koodi olemasolevatele serveritele automaatselt. See on omamoodi takistus, mis on vajalik meie s\u00fcsteemide k\u00f5rge k\u00e4ttesaadavuse tagamiseks. Ja kui infrastruktuur muutub tohutuks, tuleb m\u00e4ngu ka suurte numbrite seadus \u2013 isegi kui olete kindel, et muudatus on ohutu, v\u00f5ib see viia kurbade tagaj\u00e4rgedeni.<\/p>\n<p>Serverite loomise variante on samuti palju. L\u00f5puks valisime kohandatud skriptid Pythoni peal. CI jaoks ansible:<\/p>\n<pre><code class=\"json\">- name: create1.yml - Loo VM 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 on, kuhu me j\u00f5udsime, s\u00fcsteem j\u00e4tkab elu ja arenemist.<\/p>\n<ul>\n<li>17 ansible-rolli serveri seadistamiseks. Iga roll on m\u00f5eldud lahendama eraldi loogilist \u00fclesannet (logimine, auditeerimine, kasutajate autoriseerimine, monitooring 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 \u00fclesannete j\u00e4rjekorrast.<\/li>\n<li>\u00dchtne infrastruktuuri seisund\/nimetus k\u00f5igis segmentides \u2013 m\u00e4ngukavad, hoidlad, virtualiseerimise elemendid.<\/li>\n<li>Igap\u00e4evane serverite oleku kontroll koos aruannete genereerimisega erinevustest standarditega.<\/li>\n<\/ul>\n<p>Loodan, et minu jutt on kasulik neile, kes on veel teel. Millist automatiseerimise steki kasutate teie?<\/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.1.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.1.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\udd47 Alustamisest tuhandete serveriteni k\u00fcmnes andmekeskuses. Kuidas me j\u00e4litasime Linuxi infrastruktuuri kasvu | ProHoster","description":"Kui teie IT infrastruktuur kasvab liiga kiiresti, seisate varem v\u00f5i hiljem silmitsi valikuga \u2013 suurendada inimressursse 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}]}}