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).