Verze Kubernetes 1.18, systému pro správu clusterů izolovaných kontejnerů

Byl zveřejněn uvolnění platformy pro orchestraci kontejnerů Kubernetes 1.18, která umožňuje řídit cluster 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 podporovanou organizací Linux Foundation. Platforma je prezentována jako komunitní řešení, které není vázáno na konkrétní systémy a může fungovat s jakýmikoli aplikacemi v jakýchkoli cloudových prostředích. Kód Kubernetes je napsán v Go a distribuováno pod licencí Apache 2.0.

poskytuje funkce pro nasazení a správu infrastruktury, jako je správa DNS, vyvažování zátěže,
rozložení kontejnerů mezi uzly clusteru (migrování kontejnerů v závislosti na změnách zátěže a potřebách služeb), kontrola funkčnosti na úrovni aplikací, správa účtů, aktualizace a dynamické škálování běžícího clusteru bez jeho zastavení. Je možné nasazení skupin kontejnerů s prováděním operací aktualizací a vrácení změn najednou pro celou skupinu, stejně jako logické rozdělení clusteru na části s oddělením zdrojů. Podporována je dynamická migrace aplikací, pro ukládání jejich dat mohou být použity jak lokální úložiště, tak síťové úložné systémy.

Verze Kubernetes 1.18 obsahuje 38 změn a vylepšení, z nichž 15 bylo převedeno do stabilního stavu a 11 do beta stavu. 12 nových změn bylo navrženo v alfa stavu. Při přípravě nové verze byly veškeré úsilí zaměřeny jak na vylepšení různých funkcí a stabilizaci experimentálních možností, tak na přidání nových vývojů. Hlavní změny:

  • Kubectl
    • Byla přidána alfa-verze příkazu „kubectl debug“, který usnadňuje ladění v podech spuštěním efemérních kontejnerů s nástroji pro ladění.
    • Byla oznámena stabilní verze příkazu „kubectl diff“, který umožňuje zobrazit, co se změní v clusteru, pokud se použije manifest.
    • Byly odstraněny všechny generátory příkazu „kubectl run“, kromě generátoru pro spuštění jediného podu.
    • Změnili jsme flag „—dry-run“, v závislosti na jeho hodnotě (client, server a none) se zkušební provedení příkazu provádí na straně klienta nebo serveru.
    • Kód kubectl byl oddělen do samostatného repozitáře. To umožnilo oddělit kubectl od interních závislostí kubernetes a usnadnilo import kódu do externích projektů.
  • Ingress
    • Začalo změna skupiny API pro Ingress na networking.v1beta1.
    • Byly přidány nové řádky:
      • pathType, což umožňuje určit způsob, jakým bude cesta porovnávána v požadavku
      • IngressClassName — náhrada za anotaci kubernetes.io/ingress.class, která byla označena jako zastaralá. V tomto poli se uvádí název speciálního objektu IngressClass
    • Přidáno objekt IngressClass, ve kterém se uvádí název ingresses kontroléru, jeho další parametry a znak použití jako výchozí
  • Služba
    • Bylo přidáno pole AppProtocol, ve kterém lze uvést, jaký protokol používá aplikace
    • Byl převeden do stavu beta a zahrnut jako výchozí EndpointSlicesAPI, který je funkčnější náhradou za běžné Endpoints.
  • Síť
    • Podpora IPv6 byl převeden do stavu beta.
  • Trvalé disky. Byla označena za stabilní následující funkcionalita:
  • Konfigurace aplikace
    • Do objektů ConfigMap a Secret bylo přidáno nové pole „immutable“. Nastavení hodnoty tohoto pole na true zakazuje změnu objektu.
  • Plánovač
    • Byla přidána možnost vytvářet další profily pro kube-scheduler. Pokud bylo dříve nutné spouštět další samostatné plánovače pro implementaci nestandardních algoritmů rozdělování podů, nyní je možné vytvořit další sady nastavení pro standardní plánovač a uvést jeho název v poli podu „.spec.schedulerName“. Stav — alfa.
    • Taint Based Eviction byl označen za stabilní
  • Škálování
    • Byla přidána možnost uvést v manifestu HPA úroveň agresivity při změně počtu spuštěných podů, tedy při zvýšení zátěže spouštět okamžitě Nkrát více instancí.
  • Kubelet
    • Topology Manager obdržel status beta. Funkce zahrnuje NUMA rozložení, což umožňuje vyhnout se degradaci výkonu na vícenačelových systémech.
    • Status beta obdržela Funkce PodOverhead, která umožňuje v RuntimeClass specifikovat dodatečné množství zdrojů potřebných pro spuštění podu.
    • Rozšířena podpora HugePages, v alfa stavu byla přidána izolace na úrovni kontejneru a podpora více velikostí hugepages.
    • Odstraněn endpoint pro metriky /metrics/resource/v1alpha1, místo toho se používá /metrics/resource
  • API
    • Nakonec byla odstraněna možnost používat zastaralé API skupiny apps/v1beta1 a extensions/v1beta1.
    • ServerSide Apply byla zvýšena na beta2. Toto vylepšení přesouvá manipulaci s objekty z kubectl na API server. Autoři vylepšení tvrdit, že to povede k opravě mnoha existujících chyb, které není možné opravit v aktuální situaci. Také přidali sekci „.metadata.managedFields“, ve které navrhují uchovávat historii změn objektu, včetně toho, kdo, kdy a co přesně změnil.
    • Byl oznámen stabilní CertificateSigningRequest API.
  • Podpora platformy Windows.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster