Automatizace platforem a DevOps pro AKS
Jako konstruktor nativní pro cloud vyžaduje Kubernetes přístup nativní pro cloud k nasazení a operacím. Azure a Kubernetes jsou otevřené a rozšiřitelné platformy s bohatými a dobře navrženými rozhraními API, které poskytují příležitost a možnost automatizovat v plném rozsahu. Naplánujte devOps a vysoce automatizovaný přístup tím, že se spoléháte na automatizaci a obecné osvědčené postupy DevOps.
Aspekty návrhu
Tady je několik aspektů návrhu pro automatizaci platformy AKS a DevOps:
Při určování přístupu k technikům a automatizaci zvažte omezení služeb Azure a prostředí kontinuální integrace a průběžného doručování (CI/CD). Další příklad najdete v omezeních využití GitHubu.
Při zabezpečení a ochraně přístupu k vývojovým, testovacím, Q&A a produkčním prostředím zvažte možnosti zabezpečení z hlediska CI/CD. Nasazení se provádí automaticky, takže řízení přístupu mapuje odpovídajícím způsobem.
Zvažte použití předpon a přípon s dobře definovanými konvencemi k jednoznačné identifikaci každého nasazeného prostředku. Tyto zásady vytváření názvů se vyhýbají konfliktům při nasazování řešení vedle sebe a zlepšují celkovou flexibilitu a propustnost týmu.
Inventarizace pracovních postupů pro podporu přípravy, aktualizace a nasazení řešení v normálních režimech plánu zotavení po havárii (DRP). Zvažte mapování kanálů podle těchto pracovních postupů a maximalizujte znalosti a produktivitu.
Mezi příklady scénářů a kanálů, které je potřeba vzít v úvahu, patří:
- Nasazení, opravy a upgrade clusterů
- Nasazení a upgrade aplikací
- Nasazení a údržba doplňků
- Převzetí služeb při selhání pro zotavení po havárii
- Nasazení s modrou zelenou barvou
- Údržba kanárských prostředí
Zvažte použití sítě služeb k přidání dalších možností zabezpečení, šifrování a protokolů do vašich úloh.
Zvažte nasazení dalších prostředků, jako jsou předplatná, označování a popisky, které podporují prostředí DevOps sledováním a trasováním nasazení a souvisejících artefaktů.
Zvažte dopad posunu dobytka a domácích zvířat . Očekáváte, že pody a další aspekty Kubernetes budou dočasné a odpovídajícím způsobem zarovnají vaši automatizaci a infrastrukturu kanálů. Nespoléhejte na pevné nebo trvalé IP adresy ani jiné prostředky.
Doporučení k návrhu
Tady je několik doporučení pro návrh pro automatizaci platformy AKS a DevOps:
Při závislosti na kanálech nebo akcích:
- Maximalizujte použité postupy napříč týmem.
- Odstraňte velkou část zátěže při opětovném vynalézání kola.
- Poskytuje předvídatelnost a přehledy v celkové kvalitě a flexibilitě.
Nasaďte je včas a často pomocí kanálů založených na triggerech a plánovaných kanálech. Kanály založené na triggerech zajišťují, že změny procházejí správným ověřením, zatímco naplánované kanály spravují chování v měnících se prostředích.
Oddělte nasazení infrastruktury od nasazení aplikace. Základní infrastruktura se mění méně než aplikace. Každý typ nasazení považujete za samostatný tok a kanál.
Nasazení s využitím možností nativních pro cloud Infrastrukturu můžete použít jako kód k nasazení infrastruktury včetně řídicí roviny a použití modelu Helm a operátora v Kubernetes k nasazení a údržbě nativních komponent Kubernetes.
Pomocí GitOps nasaďte a spravujte aplikace. GitOps používá úložiště Git jako jediný zdroj pravdy, zabraňuje posunu konfigurace a zvyšuje produktivitu a spolehlivost při vracení zpět a souvisejících procedurách.
K ochraně tajných kódů, certifikátů a připojovací řetězec použijte identity spravované pody a zprostředkovatele služby Azure Key Vault pro ovladač CSI úložiště tajných kódů.
Snažte se dosáhnout maximalizované souběžnosti nasazení tím, že se vyhnete pevně zakódovaným položkám konfigurace a nastavením.
Spoléhají na dobře známé konvence napříč infrastrukturou a nasazeními souvisejícími s aplikacemi. Pomocí kontrolerů přístupu v kombinaci s doplňkem Azure Policy pro Kubernetes můžete ověřovat a vynucovat konvence mezi ostatními definovanými zásadami.
Obejmout posun doleva konzistentně s:
- Zabezpečení přidáním nástrojů pro kontrolu ohrožení zabezpečení, jako je kontrola kontejnerů v rané fázi kanálu
- Zásady se používají jako kód a vynucují zásady nativním cloudem prostřednictvím kontrolerů přístupu.
Zacházejte s každým selháním, chybou nebo výpadkem jako s příležitostí automatizovat a zlepšit celkovou kvalitu řešení. Tento přístup můžete integrovat do architektury SRE (Shift Left) a SRE (Site Reliability Engineering).