Utgivelse av Kubernetes 1.18, et system for å administrere en klynge av isolerte beholdere

publisert frigjøring av containerorkestreringsplattform Kubernetes 1.18, som lar deg administrere en klynge av isolerte beholdere som en helhet og gir mekanismer for å distribuere, vedlikeholde og skalere applikasjoner som kjører i beholdere. Prosjektet ble opprinnelig opprettet av Google, men ble deretter overført til et uavhengig nettsted overvåket av Linux Foundation. Plattformen er posisjonert som en universell løsning utviklet av fellesskapet, ikke knyttet til individuelle systemer og i stand til å jobbe med hvilken som helst applikasjon i ethvert skymiljø. Kubernetes-koden er skrevet i Go og distribuert av lisensiert under Apache 2.0.

Tilbyr funksjoner for å distribuere og administrere infrastruktur, for eksempel vedlikehold av DNS-database, lastbalansering,
fordeling av containere mellom klyngenoder (beholdermigrering avhengig av endringer i belastning og servicebehov), helsesjekker på applikasjonsnivå, kontoadministrasjon, oppdatering og dynamisk skalering av en kjørende klynge, uten å stoppe den. Det er mulig å distribuere grupper av containere med oppdaterings- og angreoperasjoner for hele gruppen på en gang, samt logisk oppdeling av klyngen i deler med oppdeling av ressurser. Det er støtte for dynamisk migrering av applikasjoner, for datalagring hvor både lokal lagring og nettverkslagringssystemer kan brukes.

Kubernetes 1.18-utgivelsen inkluderer 38 endringer og forbedringer, hvorav 15 har blitt flyttet til stabil status og 11 til betastatus. 12 nye endringer er foreslått i alfastatus. Ved utarbeidelsen av den nye versjonen ble det rettet like stor innsats mot både å foredle ulike funksjoner og stabilisere eksperimentelle evner, samt å legge til nye utviklinger. Hovedendringer:

  • Kubectl
    • La til En alfaversjon av kommandoen "kubectl debug", som lar deg forenkle feilsøking i pods ved å starte flyktige beholdere med feilsøkingsverktøy.
    • Erklært stabil kommandoen "kubectl diff", som lar deg se hva som vil endre seg i klyngen hvis du bruker manifestet.
    • Fjernet alle generatorer for kommandoen "kubectl run", bortsett fra generatoren for å kjøre en enkelt pod.
    • Endret flagg "--dry-run", avhengig av verdien (klient, server og ingen), utføres prøvekjøringen av kommandoen på klient- eller serversiden.
    • kubectl-kode fremhevet til et eget depot. Dette gjorde at kubectl kunne kobles fra interne kubernetes-avhengigheter og gjorde det lettere å importere kode til tredjepartsprosjekter.
  • Ingress
    • Begynte endre API-gruppe for Ingress til networking.v1beta1.
    • La til nye felt:
      • pathType, som lar deg spesifisere hvordan banen i forespørselen skal sammenlignes
      • IngressClassName er en erstatning for kubernetes.io/ingress.class-kommentaren, som er erklært utdatert. Dette feltet spesifiserer navnet på spesialobjektet InressClass
    • La til et IngressClass-objekt, som indikerer navnet på ingress-kontrolleren, dens tilleggsparametere og tegn på bruk som standard
  • Service
    • Lagt AppProtocol-feltet, der du kan spesifisere hvilken protokoll applikasjonen bruker
    • Oversatt i betastatus og aktivert som standard EndpointSlicesAPI, som er en mer funksjonell erstatning for vanlige Endpoints.
  • nettverk
    • Støtte IPv6 har blitt flyttet til betastatus.
  • Permanente disker. Følgende funksjonalitet er erklært stabil:
  • Applikasjonskonfigurasjon
    • Til ConfigMap og hemmelige objekter la til nytt felt "uforanderlig". Å sette feltverdien til sann forhindrer modifikasjon av objektet.
  • Planlegger
    • La til muligheten til å opprette flere profiler for kube-planlegger. Hvis det tidligere var nødvendig å kjøre flere separate planleggere for å implementere ikke-standard pod-distribusjonsalgoritmer, er det nå mulig å lage flere sett med innstillinger for standardplanleggeren og spesifisere navnet i det samme pod-feltet ".spec.schedulerName". Status - alfa.
    • Fargebasert utkastelse erklært stabil
  • skalering
    • La til muligheten til å spesifisere i HPA manifest graden av aggressivitet når du endrer antall løpende pods, det vil si når belastningen øker, lanser N ganger flere tilfeller på en gang.
  • kubelet
    • Topologisjef mottatt betastatus. Funksjonen muliggjør NUMA-allokering, som unngår ytelsesforringelse på multi-socket-systemer.
    • Betastatus jeg fikk PodOverhead-funksjon, som lar deg spesifisere i RuntimeClass den ekstra mengden ressurser som kreves for å kjøre poden.
    • Utvidet støtte for HugePages, i alfastatus lagt til isolasjon på beholdernivå og støtte for flere store sider-størrelser.
    • Slettet endepunkt for metrics /metrics/resource/v1alpha1, /metrics/resource brukes i stedet
  • API
    • Endelig Fjernet muligheten til å bruke de utdaterte API-gruppeappene/v1beta1 og extensions/v1beta1.
    • Bruk på serversiden oppgradert til beta2-status. Denne forbedringen flytter objektmanipulering fra kubectl til API-serveren. Forfatterne av forbedringen hevder at dette vil fikse mange eksisterende feil som ikke kan rettes i dagens situasjon. De la også til en seksjon ".metadata.managedFields", der de foreslår å lagre historikken for objektendringer, som indikerer hvem, når og hva som endret seg.
    • Kunngjort stabil CertificateSigningRequest API.
  • Windows-plattformstøtte.

Kilde: opennet.ru

Legg til en kommentar