Byla vydána verze platformy pro orchestraci kontejnerů Kubernetes 1.24, která umožňuje řídit klastr izolovaných kontejnerů jako celek a poskytuje mechanismy pro nasazení, údržbu a škálování aplikací běžících v kontejnerech. Projekt byl původně vytvořen společností Google, ale poté byl převeden na nezávislou platformu spravovanou organizací Linux Foundation. Platforma je prezentována jako komunitně rozvíjené univerzální řešení, které není vázáno na konkrétní systémy a je schopné pracovat s libovolnými aplikacemi v jakémkoli cloudovém prostředí. Kód Kubernetes je napsán v programovacím jazyce Go a je distribuován pod licencí Apache 2.0.
Jsou poskytovány funkce pro nasazení a správu infrastruktury, jako je vedení DNS záznamů, vyvažování zátěže, distribuování kontejnerů po uzlech klastru (migrace kontejnerů v závislosti na změně zatížení a potřebám služeb), kontrola funkčnosti na úrovni aplikací, správa účtů, aktualizace a dynamické škálování běžícího klastru bez jeho zastavení. Je možné nasazení skupin kontejnerů s prováděním operací aktualizací a zrušení změn najednou pro celou skupinu, stejně jako logické rozdělení klastru na části s dělením prostředků. Podporována je dynamická migrace aplikací, u nichž mohou být použita jak místní úložiště, tak síťové systémy úložišť.
Klíčové změny v novém vydání:
- Byly stabilizovány prostředky pro sledování kapacity úložiště (Storage Capacity Tracking), které zajišťují monitorování volného místa v oddílech a předávají data na řídící uzel, aby se zabránilo spuštění podů na uzlech s nedostatečným volným místem.
- Byla stabilizována možnost rozšiřování oddílů úložiště. Uživatel může změnit velikost již existujících oddílů a Kubernetes automaticky bez zastavení provozu rozšíří oddíl a s ním související souborový systém.
- Byla ukončena dodávka runtime Dockershim, který byl označován jako dočasné řešení pro použití Dockeru v Kubernetes, které není kompatibilní se standardním rozhraním CRI (container runtime interface) a přináší dodatečné komplikace pro kubelet. Pro správu izolovaných kontejnerů by se měly používat runtime, které podporují rozhraní CRI, jako je containerd a CRI-O, nebo využít vrstvu cri-dockerd, která implementuje rozhraní CRI nad API Docker Engine.
- Byla poskytnuta experimentální podpora ověřování kontejnerových obrazů pomocí digitálních podpisů s využitím služby Sigstore, která vede veřejný protokol pro potvrzení autentičnosti (transparency log). Pro prevenci supply chain útoků a záměny komponentů bylo rovněž zajištěno podepisování digitálními podpisy artefaktů spojených s vydáním, včetně všech instalovaných spustitelných souborů Kubernetes.
- Ve shlucích bylo standardně ukončeno zapínání API, která jsou v beta verzi (testovací API přidaná v minulých verzích zůstávají zachována, změna se týká pouze nových API).
- Byla implementována testovací podpora formátu OpenAPI v3.
- Byla představena iniciativa na převod pluginů pro práci se skladovacími řešeními na unifikované rozhraní CSI (Container Storage Interface) s udržením kompatibility na úrovni API. Pluginy Azure Disk a OpenStack Cinder byly převedeny na CSI.
- Kubelet Credential Provider byl převeden do beta testování, což umožňuje dynamicky získávat uživatelské údaje pro repozitář kontejnerových obrazů pomocí spouštění pluginů, aniž by se uživatelské údaje ukládaly do souborového systému uzlu.
- Byla poskytnuta možnost rezervace IP adres pro přiřazení službám. Pokud je tato možnost povolena, bude shluk automaticky přidělovat službám pouze IP adres z předem vyhrazeného pro každý službu poolu, což umožňuje vyhnout se vzniku kolizí při přidělování volných adres z celkové sady.
Zdroj: opennet.ru
