{"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\/hu\/blog\/administrirovanie\/triller-o-nastrojke-serverov-bez-chudes-s-configuration-management","title":{"rendered":"Thriller a szerverek be\u00e1ll\u00edt\u00e1s\u00e1r\u00f3l, csod\u00e1k n\u00e9lk\u00fcl a Configuration Management seg\u00edts\u00e9g\u00e9vel","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>A dolog a Kar\u00e1csonyhoz k\u00f6zeledett. Az orsz\u00e1g gyerekei m\u00e1r elk\u00fcldt\u00e9k leveleiket a Mikul\u00e1snak, vagy meglepet\u00e9seket terveztek maguknak, m\u00edg a f\u0151szerepl\u0151j\u00fck \u2013 az egyik nagy kiskeresked\u0151 \u2013 a v\u00e1s\u00e1rl\u00e1si cs\u00facsra k\u00e9sz\u00fclt. Decemberben a c\u00e9g adatk\u00f6zpontj\u00e1ra az \u00e1tlagosn\u00e1l sokkal nagyobb terhel\u00e9s nehezedik. Ez\u00e9rt a v\u00e1llalat \u00fagy d\u00f6nt\u00f6tt, hogy moderniz\u00e1lja az adatk\u00f6zpontj\u00e1t, \u00e9s t\u00f6bb tucat \u00faj szervert \u00e1ll\u00edt \u00fczembe a megfogyatkozott \u00e9lettartam\u00fa berendez\u00e9sek helyett. Ezzel a h\u00f3pelyhek k\u00f6rforg\u00e1s\u00e1nak hangulata z\u00e1rul, \u00e9s megkezd\u0151dik a thriller. <\/p>\n<p><img decoding=\"async\" alt=\"Thriller a szerverek be\u00e1ll\u00edt\u00e1s\u00e1r\u00f3l, csod\u00e1k n\u00e9lk\u00fcl a Configuration Management seg\u00edts\u00e9g\u00e9vel\" src=\"\/wp-content\/uploads\/2020\/07\/ebc2128d73e9a0e7f1e383b4b04ee492.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nA berendez\u00e9s h\u00f3napokkal a v\u00e1s\u00e1rl\u00e1si cs\u00facs el\u0151tt \u00e9rkezett a helysz\u00ednre. A m\u0171szaki szolg\u00e1ltat\u00e1s term\u00e9szetesen pontosan tudja, hogyan kell be\u00e1ll\u00edtani a szervereket, hogy azokat produkci\u00f3s k\u00f6rnyezetbe illeszthess\u00e9k. De nek\u00fcnk ezt automatiz\u00e1lnunk kellett, \u00e9s ki kellett z\u00e1rnunk az emberi t\u00e9nyez\u0151t is. Ezenk\u00edv\u00fcl a szerverek a SAP rendszerek migr\u00e1ci\u00f3ja el\u0151tt v\u00e1ltott\u00e1k fel egym\u00e1st, amelyek kritikus fontoss\u00e1g\u00faak a c\u00e9g sz\u00e1m\u00e1ra. <\/p>\n<p>Az \u00faj szerverek \u00fczembe helyez\u00e9se szorosan kapcsol\u00f3dott a hat\u00e1rid\u0151h\u00f6z. A hat\u00e1rid\u0151 eltol\u00e1sa a milli\u00e1rd aj\u00e1nd\u00e9k kisz\u00e1ll\u00edt\u00e1s\u00e1nak \u00e9s a rendszerek migr\u00e1ci\u00f3j\u00e1nak vesz\u00e9lyeztet\u00e9s\u00e9t jelentette. A d\u00e1tumot m\u00e9g a Mikul\u00e1s csapata sem tudta volna megv\u00e1ltoztatni \u2014 a rakt\u00e1rkezel\u0151 SAP rendszer\u00e9nek \u00e1tk\u00f6lt\u00f6ztet\u00e9s\u00e9t \u00e9vente egyszer lehet csak elv\u00e9gezni. December 31-\u00e9n \u00e9s janu\u00e1r 1-j\u00e9n a kiskeresked\u0151 hatalmas rakt\u00e1rai, \u00f6sszesen 20 focip\u00e1ly\u00e1nyi ter\u00fcleten, 15 \u00f3r\u00e1ra le\u00e1ll\u00edtj\u00e1k m\u0171k\u00f6d\u00e9s\u00fcket. Ez a migr\u00e1ci\u00f3s id\u0151szak egyed\u00fcli lehet\u0151s\u00e9ge. Nincs hib\u00e1z\u00e1si lehet\u0151s\u00e9g\u00fcnk az \u00faj szerverek \u00fczembe helyez\u00e9s\u00e9vel kapcsolatban. <\/p>\n<p>Azonnal tiszt\u00e1zom: a t\u00f6rt\u00e9netem olyan eszk\u00f6z\u00f6kr\u0151l \u00e9s konfigur\u00e1ci\u00f3kezel\u00e9si folyamatokr\u00f3l sz\u00f3l, amelyeket a csapatunk alkalmaz.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nA konfigur\u00e1ci\u00f3kezel\u00e9si komplexum t\u00f6bb szintb\u0151l \u00e1ll. A kulcselem a CMS-rendszer. Ipari haszn\u00e1lat eset\u00e9n az egyik szint hi\u00e1nya elker\u00fclhetetlen\u00fcl kellemetlen csod\u00e1khoz vezetett volna.<\/p>\n<h1>Az oper\u00e1ci\u00f3s rendszerek telep\u00edt\u00e9s\u00e9nek kezel\u00e9se<\/h1>\n<p>\nAz els\u0151 szint az oper\u00e1ci\u00f3s rendszerek telep\u00edt\u00e9s\u00e9nek kezel\u0151 rendszere fizikai \u00e9s virtu\u00e1lis szerverekre. Ez l\u00e9trehozza az oper\u00e1ci\u00f3s rendszerek alap konfigur\u00e1ci\u00f3it, kik\u00fcsz\u00f6b\u00f6lve az emberi t\u00e9nyez\u0151t. <\/p>\n<p>Ezzel a rendszerrel alapt\u00edpus\u00fa, automatiz\u00e1l\u00e1sra alkalmas p\u00e9ld\u00e1nyokat kaptunk az oper\u00e1ci\u00f3s rendszerekkel rendelkez\u0151 szerverekb\u0151l. A \"ki\u00f6nt\u00e9s\" sor\u00e1n minim\u00e1lis helyi felhaszn\u00e1l\u00f3i k\u00e9szletet \u00e9s nyilv\u00e1nos SSH-kulcsokat kaptak, valamint a konzisztensebb oper\u00e1ci\u00f3s rendszerkonfigur\u00e1ci\u00f3t. Garant\u00e1ltan tudtuk kezelni a szervereket egy CMS-en kereszt\u00fcl, \u00e9s biztosak voltunk abban, hogy az oper\u00e1ci\u00f3s rendszer szintj\u00e9n nincsenek meglepet\u00e9sek. <\/p>\n<p>A telep\u00edt\u00e9si rendszer \"maximum\" feladata az, hogy automatikusan konfigur\u00e1lja a szervereket a BIOS \/ Firmware szintj\u00e9t\u0151l az oper\u00e1ci\u00f3s rendszerig. Sok minden itt a hardvert\u0151l \u00e9s a konfigur\u00e1l\u00e1si feladatokt\u00f3l f\u00fcgg. Heterog\u00e9n hardverek eset\u00e9n \u00e9rdemes megfontolni. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.dmtf.org\/standards\/redfish\">REDFISH API<\/a><\/noindex>. Ha az \u00f6sszes \"hardver\" egy gy\u00e1rt\u00f3t\u00f3l sz\u00e1rmazik, akkor gyakran k\u00e9nyelmesebb haszn\u00e1lni a k\u00e9sz kezel\u00e9si eszk\u00f6z\u00f6ket (p\u00e9ld\u00e1ul HP ILO Amplifier, DELL OpenManage stb.).<\/p>\n<p>Fizikai szerverek oper\u00e1ci\u00f3s rendszer\u00e9nek telep\u00edt\u00e9s\u00e9re j\u00f3l ismert Cobbler-t haszn\u00e1ltuk, amelyben a telep\u00edt\u00e9si profilok egy meghat\u00e1rozott k\u00e9szlete tal\u00e1lhat\u00f3, amelyeket az \u00fczemeltet\u00e9s szolg\u00e1ltat\u00e1sa j\u00f3v\u00e1hagyott. Amikor \u00faj szervert adtak hozz\u00e1 az infrastrukt\u00far\u00e1hoz, a m\u00e9rn\u00f6k \u00f6sszekapcsolta a szerver MAC-c\u00edm\u00e9t a Cobblerben a sz\u00fcks\u00e9ges profillal. Az els\u0151 h\u00e1l\u00f3zati ind\u00edt\u00e1skor a szerver \u00e1tmeneti c\u00edmet \u00e9s \u00faj oper\u00e1ci\u00f3s rendszert kapott. Ezt k\u00f6vet\u0151en \u00e1thelyezt\u00e9k a c\u00e9l VLAN \/ IP-c\u00edmez\u00e9sbe \u00e9s ott folytatt\u00e1k a munk\u00e1t. Igen, a VLAN v\u00e1ltoztat\u00e1s id\u0151t von el \u00e9s egyeztet\u00e9st ig\u00e9nyel, de ez\u00e1ltal tov\u00e1bbi v\u00e9delmet ny\u00fajt a szerver v\u00e9letlen telep\u00edt\u00e9se ellen a production k\u00f6rnyezetben.<\/p>\n<p>Virtu\u00e1lis szervereket a HashiCorp Packer seg\u00edts\u00e9g\u00e9vel elk\u00e9sz\u00edtett sablonok alapj\u00e1n hoztunk l\u00e9tre. Az ok ugyanaz volt: hogy megakad\u00e1lyozzuk az oper\u00e1ci\u00f3s rendszer telep\u00edt\u00e9se sor\u00e1n esetlegesen elk\u00e9pzelhet\u0151 emberi hib\u00e1kat. De a fizikai szerverekkel ellent\u00e9tben a Packer lehet\u0151v\u00e9 teszi a PXE, a h\u00e1l\u00f3zati ind\u00edt\u00e1s \u00e9s a VLAN v\u00e1lt\u00e1s elker\u00fcl\u00e9s\u00e9t. Ez megk\u00f6nny\u00edtette \u00e9s egyszer\u0171s\u00edtette a virtu\u00e1lis szerverek l\u00e9trehoz\u00e1s\u00e1t. <\/p>\n<p><img decoding=\"async\" alt=\"Thriller a szerverek be\u00e1ll\u00edt\u00e1s\u00e1r\u00f3l, csod\u00e1k n\u00e9lk\u00fcl a Configuration Management seg\u00edts\u00e9g\u00e9vel\" src=\"\/wp-content\/uploads\/2020\/07\/8cde23a4ad2ba1573bc88ec174bfe6b5.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>1. \u00e1bra. Oper\u00e1ci\u00f3s rendszerek telep\u00edt\u00e9s\u00e9nek kezel\u00e9se.<\/i><\/p>\n<h1>Titkok kezel\u00e9se<\/h1>\n<p>\nB\u00e1rmely konfigur\u00e1ci\u00f3kezel\u0151 rendszer olyan adatokat tartalmaz, amelyek el\u0151l a norm\u00e1l felhaszn\u00e1l\u00f3k sz\u00e1m\u00e1ra rejtve kell maradniuk, de sz\u00fcks\u00e9gesek a rendszerek el\u0151k\u00e9sz\u00edt\u00e9s\u00e9hez. Ide tartoznak a helyi felhaszn\u00e1l\u00f3k \u00e9s szolg\u00e1ltat\u00e1si fi\u00f3kok jelszavai, tan\u00fas\u00edtv\u00e1nykulcsok, k\u00fcl\u00f6nf\u00e9le API Tokenek stb. \u00c1ltal\u00e1ban \"titkoknak\" nevezik \u0151ket.<\/p>\n<p>Ha eleve nem hat\u00e1rozzuk meg, hol \u00e9s hogyan t\u00e1roljuk ezeket a titkokat, az inform\u00e1ci\u00f3biztons\u00e1gi k\u00f6vetelm\u00e9nyek szigor\u00e1t\u00f3l f\u00fcgg\u0151en val\u00f3sz\u00edn\u0171, hogy az al\u00e1bbi t\u00e1rol\u00e1si m\u00f3dok lehets\u00e9gesek:<\/p>\n<ul>\n<li>k\u00f6zvetlen\u00fcl a konfigur\u00e1ci\u00f3s vez\u00e9rl\u0151k\u00f3dba vagy a t\u00e1rol\u00f3f\u00e1jlokba;<\/li>\n<li>speci\u00e1lis konfigur\u00e1ci\u00f3kezel\u0151 eszk\u00f6z\u00f6kben (p\u00e9ld\u00e1ul Ansible Vault);<\/li>\n<li>CI\/CD rendszerekben (Jenkins\/TeamCity\/GitLab\/stb.) vagy konfigur\u00e1ci\u00f3kezel\u0151 rendszerekben (Ansible Tower\/Ansible AWX);<\/li>\n<li>a titkokat 'k\u00e9zi kezel\u00e9s' \u00fatj\u00e1n is \u00e1t lehet adni. P\u00e9ld\u00e1ul megosztj\u00e1k egy el\u0151re meg\u00e1llap\u00edtott helyen, majd a konfigur\u00e1ci\u00f3kezel\u0151 rendszerek haszn\u00e1lj\u00e1k \u0151ket;<\/li>\n<li>a fent eml\u00edtettek k\u00fcl\u00f6nb\u00f6z\u0151 kombin\u00e1ci\u00f3i.<\/li>\n<\/ul>\n<p>\nMinden m\u00f3dszernek megvannak a h\u00e1tr\u00e1nyai. A f\u0151 probl\u00e9ma a hozz\u00e1f\u00e9r\u00e9si politik\u00e1k hi\u00e1nya a titkokhoz: nem lehet vagy neh\u00e9z meghat\u00e1rozni, ki haszn\u00e1lhatja a k\u00fcl\u00f6nb\u00f6z\u0151 titkokat. Egy m\u00e1sik h\u00e1tr\u00e1ny a hozz\u00e1f\u00e9r\u00e9s audittal \u00e9s a teljes \u00e9letciklus hi\u00e1nya. Milyen gyorsan lehet p\u00e9ld\u00e1ul helyettes\u00edteni egy nyilv\u00e1nos kulcsot, amely a k\u00f3dban \u00e9s sz\u00e1mos kapcsol\u00f3d\u00f3 rendszerben van megadva?<\/p>\n<p>K\u00f6zpontos\u00edtott titokt\u00e1rol\u00f3t haszn\u00e1ltunk, HashiCorp Vault. Ez lehet\u0151v\u00e9 tette sz\u00e1munkra: <\/p>\n<ul>\n<li>a titkok biztons\u00e1gos t\u00e1rol\u00e1s\u00e1t. Ezek titkos\u00edtva vannak, \u00e9s m\u00e9g ha valaki hozz\u00e1 is f\u00e9r a Vault adatt\u00e1rol\u00f3j\u00e1hoz (p\u00e9ld\u00e1ul egy biztons\u00e1gi ment\u00e9sb\u0151l helyre\u00e1ll\u00edtva), nem fogja tudni elolvasni a t\u00e1rolt titkokat; <\/li>\n<li>a titkokhoz val\u00f3 hozz\u00e1f\u00e9r\u00e9si politik\u00e1k megszervez\u00e9s\u00e9t. A felhaszn\u00e1l\u00f3k \u00e9s alkalmaz\u00e1sok csak az 'oda\u00edt\u00e9lt' titkokhoz f\u00e9rhetnek hozz\u00e1;<\/li>\n<li>a titkokhoz val\u00f3 hozz\u00e1f\u00e9r\u00e9s audit\u00e1l\u00e1s\u00e1t. A titkokkal kapcsolatos minden tev\u00e9kenys\u00e9get r\u00f6gz\u00edtenek a Vault auditnapl\u00f3j\u00e1ban;<\/li>\n<li>a titkokkal val\u00f3 teljes '\u00e9letciklus' m\u0171k\u00f6dtet\u00e9s\u00e9t. Ezeket l\u00e9tre lehet hozni, vissza lehet vonni, lej\u00e1rati id\u0151t lehet be\u00e1ll\u00edtani stb.<\/li>\n<li>k\u00f6nnyen integr\u00e1lhat\u00f3 m\u00e1s rendszerekkel, amelyeknek sz\u00fcks\u00e9g\u00fck van a titkokhoz val\u00f3 hozz\u00e1f\u00e9r\u00e9sre;<\/li>\n<li>\u00e9s alkalmazni lehet v\u00e9gpontt\u00f3l v\u00e9gpontig terjed\u0151 titkos\u00edt\u00e1st, egyszeri jelszavakat az oper\u00e1ci\u00f3s rendszerekhez \u00e9s adatb\u00e1zisokhoz, hiteles\u00edt\u0151 k\u00f6zpontok tan\u00fas\u00edtv\u00e1nyait stb. <\/li>\n<\/ul>\n<p>\nMost \u00e1tt\u00e9r\u00fcnk a k\u00f6zponti hiteles\u00edt\u00e9si \u00e9s enged\u00e9lyez\u00e9si rendszerre. Megoldhat\u00f3 lett volna n\u00e9lk\u00fcle is, de a felhaszn\u00e1l\u00f3k adminisztr\u00e1l\u00e1sa annyi kapcsol\u00f3d\u00f3 rendszerben nem trivi\u00e1lis. Hiteles\u00edt\u00e9st \u00e9s enged\u00e9lyez\u00e9st \u00e1ll\u00edtottunk be LDAP szolg\u00e1ltat\u00e1son kereszt\u00fcl. K\u00fcl\u00f6nben a Vault-ban folyamatosan ki kellett volna adni \u00e9s nyilv\u00e1ntartani a felhaszn\u00e1l\u00f3i hiteles\u00edt\u0151 tokeneket. A felhaszn\u00e1l\u00f3k hozz\u00e1ad\u00e1sa \u00e9s elt\u00e1vol\u00edt\u00e1sa pedig egy 'b\u00e1rhol l\u00e9trehoztam\/elt\u00e1vol\u00edtottam ezt a felhaszn\u00e1l\u00f3t?' k\u00fcldet\u00e9sbe torkolt volna. <\/p>\n<p>Hozz\u00e1adunk egy \u00faj szintet a rendszer\u00fcnkh\u00f6z: titkok kezel\u00e9se \u00e9s k\u00f6zponti hiteles\u00edt\u00e9s\/enged\u00e9lyez\u00e9s:<\/p>\n<p><img decoding=\"async\" alt=\"Thriller a szerverek be\u00e1ll\u00edt\u00e1s\u00e1r\u00f3l, csod\u00e1k n\u00e9lk\u00fcl a Configuration Management seg\u00edts\u00e9g\u00e9vel\" src=\"\/wp-content\/uploads\/2020\/07\/993e863417898c39940fe0bc9ee55b1e.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>\u00c1bra 2. Titkok kezel\u00e9se.<\/i><\/p>\n<h1>Konfigur\u00e1ci\u00f3kezel\u00e9s<\/h1>\n<p>\nEljutottunk a l\u00e9nyeghez \u2014 a CMS rendszerhez. A mi eset\u00fcnkben ez az Ansible \u00e9s a Red Hat Ansible AWX \u00f6sszekapcsol\u00e1sa. <\/p>\n<p>Az Ansible helyett v\u00e1laszthat\u00f3 m\u00e9g Chef, Puppet, vagy SaltStack is. Az Ansible-t t\u00f6bb szempont alapj\u00e1n v\u00e1lasztottuk. <\/p>\n<ul>\n<li>El\u0151sz\u00f6r is, az univerzalit\u00e1s. K\u00e9sz modulok sz\u00e9les v\u00e1laszt\u00e9ka \u00e1ll rendelkez\u00e9sre a kezel\u00e9shez, <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ansible.com\/ansible\/latest\/modules\/modules_by_category.html\">impon\u00e1l\u00f3.<\/a><\/noindex>. Ha esetleg hi\u00e1nyzik valami, akkor a GitHub-on \u00e9s a Galaxy-n is kereshet\u00fcnk. <\/li>\n<li>M\u00e1sodsorban, nem sz\u00fcks\u00e9ges \u00fcgyn\u00f6k\u00f6ket telep\u00edteni \u00e9s karbantartani a kezelt eszk\u00f6z\u00f6kre, bizonygatni, hogy nem zavarj\u00e1k a terhel\u00e9st, \u00e9s igazolni az \"elrejteget\u00e9s\" hi\u00e1ny\u00e1t. <\/li>\n<li>Harmadszor, az Ansible-nek alacsony a bel\u00e9p\u00e9si k\u00fcsz\u00f6be. Egy \u00fcgyes m\u00e9rn\u00f6k az els\u0151 munkanapj\u00e1n \u00edr egy m\u0171k\u00f6d\u0151 playbook-ot a term\u00e9kkel.<\/li>\n<\/ul>\n<p>\nDe az Ansible \u00f6nmag\u00e1ban nem volt elegend\u0151 az ipari k\u00f6rnyezetben. M\u00e1sk\u00fcl\u00f6nben sok probl\u00e9ma mer\u00fclt volna fel a hozz\u00e1f\u00e9r\u00e9s korl\u00e1toz\u00e1s\u00e1val \u00e9s az adminisztr\u00e1torok tev\u00e9kenys\u00e9g\u00e9nek audit\u00e1l\u00e1s\u00e1val. Hogyan lehet korl\u00e1tozni a hozz\u00e1f\u00e9r\u00e9st? Azt szerett\u00fck volna, hogy minden oszt\u00e1ly a \"saj\u00e1t\" szerver\u00e1llom\u00e1ny\u00e1t kezelje (\u00e9rtsd \u2014 elind\u00edtan\u00e1 az Ansible playbook-ot). Hogyan lehetne enged\u00e9lyezni egy adott Ansible playbook futtat\u00e1s\u00e1t csak bizonyos munkat\u00e1rsak sz\u00e1m\u00e1ra? Vagy hogyan lehet nyomon k\u00f6vetni, ki futtatta a playbook-ot an\u00e9lk\u00fcl, hogy sz\u00e1mos helyi felhaszn\u00e1l\u00f3i fi\u00f3kot kellene l\u00e9trehozni a szervereken \u00e9s az Ansible kezel\u00e9se alatt l\u00e9v\u0151 eszk\u00f6z\u00f6k\u00f6n?<\/p>\n<p>Az ilyen k\u00e9rd\u00e9sek t\u00falnyom\u00f3 t\u00f6bbs\u00e9g\u00e9re a Red Hat k\u00edn\u00e1l megold\u00e1st. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.ansible.com\/products\/tower\">Ansible Tower<\/a><\/noindex>, vagy annak ny\u00edlt forr\u00e1sk\u00f3d\u00fa upstream projektje, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ansible\/awx\">Ansible AWX<\/a><\/noindex>. Ez\u00e9rt is v\u00e1lasztottuk ezt az \u00fcgyf\u00e9l sz\u00e1m\u00e1ra. <\/p>\n<p>\u00c9s egy \u00fajabb r\u00e9szlet a CMS rendszer\u00fcnk portr\u00e9j\u00e1hoz. Az Ansible playbook-ot a k\u00f3dkezel\u0151 rendszerekben kell t\u00e1rolni. N\u00e1lunk ez <noindex><a rel=\"nofollow\" href=\"https:\/\/about.gitlab.com\/install\/\">GitLab CE<\/a><\/noindex>.<\/p>\n<p>Teh\u00e1t a konfigur\u00e1ci\u00f3kat az Ansible\/Ansible AWX\/GitLab p\u00e1ros kezeli (l\u00e1sd a 3. \u00e1br\u00e1t). Term\u00e9szetesen az AWX\/GitLab integr\u00e1lva van egy k\u00f6zponti hiteles\u00edt\u00e9si rendszerrel, az Ansible playbook pedig a HashiCorp Vault-tal. A konfigur\u00e1ci\u00f3k csak az Ansible AWX-en kereszt\u00fcl ker\u00fclnek a produkci\u00f3s k\u00f6rnyezetbe, ahol minden \"j\u00e1t\u00e9kszab\u00e1lyt\" meghat\u00e1rozott: ki \u00e9s mit konfigur\u00e1lhat, honnan szerezheti be a CMS-hez sz\u00fcks\u00e9ges k\u00f3dot stb.<\/p>\n<p><img decoding=\"async\" alt=\"Thriller a szerverek be\u00e1ll\u00edt\u00e1s\u00e1r\u00f3l, csod\u00e1k n\u00e9lk\u00fcl a Configuration Management seg\u00edts\u00e9g\u00e9vel\" src=\"\/wp-content\/uploads\/2020\/07\/f4f5b3904a2145d7283cd52f921bca89.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>3. \u00e1bra. Konfigur\u00e1ci\u00f3kezel\u00e9s.<\/i><\/p>\n<h1>Tesztel\u00e9s kezel\u00e9se<\/h1>\n<p>\nA konfigur\u00e1ci\u00f3nk k\u00f3d form\u00e1j\u00e1ban van megjelen\u00edtve. Ez\u00e9rt nek\u00fcnk is ugyanazt a szab\u00e1lyrendszert kell k\u00f6vetn\u00fcnk, mint a szoftverfejleszt\u0151knek. Szervezn\u00fcnk kellett a fejleszt\u00e9si, folyamatos tesztel\u00e9si, sz\u00e1ll\u00edt\u00e1si \u00e9s a konfigur\u00e1ci\u00f3s k\u00f3d alkalmaz\u00e1s\u00e1nak folyamat\u00e1t a produkci\u00f3s szervereken.<\/p>\n<p>Ha ezt nem csin\u00e1ljuk meg azonnal, a konfigur\u00e1l\u00e1shoz \u00edrt szerepek vagy m\u00e1r nem lenn\u00e9nek t\u00e1mogatva \u00e9s m\u00f3dos\u00edtva, vagy nem induln\u00e1nak el a production k\u00f6rnyezetben. A probl\u00e9ma gy\u00f3gym\u00f3dja ismert, \u00e9s bev\u00e1lt ebben a projektben:<\/p>\n<ul>\n<li>minden szerepet modul\u00e1ris tesztek fednek le;<\/li>\n<li>a teszteket automatikusan futtatj\u00e1k a k\u00f3dban bek\u00f6vetkez\u0151 b\u00e1rmilyen v\u00e1ltoz\u00e1skor, amely a konfigur\u00e1ci\u00f3kat ir\u00e1ny\u00edtja;<\/li>\n<li>a konfigur\u00e1ci\u00f3k kezel\u00e9s\u00e9re vonatkoz\u00f3 k\u00f3d m\u00f3dos\u00edt\u00e1sai csak az \u00f6sszes teszt \u00e9s a k\u00f3dellen\u0151rz\u00e9s sikeres teljes\u00edt\u00e9se ut\u00e1n ker\u00fclnek a production k\u00f6rnyezetbe.<\/li>\n<\/ul>\n<p>\nA k\u00f3d fejleszt\u00e9se \u00e9s a konfigur\u00e1ci\u00f3kezel\u00e9s nyugodtabb\u00e1 \u00e9s kisz\u00e1m\u00edthat\u00f3bb\u00e1 v\u00e1lt. A folyamatos tesztel\u00e9s megszervez\u00e9s\u00e9hez a GitLab CI\/CD eszk\u00f6zk\u00e9szletet haszn\u00e1ltuk, a tesztek megszervez\u00e9s\u00e9re pedig a k\u00f6vetkez\u0151t v\u00e1lasztottuk: <noindex><a rel=\"nofollow\" href=\"https:\/\/molecule.readthedocs.io\/en\/latest\/\">Ansible Molecule<\/a><\/noindex>.<\/p>\n<p>B\u00e1rmilyen m\u00f3dos\u00edt\u00e1s eset\u00e9n a konfigur\u00e1ci\u00f3k kezel\u00e9s\u00e9re vonatkoz\u00f3 k\u00f3dban a GitLab CI\/CD megh\u00edvja a Molecule-t: <\/p>\n<ul>\n<li>ez ellen\u0151rzi a k\u00f3d szintaxis\u00e1t, <\/li>\n<li>elind\u00edt egy Docker kont\u00e9nert, <\/li>\n<li>alkalmazza a m\u00f3dos\u00edtott k\u00f3dot a l\u00e9trehozott kont\u00e9nerbe, <\/li>\n<li>ellen\u0151rzi a szerepet idempotenci\u00e1ra, \u00e9s futtatja a teszteket a k\u00f3d sz\u00e1m\u00e1ra (itt a r\u00e9szletess\u00e9g az ansible szerep szintj\u00e9n van, l\u00e1sd 4. \u00e1bra).<\/li>\n<\/ul>\n<p>\nA production k\u00f6rnyezetbe konfigur\u00e1ci\u00f3kat az Ansible AWX seg\u00edts\u00e9g\u00e9vel juttattunk el. Az \u00fczemeltet\u00e9s\u00e9rt felel\u0151s m\u00e9rn\u00f6k\u00f6k el\u0151re meghat\u00e1rozott sablonokon kereszt\u00fcl alkalmazt\u00e1k a konfigur\u00e1ci\u00f3s v\u00e1ltoz\u00e1sokat. Az AWX minden alkalmaz\u00e1sn\u00e1l saj\u00e1t mag\u00e1t\u00f3l \"lek\u00e9rdezte\" az utols\u00f3 verzi\u00f3t a GitLab master \u00e1g\u00e1b\u00f3l. \u00cdgy kiz\u00e1rtuk a nem ellen\u0151rz\u00f6tt vagy elavult k\u00f3d haszn\u00e1lat\u00e1t a production k\u00f6rnyezetben. Term\u00e9szetesen a k\u00f3d csak a tesztel\u00e9s, \u00e1tn\u00e9z\u00e9s \u00e9s j\u00f3v\u00e1hagy\u00e1s ut\u00e1n ker\u00fclt a master \u00e1gba.<\/p>\n<p><img decoding=\"async\" alt=\"Thriller a szerverek be\u00e1ll\u00edt\u00e1s\u00e1r\u00f3l, csod\u00e1k n\u00e9lk\u00fcl a Configuration Management seg\u00edts\u00e9g\u00e9vel\" src=\"\/wp-content\/uploads\/2020\/07\/aa8f6205f05792a6a1120ad7360ab102.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>4. \u00e1bra. Szerepek automatikus tesztel\u00e9se a GitLab CI\/CD-ben.<\/i><\/p>\n<p>A production rendszerek \u00fczemeltet\u00e9s\u00e9vel kapcsolatosan m\u00e9g egy probl\u00e9ma is ad\u00f3dik. A val\u00f3s \u00e9letben nagyon neh\u00e9z a konfigur\u00e1ci\u00f3t csak a CMS k\u00f3dj\u00e1n kereszt\u00fcl megv\u00e1ltoztatni. Vannak v\u00e1ratlan helyzetek, amikor a m\u00e9rn\u00f6knek azonnal m\u00f3dos\u00edtania kell a konfigur\u00e1ci\u00f3t, nem v\u00e1rva a k\u00f3d m\u00f3dos\u00edt\u00e1s\u00e1t, tesztel\u00e9st, j\u00f3v\u00e1hagy\u00e1st stb.<\/p>\n<p>Ennek k\u00f6vetkezt\u00e9ben a k\u00e9zi m\u00f3dos\u00edt\u00e1sok miatt elt\u00e9r\u00e9sek jelennek meg az azonos t\u00edpus\u00fa berendez\u00e9seken (p\u00e9ld\u00e1ul az HA klaszter csom\u00f3pontjain k\u00fcl\u00f6nb\u00f6z\u0151 sysctl be\u00e1ll\u00edt\u00e1s konfigur\u00e1ci\u00f3). Vagy a val\u00f3s konfigur\u00e1ci\u00f3 a berendez\u00e9sen elt\u00e9r a CMS k\u00f3dj\u00e1ban megadottakt\u00f3l. <\/p>\n<p>Ez\u00e9rt a folyamatos tesztel\u00e9s mellett ellen\u0151rizz\u00fck a production k\u00f6rnyezeteket a konfigur\u00e1ci\u00f3k elt\u00e9r\u00e9seinek szempontj\u00e1b\u00f3l. A legk\u00f6nnyebb megold\u00e1st v\u00e1lasztottuk: a CMS konfigur\u00e1ci\u00f3s k\u00f3dj\u00e1nak futtat\u00e1sa \u201edry run\u201d m\u00f3dban, vagyis a m\u00f3dos\u00edt\u00e1sok alkalmaz\u00e1sa n\u00e9lk\u00fcl, de minden elt\u00e9r\u00e9sr\u0151l \u00e9rtes\u00edt\u00e9st adva a tervezett \u00e9s a val\u00f3s konfigur\u00e1ci\u00f3 k\u00f6z\u00f6tt. Ezt az Ansible playbook-ok rendszeres futtat\u00e1s\u00e1val val\u00f3s\u00edtottuk meg, a \u201e--check\u201d opci\u00f3val a production szervereken. A playbook m\u0171k\u00f6dtet\u00e9s\u00e9\u00e9rt \u00e9s aktualit\u00e1s\u00e1\u00e9rt, mint mindig, az Ansible AWX felel (l\u00e1sd: 5. \u00e1bra):<\/p>\n<p><img decoding=\"async\" alt=\"Thriller a szerverek be\u00e1ll\u00edt\u00e1s\u00e1r\u00f3l, csod\u00e1k n\u00e9lk\u00fcl a Configuration Management seg\u00edts\u00e9g\u00e9vel\" src=\"\/wp-content\/uploads\/2020\/07\/108a5a473f60ab76ee15f9334ebcbab7.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>5. \u00e1bra. A konfigur\u00e1ci\u00f3k elt\u00e9r\u00e9s\u00e9nek ellen\u0151rz\u00e9se az Ansible AWX-ben.<\/i><\/p>\n<p>Az AWX ellen\u0151rz\u00e9sek ut\u00e1n jelent\u00e9st k\u00fcld az elt\u00e9r\u00e9sekr\u0151l az adminisztr\u00e1toroknak. \u0150k tanulm\u00e1nyozz\u00e1k a probl\u00e9m\u00e1s konfigur\u00e1ci\u00f3t, majd a kijav\u00edtott playbook seg\u00edts\u00e9g\u00e9vel jav\u00edtj\u00e1k azt. \u00cdgy biztos\u00edtjuk, hogy a production k\u00f6rnyezet konfigur\u00e1ci\u00f3ja, illetve a CMS mindig aktu\u00e1lis \u00e9s szinkroniz\u00e1lt \u00e1llapotban legyen. Ez megszabad\u00edt benn\u00fcnket a kellemetlen \u201ecsod\u00e1kt\u00f3l\u201d, amikor a CMS k\u00f3dja a \u201e\u00e9les\u201d szervereken alkalmaz\u00e1sra ker\u00fcl.<\/p>\n<p>Most fontos tesztel\u00e9si szintet \u00e9rt\u00fcnk el, amely az Ansible AWX\/GitLab\/Molecule-b\u00f3l \u00e1ll (6. \u00e1bra).<\/p>\n<p><img decoding=\"async\" alt=\"Thriller a szerverek be\u00e1ll\u00edt\u00e1s\u00e1r\u00f3l, csod\u00e1k n\u00e9lk\u00fcl a Configuration Management seg\u00edts\u00e9g\u00e9vel\" src=\"\/wp-content\/uploads\/2020\/07\/f487f5603e90b0c753fb9decf9018b11.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>6. \u00e1bra. A tesztel\u00e9s kezel\u00e9se.<\/i><\/p>\n<p>Bonyolult? Nem vitatom. De ez a konfigur\u00e1ci\u00f3k kezel\u00e9s\u00e9re szolg\u00e1l\u00f3 komplex rendszer \u00e1tfog\u00f3 v\u00e1laszt ad a szerverek be\u00e1ll\u00edt\u00e1s\u00e1val kapcsolatos sz\u00e1mos k\u00e9rd\u00e9sre. Most a kiskeresked\u0151 tipikus szerverei mindig szigor\u00faan meghat\u00e1rozott konfigur\u00e1ci\u00f3val rendelkeznek. A CMS, ellent\u00e9tben az m\u00e9rn\u00f6kkel, nem fogja elfelejteni, hogy hozz\u00e1adja a sz\u00fcks\u00e9ges be\u00e1ll\u00edt\u00e1sokat, l\u00e9trehozza a felhaszn\u00e1l\u00f3kat, \u00e9s elv\u00e9gezze a sz\u00fcks\u00e9ges tucat vagy sz\u00e1z be\u00e1ll\u00edt\u00e1st.<\/p>\n<p>A szerverek \u00e9s k\u00f6rnyezetek be\u00e1ll\u00edt\u00e1saiban ma m\u00e1r nincsenek \u201etitkos tud\u00e1sok\u201d. Minden sz\u00fcks\u00e9ges saj\u00e1toss\u00e1got a playbook t\u00fckr\u00f6z. Nincs t\u00f6bb kreat\u00edv megold\u00e1s \u00e9s k\u00f6d\u00f6s instrukci\u00f3: \u201e<i>\u00e1ll\u00edtsd be mint egy hagyom\u00e1nyos Oracle-t, de ott p\u00e1r sysctl be\u00e1ll\u00edt\u00e1st fel kell t\u00fcntetni, \u00e9s a sz\u00fcks\u00e9ges UID-val rendelkez\u0151 felhaszn\u00e1l\u00f3kat hozz\u00e1adni. K\u00e9rdezd a m\u0171k\u00f6dtet\u0151 csapatot, \u0151k tudj\u00e1k.<\/i>\u00bb. <\/p>\n<p>A konfigur\u00e1ci\u00f3k elt\u00e9r\u00e9seinek \u00e9s azok el\u0151zetes kijav\u00edt\u00e1s\u00e1nak lehet\u0151s\u00e9ge megnyugtat\u00f3. A konfigur\u00e1ci\u00f3kezel\u0151 rendszer n\u00e9lk\u00fcl ez \u00e1ltal\u00e1ban m\u00e1sk\u00e9ppen n\u00e9z ki. A probl\u00e9m\u00e1k felhalmoz\u00f3dnak, am\u00edg egyszer csak \u201evisszav\u00e1gnak\u201d a production-ben. Ezut\u00e1n k\u00f6vetkezik a baleset elemz\u00e9se, a konfigur\u00e1ci\u00f3k ellen\u0151rz\u00e9se \u00e9s kijav\u00edt\u00e1sa. \u00c9s a ciklus \u00fajra kezd\u0151dik. <\/p>\n<p>\u00c9s term\u00e9szetesen felgyors\u00edtottuk a szerverek \u00fczembe helyez\u00e9s\u00e9t n\u00e9h\u00e1ny napr\u00f3l \u00f3r\u00e1kra.<\/p>\n<p>Az \u00faj\u00e9j \u00e9jszak\u00e1j\u00e1n, amikor a gyerekek boldogan bontogatt\u00e1k az aj\u00e1nd\u00e9kokat, \u00e9s a feln\u0151ttek k\u00edv\u00e1ns\u00e1gokat fogalmaztak meg a harangsz\u00f3 alatt, m\u00e9rn\u00f6keink migr\u00e1lt\u00e1k a SAP-rendszert az \u00faj szerverekre. M\u00e9g a Mikul\u00e1s is meger\u0151s\u00edtheti, hogy a legszebb csod\u00e1k j\u00f3l el\u0151k\u00e9sz\u00edtettek. <\/p>\n<p>P.S. Csapatunk gyakran tal\u00e1lkozik azzal, hogy az \u00fcgyfelek a lehet\u0151 legegyszer\u0171bben szeretn\u00e9k megoldani a konfigur\u00e1ci\u00f3kezel\u00e9s feladat\u00e1t. Ide\u00e1lis esetben, mintha var\u00e1zslatra lenne sz\u00fcks\u00e9g \u2014 egy eszk\u00f6zzel. De az \u00e9let bonyolultabb (igen, \u00fajra nem hozt\u00e1k a ez\u00fcstgoly\u00f3kat): egy eg\u00e9sz folyamatot kell l\u00e9trehozni az \u00fcgyf\u00e9lt\u00e1mogat\u00f3 eszk\u00f6z\u00f6k seg\u00edts\u00e9g\u00e9vel.<\/p>\n<p><i>Szerz\u0151: Szergej Artemov, az oszt\u00e1ly architektusa <\/i><noindex><a rel=\"nofollow\" href=\"https:\/\/portal.jet.su\/about\/company\/structure\/?set_filter_structure=Y&amp;structure_UF_DEPARTMENT=56656\"><i>DevOps megold\u00e1sok<\/i><\/a><\/noindex><i> Az Inf\u00f3sziszt\u00e9m\u00e1k Jet<\/i><br \/>\n<br \/>Forr\u00e1s: <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 5.0.3 - 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.\" \/>\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\/hu\/blog\/administrirovanie\/triller-o-nastrojke-serverov-bez-chudes-s-configuration-management\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"hu_HU\" \/>\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.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/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\udd47Thriller a szerverek be\u00e1ll\u00edt\u00e1s\u00e1r\u00f3l csod\u00e1k n\u00e9lk\u00fcl a Configuration Management-nek k\u00f6sz\u00f6nhet\u0151en | ProHoster","description":"Az \u00e9v v\u00e9ge k\u00f6zeledett. Az orsz\u00e1g gyerekei m\u00e1r elk\u00fcldt\u00e9k a leveleiket a Mikul\u00e1snak vagy megfogalmazt\u00e1k k\u00edv\u00e1ns\u00e1gaikat, m\u00edg a f\u0151 teljes\u00edt\u0151j\u00fck \u2014 az egyik nagyobb kiskeresked\u0151 \u2014 a v\u00e1s\u00e1rl\u00e1sok cs\u00facs\u00e1ra k\u00e9sz\u00fclt.","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/triller-o-nastrojke-serverov-bez-chudes-s-configuration-management","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","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.","og:url":"https:\/\/prohoster.info\/hu\/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","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/90386","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=90386"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/90386\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media\/90387"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=90386"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=90386"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=90386"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}