Jednorazové zavedenie z obrazu neurobí z Pi zariadenie, ktoré sa dá znovu postaviť. Potrebujete malú množinu vstupov, ktoré môžete znova použiť: udržiavaný základ, deklarovanú konfiguráciu, trvalé údaje aplikácie a identitu zariadenia, ktorá patrí len tejto doske. Ak vynecháte poslednú, každá výmena sa stane klonom prihlasovacích údajov.

Kroky nižšie sú poradím práce, nie odporúčaním nástroja. Postačí akýkoľvek konfiguračný systém, ktorý ich dokáže vyjadriť.

Najprv vypíšte štyri druhy vstupov

Základný obraz a jeho balíčky určujú operačný systém, architektúru a odkiaľ prichádzajú aktualizácie, a tvorba obrazov pomáha len vtedy, ak nástroj, ktorý uvádza, je pre vaše vydanie stále udržiavaný. Deklarovaná konfigurácia je časť, ktorú kontroluje človek: sieťové roly, nastavenia služieb a akcie životného cyklu, ktoré každá služba potrebuje. Trvalé údaje aplikácie sú všetko, čo služba nedokáže znova vytvoriť, a ich umiestnenie a spôsob zálohovania patria tejto aplikácii, nie obrazu. Identity zariadení a tajomstvá sú štvrtým vstupom, a práve na ne ľudia zabúdajú, keď klonujú funkčnú kartu.

Napíšte tie štyri zoznamy, skôr než čokoľvek postavíte znova. Zoznam s prázdnym riadkom je rozhodnutie, ktoré ste ešte neprijali.

Držte tajomstvá mimo repozitára a povedzte, kde žijú

Repozitár je dobrý domov pre skontrolované šablóny a ne-tajné konfigurácie a zlý domov pre súkromné kľúče VPN, opakovane použiteľné administrátorské údaje a diagnostické archívy. Ak tajomstvo musí existovať na zariadení, zaznamenajte, odkiaľ pochádza, kto ho môže čítať a ako sa rotuje. Kľúč, ktorý žije len na jednej SD karte, je jediný bod zlyhania, kým kľúč skopírovaný na každú dosku je prihlasovací údaj celej flotily bez vlastníka. Ani jedno nie je plán obnovy.

Test je jednoduchý: ak by repozitár zajtra unikol, čo by útočník získal? Šablóny a poznámky k topológii prežijú. Fungujúca identita nie.

Nechajte automatizáciu vlastniť to, čo dokáže spustiť znova

Model Ansible drží inventár spravovaných uzlov oddelene od hier, úloh, rolí a handlerov, ktoré sa spustia, keď úloha ohlási zmenu. Použite túto štruktúru, aby ste dali každej službe jedného vlastníka konfigurácie namiesto prehrávania histórie shellu. Uprednostňujte operácie bezpečné na dvojité spustenie a vedome rozhodnite, ako sa zmenený súbor dostane do bežiaceho procesu. Úloha, ktorá zabezpečí spustenie služby, ju nemusí prinútiť znova načítať konfiguráciu, ktorú ste práve prepísali.

Oddeľte aj fázy správy. Počiatočná konektivita, rutinná konfigurácia a správa závislá od VPN sú tri rôzne okná a tretie vám môže odobrať vlastný prístup, ak prestavba resetuje sieť pod ním. Zachovajte si nezávislú cestu dnu.

Obnovte údaje a identitu zámerne

Zväzky kontajnerov pretrvávajú nezávisle od životného cyklu kontajnera, kým zapisovateľná vrstva vnútri kontajnera nie, a preto znovuvytvorenie kontajnera z jeho obrazu neobnoví stav, ktorý aplikácia používala, ako opisuje dokumentácia k zväzkom. Zaznamenajte zväzky, prípojné body a externé služby, na ktorých zariadenie závisí, a použite vlastný proces zálohovania a obnovy aplikácie. Kontajner, ktorý sa spustí bez chyby, nie je dôkazom, že jeho databáza a súbory si zodpovedajú.

Pri identite rozhodnite, či obnovujete to isté zariadenie alebo registrujete náhradu, pretože to sú rôzne operácie s rôznym čistením.

Zosúlaďte prístup starého partnera, skôr než aktivujete identitu inde, a až potom otestujte prestavané zariadenie v izolovanom alebo obnovovacom prostredí. Skontrolujte potrebné údaje, správnu identitu, cestu aktualizácie s vlastníkom a zamýšľanú sieťovú politiku.

Spustiteľný obraz je jeden zo štyroch vstupov a je najľahšie reprodukovateľný.

Súvisiace články