{"id":90386,"date":"2020-07-31T13:42:20","date_gmt":"2020-07-31T11:42:20","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/triller-o-nastrojke-serverov-bez-chudes-s-configuration-management"},"modified":"2020-07-31T13:42:20","modified_gmt":"2020-07-31T11:42:20","slug":"triller-o-nastrojke-serverov-bez-chudes-s-configuration-management","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/triller-o-nastrojke-serverov-bez-chudes-s-configuration-management","title":{"rendered":"T\u00f6\u00f6tlusserverite seadistamise kohta ilma Configuration Managementi imedeta","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Aeg l\u00e4henes uue aasta saabumisele. Laste kirjad J\u00f5uluvanale ja soovitud kingitused olid juba teele pandud, samas kui peamine teostaja \u2014 \u00fcks suuremaid jaem\u00fc\u00fcjaid \u2014 valmistus m\u00fc\u00fcgip\u00fcha tipphetkeks. Detsembris suureneb nende andmekeskuse koormus mitu korda. Seet\u00f5ttu otsustas ettev\u00f5te andmekeskust uuendada ja k\u00e4ivitada mitu tosinat uut serverit, asendades seadmed, mille t\u00f6\u00f6iga l\u00f5ppes. Siinkohal l\u00f5peb veidi lustlik jutt ja algab p\u00f5nevusfilm. <\/p>\n<p><img decoding=\"async\" alt=\"T\u00f6\u00f6tlusserverite seadistamise kohta ilma Configuration Managementi imedeta\" src=\"\/wp-content\/uploads\/2020\/07\/ebc2128d73e9a0e7f1e383b4b04ee492.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nSeadmed saabusid platvormile mitu kuud enne m\u00fc\u00fcgip\u00fc\u00fcgi haripunkti. Tootmise teenistus teab loomulikult, kuidas ja mida serverites seadistada, et need tootmisringkonda tuua. Kuid meil oli vaja seda automatiseerida ja inimfaktori k\u00f5rvaldada. Lisaks asendasid serverid s\u00fcsteemide SAP komplekti, mis on ettev\u00f5tte jaoks kriitilise t\u00e4htsusega, enne migratsiooni. <\/p>\n<p>Uute serverite k\u00e4ivitamine oli tihedalt seotud t\u00e4htaegadega. Selle nihutamine t\u00e4hendanuks miljardite kingituste tarnete ja s\u00fcsteemide migreerimise ohustamist. Kuup\u00e4eva muuta ei oleks suutnud isegi J\u00f5uluvana ja Santa Claus \u2014 SAP-i s\u00fcsteemi \u00fcleviimist laohaldamiseks saab teha vaid kord aastas. 31. detsembrist 1. jaanuarini peatuvad jaostuskeskused, mille pindala kokku on 20 jalgpalliv\u00e4ljakut, oma t\u00f6\u00f6ks 15 tunniks. See on ainus ajavahemik, millal s\u00fcsteemi \u00fcleviimine toimub. Meil polnud viga sisse viimiseks. <\/p>\n<p>Selgitan kohe: minu jutustus kajastab t\u00f6\u00f6riistu ja konfiguratsiooni haldamise protsessi, mida rakendab meie meeskond.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nKonfiguratsiooni haldamise kompleks koosneb mitmest tasemest. Peamine komponent on CMS-s\u00fcsteem. Tootmisutilduse k\u00e4igus tooks \u00fche taseme puudumine paratamatult kaasa ebameeldivaid \u00fcllatusi.<\/p>\n<h1>Ops\u00fcsteemi installimise haldamine<\/h1>\n<p>\nEsimene tase on ops\u00fcsteemide installimise haldamise s\u00fcsteem f\u00fc\u00fcsilistel ja virtuaalsetel serveritel. See loob ops\u00fcsteemide baaskonfiguratsioonid, vabanedes inimfaktorist. <\/p>\n<p>Selle s\u00fcsteemi abil saime serverite standardiseeritud ja edasiseks automatiseerimiseks sobivaid eksemplare koos ops\u00fcsteemiga. \"Valamisel\" said nad minimaalse hulga kohalikke kasutajaid ja avalikke SSH v\u00f5tmeid, samuti koosk\u00f5lastatud ops\u00fcsteemi konfiguratsiooni. Me saime garanteerida serverite haldamise CMS-i kaudu ja olime kindlad, et \"allpool\", ops\u00fcsteemi tasandil, ei ole \u00fcllatusi. <\/p>\n<p>S\u00fcsteemi halduse \"maximaalne\" \u00fclesanne on automaatselt seadistada serverid BIOS-i\/Firmware tasemest ops\u00fcsteemini. Palju s\u00f5ltub siin riistvarast ja seadistamise \u00fclesannetest. Erineva riistvara korral on v\u00f5imalik kaaluda <noindex><a rel=\"nofollow\" href=\"https:\/\/www.dmtf.org\/standards\/redfish\">REDFISH API<\/a><\/noindex>. Kui kogu \"raua\" on \u00fche tootja oma, siis sageli on mugavam kasutada valmis haldustooted (n\u00e4iteks HP ILO Amplifier, DELL OpenManage jne).<\/p>\n<p>F\u00fc\u00fcsilistel serveritel operatsioonis\u00fcsteemi installimiseks kasutasime k\u00f5igile tuntud Cobblerit, kus on m\u00e4\u00e4ratletud komplekt kokkulepitud teenindusprofiile. Uue serveri lisamisel infrastruktuuri seostas insener serveri MAC-aadressi vajalikku profiiliga Cobbleris. Esimese v\u00f5rgu kaudu k\u00e4ivitamise korral sai server ajutise aadressi ja v\u00e4rske operatsioonis\u00fcsteemi. Seej\u00e4rel viidi see siht-VLAN\/IP-aadressile ja j\u00e4tkati t\u00f6\u00f6d seal. Jah, VLAN-i vahetamine v\u00f5tab aega ja vajab koosk\u00f5lastust, kuid see pakub t\u00e4iendavat kaitset serveri juhusliku installatsiooni eest tootmis\u00fcmbruses.<\/p>\n<p>Virtuaalseid servereid l\u00f5ime mallide p\u00f5hjal, mis olid ette valmistatud HashiCorp Packeri abil. P\u00f5hjus oli sama: et v\u00e4ltida v\u00f5imalikke inimlikke vigu operatsioonis\u00fcsteemi installimisel. Kuid erinevalt f\u00fc\u00fcsilistest serveritest v\u00f5imaldab Packer mitte kasutada PXE-d, v\u00f5rgu k\u00e4ivitamist ega VLAN-i vahetust. See lihtsustas ja h\u00f5lbustas virtuaalsete serverite loomist. <\/p>\n<p><img decoding=\"async\" alt=\"T\u00f6\u00f6tlusserverite seadistamise kohta ilma Configuration Managementi imedeta\" src=\"\/wp-content\/uploads\/2020\/07\/8cde23a4ad2ba1573bc88ec174bfe6b5.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Joon. 1. Operatsioonis\u00fcsteemide installimise haldamine.<\/i><\/p>\n<h1>Saladuste haldamine<\/h1>\n<p>\nIga konfiguratsioonihalduss\u00fcsteem sisaldab andmeid, mis peavad olema tava kasutajate eest peidetud, kuid on vajalikud s\u00fcsteemide ettevalmistamiseks. Need on kohalike kasutajate ja teenuste konto paroolid, sertifikaatide v\u00f5tmed, erinevad API tokenid jne. Neid nimetatakse tavaliselt \"saladusteks.\"<\/p>\n<p>Kui alates algusest ei m\u00e4\u00e4rata, kus ja kuidas neid saladusi hoida, siis s\u00f5ltuvalt infos\u00fcsteemi n\u00f5uete rangusest v\u00f5ivad saladuste hoidmise viisid olla j\u00e4rgmised:<\/p>\n<ul>\n<li>otse konfiguratsiooni juhtimise koodis v\u00f5i failides, mis on hoidlas;<\/li>\n<li>spetsialiseeritud konfiguratsioonihalduse t\u00f6\u00f6riistades (n\u00e4iteks Ansible Vault);<\/li>\n<li>CI\/CD s\u00fcsteemides (Jenkins\/TeamCity\/GitLab jne) v\u00f5i konfiguratsioonihalduss\u00fcsteemides (Ansible Tower\/Ansible AWX);<\/li>\n<li>samuti v\u00f5ivad saladusi edastada \"manuaalselt\". N\u00e4iteks paigutatakse need kokku lepitud kohta, mille j\u00e4rel neid kasutavad konfiguratsioonihalduss\u00fcsteemid;<\/li>\n<li>erinevad \u00fclaltoodud kombinatsioonid.<\/li>\n<\/ul>\n<p>\nIgal meetodil on oma puudused. Peamine neist on juurdep\u00e4\u00e4supoliitikate puudumine saladustele: ei ole v\u00f5imalik v\u00f5i on raske m\u00e4\u00e4rata, kes v\u00f5ib kasutada teatud saladusi. Veel \u00fcks puudus on puuduv juurdep\u00e4\u00e4su audit ja t\u00e4ielik eluts\u00fckkel. Kuidas kiiresti asendada n\u00e4iteks avalik v\u00f5ti, mis on koodis ja mitmes k\u00fclg s\u00fcsteemis?<\/p>\n<p>Kasutasime HashiCorp Vaulti tsentraliseeritud saladuste hoidlat. See v\u00f5imaldas meil: <\/p>\n<ul>\n<li>saladusi ohutult hoida. Need on kr\u00fcpteeritud ja isegi kui keegi p\u00e4\u00e4seb Vaulti andmebaasi juurde (n\u00e4iteks taastades selle varukoopiast), ei saa ta seal hoitavaid saladusi lugeda; <\/li>\n<li>korraldada saladuste juurde p\u00e4\u00e4supuud. Kasutajatele ja rakendustele on juurdep\u00e4\u00e4setavad vaid neile 'moodustatud' saladused;<\/li>\n<li>teostada saladuste juurdep\u00e4\u00e4su auditi. K\u00f5ik tegevused saladustega salvestatakse Vaulti auditi p\u00e4evikusse;<\/li>\n<li>organiseerida t\u00e4ielik 'eluts\u00fckkel' saladustega t\u00f6\u00f6tamiseks. Need v\u00f5ivad olla loodud, t\u00fchistatud, nende kehtivusaega saab m\u00e4\u00e4rata jne.<\/li>\n<li>lihtsalt integreeruda teiste s\u00fcsteemidega, mis vajavad saladustele juurdep\u00e4\u00e4su;<\/li>\n<li>ja veel rakendada l\u00f5pp-to-l\u00f5puga kr\u00fcpteerimist, \u00fchekordseid paroole operatsioonis\u00fcsteemidele ja andmebaasidele, volitatud sertifikaadi keskuste sertifikaate jne. <\/li>\n<\/ul>\n<p>\nN\u00fc\u00fcd liikumine keskse autentimis- ja autoriseerimisse s\u00fcsteemi. Ilma selleta oleks olnud v\u00f5imalik l\u00e4bi saada, kuid kasutajate haldamine paljudes kaasnevates s\u00fcsteemides on liiga keeruline. Oleme seadnud sisse autentimise ja autoriseerimise LDAP teenuse kaudu. Vastasel juhul peaks Vaultis pidevalt andma v\u00e4lja ja j\u00e4lgima autentimisetokeneid kasutajatele. Ja kasutajate eemaldamine ja lisamine oleks muutunud \u201ekas ma olen k\u00f5ikjal selle kasutaja loonud\/eemaldanud?\u201d teekonnaks. <\/p>\n<p>Lisame meie s\u00fcsteemi veel \u00fche taseme: saladuste haldamine ja keskne autentimine\/autoriseerimine:<\/p>\n<p><img decoding=\"async\" alt=\"T\u00f6\u00f6tlusserverite seadistamise kohta ilma Configuration Managementi imedeta\" src=\"\/wp-content\/uploads\/2020\/07\/993e863417898c39940fe0bc9ee55b1e.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Joon. 2. Saladuste haldamine.<\/i><\/p>\n<h1>Konfiguratsioonide haldamine<\/h1>\n<p>\nOleme j\u00f5udnud s\u00fcdamesse \u2014 CMS s\u00fcsteemi. Meie puhul on see ansamblee Ansible ja Red Hat Ansible AWX. <\/p>\n<p>Ansible'i asemel v\u00f5ivad olla Chef, Puppet, SaltStack. Valisime Ansible'i mitmete kriteeriumide alusel. <\/p>\n<ul>\n<li>Esiteks, see on universaalsus. Valmis moodulite kogum haldamiseks <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ansible.com\/ansible\/latest\/modules\/modules_by_category.html\">j\u00e4tab mulje<\/a><\/noindex>. Ja kui see ei piisa, saab GitHubist ja Galaxy'st otsida. <\/li>\n<li>Teiseks, ei pea paigaldama ega hooldama agente hallatavates seadmetes, t\u00f5estama, et need ei sega koormust, ja kinnitama \"tagaside\" puudumist. <\/li>\n<li>Kolmandaks, Ansible'i \u00f5ppimisk\u00fcnnis on madal. H\u00e4sti haritud insener kirjutab t\u00f6\u00f6tava playbooki juba toote esimesel p\u00e4eval.<\/li>\n<\/ul>\n<p>\nKuid \u00fcksi Ansible oli meie t\u00f6\u00f6stuslikus keskkonnas ebapiisav. Vastasel juhul tekkiks palju probleeme juurdep\u00e4\u00e4su piirangu ja administraatorite tegevuste auditeerimisega. Kuidas juurdep\u00e4\u00e4su jagada? Iga osakond pidi haldama (loe: k\u00e4ivitama Ansible playbooki) \"oma\" serverite komplekti. Kuidas lubada konkreetsete Ansible playbookide k\u00e4ivitamist ainult teatud t\u00f6\u00f6tajatele? Kuidas j\u00e4lgida, kes on playbooki k\u00e4ivitanud, ilma et tuleb luua palju kohalikke kasutajakontosid Ansible'i hallatavatel serveritel ja seadmetel?<\/p>\n<p>Suurem osa sarnastest k\u00fcsimustest lahendab Red Hat <noindex><a rel=\"nofollow\" href=\"https:\/\/www.ansible.com\/products\/tower\">Ansible Tower<\/a><\/noindex>, v\u00f5i selle avatud allika projekti <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ansible\/awx\">Ansible AWX<\/a><\/noindex>. Seet\u00f5ttu valisime selle kliendi jaoks. <\/p>\n<p>Veel \u00fcks detail meie CMS-s\u00fcsteemi portree juurde. Ansible playbook peab olema talletatud koodirepositooriumide haldamise s\u00fcsteemides. Meie puhul on see <noindex><a rel=\"nofollow\" href=\"https:\/\/about.gitlab.com\/install\/\">GitLab CE<\/a><\/noindex>.<\/p>\n<p>Nii, konfiguratsioonidega tegeleb Ansible\/Ansible AWX\/GitLaBi sidumine (vt joonis 3). Loomulikult on AWX\/GitLab integreeritud \u00fchtse autentimiss\u00fcsteemiga, samas kui Ansible playbook on \u00fchendatud HashiCorp Vaultiga. Konfiguratsioonid j\u00f5uavad tootmis keskkonda ainult l\u00e4bi Ansible AWX-i, kus on m\u00e4\u00e4ratletud k\u00f5ik \"m\u00e4ngureeglid\": kes ja mida tohib konfigureerida, kust v\u00f5tta konfigureerimise koodi CMS-i jaoks jne.<\/p>\n<p><img decoding=\"async\" alt=\"T\u00f6\u00f6tlusserverite seadistamise kohta ilma Configuration Managementi imedeta\" src=\"\/wp-content\/uploads\/2020\/07\/f4f5b3904a2145d7283cd52f921bca89.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Joonis 3. Konfiguratsioonide haldamine.<\/i><\/p>\n<h1>Testimise haldamine<\/h1>\n<p>\nMeie konfiguratsioon on esitatud koodina. Seet\u00f5ttu peame m\u00e4ngima samade reeglite j\u00e4rgi nagu tarkvaraarendajad. Meil oli vajalik korraldada arendusprotsessid, pidev testimine, konfigureerimis koodi tarnimine ja rakendamine tootmisserverites.<\/p>\n<p>Kui seda kohe ei tehta, siis kirjutatud rollid konfigureerimiseks kas lakkavad t\u00f6\u00f6tamast ja muutmast v\u00f5i l\u00f5petavad tootmises kasutamise. Sellele valule on tuntud ravim ja see on ennast selles projektis t\u00f5estanud:<\/p>\n<ul>\n<li>iga roll on kaetud moodulite testidega;<\/li>\n<li>testid k\u00e4itatakse automaatselt iga koodi muudatuse korral, mis haldab konfiguratsioone;<\/li>\n<li>Konfiguratsioonihalduse koodimuudatused j\u00f5uavad tootmisringkonda ainult p\u00e4rast k\u00f5igi testide ja koodivaatamise edukat l\u00e4bimist.<\/li>\n<\/ul>\n<p>\nKoodi arendamine ja konfiguratsioonihaldus on muutunud rahulikumaks ja ettearvatavamaks. Pideva testimise organiseerimiseks kasutasime GitLab CI\/CD t\u00f6\u00f6riistu ning testide korraldamiseks valisime raamistikuks <noindex><a rel=\"nofollow\" href=\"https:\/\/molecule.readthedocs.io\/en\/latest\/\">Ansible Molecule<\/a><\/noindex>.<\/p>\n<p>Iga konfiguratsioonihalduse koodimuudatuse korral kutsub GitLab CI\/CD esile Molecule: <\/p>\n<ul>\n<li>see kontrollib koodi s\u00fcntaksit, <\/li>\n<li>k\u00e4ivitab Docker konteineri, <\/li>\n<li>rakendab muudetud koodi loodud konteineris, <\/li>\n<li>kontrollib rolli idempotentsust ja k\u00e4ivitab selle koodi testid (granulaarsus on siin ansible rolli tasandil, vt joonis 4).<\/li>\n<\/ul>\n<p>\nProduction-\u00fcmbrisse toimetasime konfiguratsioonid Ansible AWX abil. Eksploitatsiooni eest vastutavad insenerid kasutasid konfiguratsiooni muutmiseks eelnevalt m\u00e4\u00e4ratletud \u0448\u0430\u0431\u043b\u043eone. AWX k\u00fcsis iga rakenduse puhul automaatselt viimane versioon koodist GitLabi master-harust. Nii v\u00e4listasime mittekontrollitud v\u00f5i aegunud koodi kasutamise production-\u00fcmbrikus. Loomulikult j\u00f5udis kood master-harusse vaid p\u00e4rast testimist, \u00fclevaatamist ja kokkulepet.<\/p>\n<p><img decoding=\"async\" alt=\"T\u00f6\u00f6tlusserverite seadistamise kohta ilma Configuration Managementi imedeta\" src=\"\/wp-content\/uploads\/2020\/07\/aa8f6205f05792a6a1120ad7360ab102.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Joon. 4. Automaatne testimine rollide GitLab CI\/CD-s.<\/i><\/p>\n<p>On veel \u00fcks probleem, mis on seotud production-s\u00fcsteemide ekspluateerimisega. Tegelikus elus on v\u00e4ga raske teha konfiguratsiooni muudatusi ainult CMS-i koodi kaudu. Tekkivad erakorralised olukorrad, kui insener peab konfiguratsiooni muutma \"siin ja praegu\", ootamata koodi redigeerimist, testimist, koosk\u00f5lastamist jne.<\/p>\n<p>K\u00e4ealuste muudatuste t\u00f5ttu tekivad konfiguratsioonis erinevused \u00fchte t\u00fc\u00fcpi seadmetes (n\u00e4iteks HA-klastrite s\u00f5lmedes on erinev sysctl-i seadistuste konfiguratsioon). V\u00f5i erineb seadme tegelik konfiguratsioon sellest, mis on m\u00e4\u00e4ratletud CMS-i koodis. <\/p>\n<p>Seet\u00f5ttu, lisaks pidevale testimisele, kontrollime tootmiskeskkondi konfiguratsioonide lahku mineku osas. Valisime k\u00f5ige lihtsama lahenduse: CMS konfiguratsiooni koodi k\u00e4ivitamine \u00abdry run\u00bb re\u017eiimis, st muudatuste rakendamise ilma, kuid teavitades k\u00f5igist lahknevustest kavandatud ja tegeliku konfiguratsiooni vahel. Oleme selle rakendanud perioodiliste k\u00e4ivitustega k\u00f5igi Ansible playbookide jaoks valikuga \u00ab--check\u00bb tootmisserverites. Playbookide k\u00e4ivitamise ja aktuaalsuse eest vastutab nagu alati Ansible AWX (vt joonis 5):<\/p>\n<p><img decoding=\"async\" alt=\"T\u00f6\u00f6tlusserverite seadistamise kohta ilma Configuration Managementi imedeta\" src=\"\/wp-content\/uploads\/2020\/07\/108a5a473f60ab76ee15f9334ebcbab7.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Joonis 5. Konfiguratsioonide erinevuste kontrollimine Ansible AWX-is.<\/i><\/p>\n<p>P\u00e4rast AWX-i kontrollimist saadab see aruande erinevustest administraatoritele. Nad uurivad probleemset konfiguratsiooni ja seej\u00e4rel parandavad seda kohandatud playbookide kaudu. Nii hoiame konfiguratsiooni production-keskkonnas ja CMS on alati aktuaalses ja s\u00fcnkroonitud seisundis. See vabastab ebameeldivatest 'ime' olukordadest, kus CMS-i kood rakendatakse 'toodangu' serverites.<\/p>\n<p>N\u00fc\u00fcd on meil oluline testimise tase, mis koosneb Ansible AWX-ist, GitLab-ist ja Moleculest (vt joonis 6).<\/p>\n<p><img decoding=\"async\" alt=\"T\u00f6\u00f6tlusserverite seadistamise kohta ilma Configuration Managementi imedeta\" src=\"\/wp-content\/uploads\/2020\/07\/f487f5603e90b0c753fb9decf9018b11.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Joonis 6. Testimise haldamine.<\/i><\/p>\n<p>Kas see on keeruline? Olen n\u00f5us. Kuid selline konfigureerimise haldamise kompleks on ammendav vastus paljudele serverite seadistamise automatiseerimisega seotud k\u00fcsimustele. N\u00fc\u00fcd on jaem\u00fc\u00fcjal t\u00fc\u00fcpilistel serveritel alati rangelt m\u00e4\u00e4ratletud konfiguratsioon. CMS ei unusta, erinevalt insenerist, vajalikku seadistust lisada, kasutajaid luua ja teostada k\u00fcmneid v\u00f5i sadu vajalikke seadeid.<\/p>\n<p>Serverite ja keskkondade seadistustes pole t\u00e4na enam \u201esalajasi teadmisi\u201c. K\u00f5ik vajalikud omadused on kajastatud m\u00e4nguraamatus. Ei mingit loomingulist l\u00e4henemist ega uduseid juhiseid: \u201e<i>seadista nagu tavaline Oracle, kuid seal tuleb m\u00f5ningad sysctl seaded \u00fcles m\u00e4rkida ja lisada kasutajad \u00f5ige UID-ga. K\u00fcsi kasutusmeeskonnalt, nemad teavad.<\/i>\u00bb. <\/p>\n<p>V\u00f5imalus tuvastada konfiguratsioonide lahknevusi ja neid ette \u00e4ra parandada toob rahu. Ilma konfigureerimise haldamise s\u00fcsteemita n\u00e4eb see tavaliselt hoopis teistsugune v\u00e4lja. Probleemid kuhjuvad, kuni need \u00fchel p\u00e4eval \"laskuvad\" tootmisse. Siis korraldatakse tagasiside \u00fclevaade, kontrollitakse ja parandatakse konfiguratsioone. Ja ts\u00fckkel kordub j\u00e4lle. <\/p>\n<p>Ja muidugi kiirusime serverite k\u00e4ivitamist p\u00e4evi mitme tunni v\u00f5rra.<\/p>\n<p>Ja uue aasta \u00f6\u00f6l, kui lapsed r\u00f5\u00f5muh\u00f5isetega avasid kingitusi ja t\u00e4iskasvanud soovisid kellal\u00f6\u00f6giga soovida, migreerisid meie insenerid SAP-s\u00fcsteemi uutele serveritele. Isegi J\u00f5uluvana \u00fctleb, et parimad imed on h\u00e4sti ette valmistatud. <\/p>\n<p>P.S. Meie meeskond seisab sageli silmitsi sellega, et kliendid soovivad konfiguratsioonihalduse \u00fclesande v\u00f5imalikult lihtsalt lahendada. Ideaalis nagu maagia \u2014 \u00fche t\u00f6\u00f6riistaga. Kuid elus on k\u00f5ik keerulisem (jah, j\u00e4lle ei saadetud h\u00f5bedasi kuulikesi): tuleb luua terve protsess, kasutades kliendi meeskonnale mugavaid t\u00f6\u00f6riistu.<\/p>\n<p><i>Autor: Sergei Artemov, osakonna arhitekt <\/i><noindex><a rel=\"nofollow\" href=\"https:\/\/portal.jet.su\/about\/company\/structure\/?set_filter_structure=Y&amp;structure_UF_DEPARTMENT=56656\"><i>DevOps-lahendused<\/i><\/a><\/noindex><i> \u00abInfos\u00fcsteemid Jet\u00bb<\/i><br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/jetinfosystems\/blog\/513132\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0414\u0435\u043b\u043e \u0431\u043b\u0438\u0437\u0438\u043b\u043e\u0441\u044c \u043a \u041d\u043e\u0432\u043e\u043c\u0443 \u0433\u043e\u0434\u0443. \u0414\u0435\u0442\u0438 \u0432\u0441\u0435\u0439 \u0441\u0442\u0440\u0430\u043d\u044b \u0443\u0436\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u043b\u0438 \u043f\u0438\u0441\u044c\u043c\u0430 \u0414\u0435\u0434\u0443 \u041c\u043e\u0440\u043e\u0437\u0443 \u0438\u043b\u0438 \u0437\u0430\u0433\u0430\u0434\u0430\u043b\u0438 \u0441\u0435\u0431\u0435 \u043f\u043e\u0434\u0430\u0440\u043a\u0438, \u0430 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c \u2014 \u043e\u0434\u0438\u043d \u0438\u0437 \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u0440\u0438\u0442\u0435\u0439\u043b\u0435\u0440\u043e\u0432 \u2014 \u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0441\u044f \u043a \u0430\u043f\u043e\u0444\u0435\u043e\u0437\u0443 \u043f\u0440\u043e\u0434\u0430\u0436. \u0412 \u0434\u0435\u043a\u0430\u0431\u0440\u0435 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 \u0435\u0433\u043e \u0426\u041e\u0414 \u0432\u044b\u0440\u0430\u0441\u0442\u0430\u0435\u0442 \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f \u0440\u0435\u0448\u0438\u043b\u0430 \u043c\u043e\u0434\u0435\u0440\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440 \u0438 \u0432\u0432\u0435\u0441\u0442\u0438 \u0432 \u0441\u0442\u0440\u043e\u0439 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 \u043d\u043e\u0432\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432\u043c\u0435\u0441\u0442\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":90387,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-90386","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0414\u0435\u043b\u043e \u0431\u043b\u0438\u0437\u0438\u043b\u043e\u0441\u044c \u043a \u041d\u043e\u0432\u043e\u043c\u0443 \u0433\u043e\u0434\u0443. \u0414\u0435\u0442\u0438 \u0432\u0441\u0435\u0439 \u0441\u0442\u0440\u0430\u043d\u044b \u0443\u0436\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u043b\u0438 \u043f\u0438\u0441\u044c\u043c\u0430 \u0414\u0435\u0434\u0443 \u041c\u043e\u0440\u043e\u0437\u0443 \u0438\u043b\u0438 \u0437\u0430\u0433\u0430\u0434\u0430\u043b\u0438 \u0441\u0435\u0431\u0435 \u043f\u043e\u0434\u0430\u0440\u043a\u0438, \u0430 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c \u2014 \u043e\u0434\u0438\u043d \u0438\u0437 \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u0440\u0438\u0442\u0435\u0439\u043b\u0435\u0440\u043e\u0432 \u2014 \u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0441\u044f \u043a \u0430\u043f\u043e\u0444\u0435\u043e\u0437\u0443 \u043f\u0440\u043e\u0434\u0430\u0436. \u0412 \u0434\u0435\u043a\u0430\u0431\u0440\u0435 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 \u0435\u0433\u043e \u0426\u041e\u0414 \u0432\u044b\u0440\u0430\u0441\u0442\u0430\u0435\u0442 \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f \u0440\u0435\u0448\u0438\u043b\u0430 \u043c\u043e\u0434\u0435\u0440\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440 \u0438 \u0432\u0432\u0435\u0441\u0442\u0438 \u0432 \u0441\u0442\u0440\u043e\u0439 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 \u043d\u043e\u0432\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432\u043c\u0435\u0441\u0442\u043e\" \/>\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\/triller-o-nastrojke-serverov-bez-chudes-s-configuration-management\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\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\u0422\u0440\u0438\u043b\u043b\u0435\u0440 \u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0431\u0435\u0437 \u0447\u0443\u0434\u0435\u0441 \u0441 Configuration Management | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0414\u0435\u043b\u043e \u0431\u043b\u0438\u0437\u0438\u043b\u043e\u0441\u044c \u043a \u041d\u043e\u0432\u043e\u043c\u0443 \u0433\u043e\u0434\u0443. \u0414\u0435\u0442\u0438 \u0432\u0441\u0435\u0439 \u0441\u0442\u0440\u0430\u043d\u044b \u0443\u0436\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u043b\u0438 \u043f\u0438\u0441\u044c\u043c\u0430 \u0414\u0435\u0434\u0443 \u041c\u043e\u0440\u043e\u0437\u0443 \u0438\u043b\u0438 \u0437\u0430\u0433\u0430\u0434\u0430\u043b\u0438 \u0441\u0435\u0431\u0435 \u043f\u043e\u0434\u0430\u0440\u043a\u0438, \u0430 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c \u2014 \u043e\u0434\u0438\u043d \u0438\u0437 \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u0440\u0438\u0442\u0435\u0439\u043b\u0435\u0440\u043e\u0432 \u2014 \u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0441\u044f \u043a \u0430\u043f\u043e\u0444\u0435\u043e\u0437\u0443 \u043f\u0440\u043e\u0434\u0430\u0436. \u0412 \u0434\u0435\u043a\u0430\u0431\u0440\u0435 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 \u0435\u0433\u043e \u0426\u041e\u0414 \u0432\u044b\u0440\u0430\u0441\u0442\u0430\u0435\u0442 \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f \u0440\u0435\u0448\u0438\u043b\u0430 \u043c\u043e\u0434\u0435\u0440\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440 \u0438 \u0432\u0432\u0435\u0441\u0442\u0438 \u0432 \u0441\u0442\u0440\u043e\u0439 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 \u043d\u043e\u0432\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432\u043c\u0435\u0441\u0442\u043e\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/triller-o-nastrojke-serverov-bez-chudes-s-configuration-management\" \/>\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-31T11:42:20+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-07-31T11:42:20+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\udd47Serverite seadistamise thriller ilma Configuration Managementi imejutudeta | ProHoster","description":"Aasta l\u00f5pp l\u00e4henes. Lapsed \u00fcle kogu riigi olid juba saatnud J\u00f5uluvana kirjad v\u00f5i olnud endale kingitusi soovinud, samas kui nende peamine t\u00e4itja \u2014 \u00fcks suuremaid jaem\u00fc\u00fcjaid \u2014 valmistus m\u00fc\u00fcgip\u00fcha apoteoosi jaoks. Detsembris kasvab tema andmekeskusele koormus mitu korda. Seet\u00f5ttu otsustas ettev\u00f5te andmekeskust moderniseerida ja k\u00e4ivitada mituk\u00fcmmend uut serverit asemele.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/triller-o-nastrojke-serverov-bez-chudes-s-configuration-management","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\u0422\u0440\u0438\u043b\u043b\u0435\u0440 \u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0431\u0435\u0437 \u0447\u0443\u0434\u0435\u0441 \u0441 Configuration Management | ProHoster","og:description":"\u0414\u0435\u043b\u043e \u0431\u043b\u0438\u0437\u0438\u043b\u043e\u0441\u044c \u043a \u041d\u043e\u0432\u043e\u043c\u0443 \u0433\u043e\u0434\u0443. \u0414\u0435\u0442\u0438 \u0432\u0441\u0435\u0439 \u0441\u0442\u0440\u0430\u043d\u044b \u0443\u0436\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u043b\u0438 \u043f\u0438\u0441\u044c\u043c\u0430 \u0414\u0435\u0434\u0443 \u041c\u043e\u0440\u043e\u0437\u0443 \u0438\u043b\u0438 \u0437\u0430\u0433\u0430\u0434\u0430\u043b\u0438 \u0441\u0435\u0431\u0435 \u043f\u043e\u0434\u0430\u0440\u043a\u0438, \u0430 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c \u2014 \u043e\u0434\u0438\u043d \u0438\u0437 \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u0440\u0438\u0442\u0435\u0439\u043b\u0435\u0440\u043e\u0432 \u2014 \u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0441\u044f \u043a \u0430\u043f\u043e\u0444\u0435\u043e\u0437\u0443 \u043f\u0440\u043e\u0434\u0430\u0436. \u0412 \u0434\u0435\u043a\u0430\u0431\u0440\u0435 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 \u0435\u0433\u043e \u0426\u041e\u0414 \u0432\u044b\u0440\u0430\u0441\u0442\u0430\u0435\u0442 \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f \u0440\u0435\u0448\u0438\u043b\u0430 \u043c\u043e\u0434\u0435\u0440\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440 \u0438 \u0432\u0432\u0435\u0441\u0442\u0438 \u0432 \u0441\u0442\u0440\u043e\u0439 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 \u043d\u043e\u0432\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432\u043c\u0435\u0441\u0442\u043e","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/triller-o-nastrojke-serverov-bez-chudes-s-configuration-management","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-31T11:42:20+00:00","article:modified_time":"2020-07-31T11:42:20+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"90386","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 12:52:34","updated":"2022-09-28 09:47:54"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/90386","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=90386"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/90386\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/90387"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=90386"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=90386"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=90386"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}