Izdanje Kubernetesa 1.18, sustava za upravljanje klasterom izoliranih spremnika

Objavljeno puštanje platforme za orkestraciju kontejnera Kubernetes 1.18, koji vam omogućuje upravljanje klasterom izoliranih spremnika kao cjelinom i pruža mehanizme za implementaciju, održavanje i skaliranje aplikacija koje se izvode u spremnicima. Projekt je izvorno kreirao Google, ali je zatim prebačen na neovisnu stranicu koju nadzire Linux Foundation. Platforma je pozicionirana kao univerzalno rješenje koje je razvila zajednica, nije vezano za pojedinačne sustave i sposobno je raditi s bilo kojom aplikacijom u bilo kojem okruženju oblaka. Kubernetes kod je napisan u Go i distribuira licenciran pod Apache 2.0.

Pruža funkcije za implementaciju i upravljanje infrastrukturom, kao što su održavanje DNS baze podataka, uravnoteženje opterećenja,
distribucija spremnika među čvorovima klastera (migracija spremnika ovisno o promjenama u opterećenju i potrebama usluga), provjera stanja na razini aplikacije, upravljanje računom, ažuriranje i dinamičko skaliranje pokrenutog klastera, bez njegovog zaustavljanja. Moguće je postaviti grupe spremnika s operacijama ažuriranja i poništavanja za cijelu grupu odjednom, kao i logičnu podjelu klastera na dijelove s podjelom resursa. Postoji podrška za dinamičku migraciju aplikacija, za čiju pohranu podataka se mogu koristiti i lokalni i mrežni sustavi za pohranu podataka.

Izdanje Kubernetes 1.18 uključuje 38 promjena i poboljšanja, od kojih je 15 prebačeno u stabilan status, a 11 u beta status. Predloženo je 12 novih promjena u alfa statusu. Prilikom pripreme nove verzije podjednaki su napori bili usmjereni kako na doradu različitih funkcionalnosti i stabilizaciju eksperimentalnih mogućnosti, tako i na dodavanje novih dostignuća. Glavne promjene:

  • Kubectl
    • Dodano Alfa verzija naredbe "kubectl debug", koja vam omogućuje da pojednostavite otklanjanje pogrešaka u podovima pokretanjem kratkotrajnih spremnika s alatima za uklanjanje pogrešaka.
    • Proglašeno stabilnim naredba “kubectl diff”, koja vam omogućuje da vidite što će se promijeniti u klasteru ako primijenite manifest.
    • Uklonjeno svi generatori naredbe "kubectl run", osim generatora za pokretanje jednog modula.
    • Promijenjeno zastavica “--dry-run”, ovisno o njezinoj vrijednosti (klijent, poslužitelj i ništa), probno izvršavanje naredbe se izvodi na strani klijenta ili poslužitelja.
    • kubectl kod istaknuto u zasebno spremište. To je omogućilo da se kubectl odvoji od internih kubernetes ovisnosti i olakšalo je uvoz koda u projekte trećih strana.
  • Ulaz
    • Počeo mijenjanje API grupe za Ingress u umrežavanje.v1beta1.
    • Dodano nova polja:
      • pathType, koji vam omogućuje da odredite kako će se putanja u zahtjevu uspoređivati
      • IngressClassName je zamjena za napomenu kubernetes.io/ingress.class, koja je proglašena zastarjelom. Ovo polje navodi naziv posebnog objekta InressClass
    • Dodano objekt IngressClass, koji označava naziv ulaznog kontrolera, njegove dodatne parametre i znak korištenja prema zadanim postavkama
  • Servis
    • dodano polje AppProtocol, u kojem možete odrediti koji protokol aplikacija koristi
    • Prevedeno u beta statusu i omogućen prema zadanim postavkama EndpointSlicesAPI, koji je funkcionalnija zamjena za obične Endpoints.
  • Mreža
    • podrška IPv6 je prebačen u beta status.
  • Trajni diskovi. Sljedeća funkcionalnost je proglašena stabilnom:
  • Konfiguracija aplikacije
    • Na ConfigMap i Secret objekte dodano novo polje "nepromjenjivo". Postavljanje vrijednosti polja na true sprječava modificiranje objekta.
  • Planer
    • Dodano mogućnost stvaranja dodatnih profila za kube-scheduler. Ako je ranije bilo potrebno pokrenuti dodatne odvojene planere za implementaciju nestandardnih algoritama distribucije pod-a, sada je moguće stvoriti dodatne skupove postavki za standardni planer i navesti njegov naziv u istom polju pod-a “.spec.schedulerName”. Status - alfa.
    • Iseljavanje na temelju mrlje proglašen stabilnim
  • Skaliranje
    • Dodano mogućnost specificiranja u HPA manifestu stupnja agresivnosti pri promjeni broja pokrenutih mahuna, odnosno, kada se opterećenje poveća, lansira N puta više instanci odjednom.
  • kubelet
    • Voditelj topologije dobio beta status. Značajka omogućuje NUMA dodjelu, čime se izbjegava degradacija performansi na sustavima s više utičnica.
    • Beta status primljen PodOverhead funkcija, koja vam omogućuje da u RuntimeClass odredite dodatnu količinu resursa potrebnih za pokretanje modula.
    • Prošireno Podrška za HugePages, izolacija na razini spremnika i podrška za višestruke veličine ogromnih stranica dodane su u alfa status.
    • Uklonjeno umjesto toga koristi se krajnja točka za metriku /metrics/resource/v1alpha1, /metrics/resource
  • API
    • Konačno Uklonjena je mogućnost korištenja zastarjele API grupe apps/v1beta1 i extensions/v1beta1.
    • Primjena na strani poslužitelja nadograđen na status beta2. Ovo poboljšanje premješta manipulaciju objektima s kubectla na API poslužitelj. Autori poboljšanja tvrde da će ovo popraviti mnoge postojeće greške koje se u trenutnoj situaciji ne mogu ispraviti. Također su dodali odjeljak “.metadata.managedFields”, u kojem predlažu pohranjivanje povijesti promjena objekta, naznačujući tko, kada i što je točno promijenio.
    • Najavljeno stabilan CertificateSigningRequest API.
  • Podrška za Windows platformu.

Izvor: opennet.ru

Dodajte komentar