Versió de Kubernetes 1.18, sistema de gestió de clústers de contenidors aïllats

publicat llançament de la plataforma d'orquestració de contenidors Kubernetes 1.18, que us permet gestionar un clúster de contenidors aïllats en conjunt i proporciona mecanismes per desplegar, mantenir i escalar les aplicacions que s'executen als contenidors. El projecte va ser creat originalment per Google, però després es va transferir a un lloc independent supervisat per la Fundació Linux. La plataforma es posiciona com una solució universal desenvolupada per la comunitat, no vinculada a sistemes individuals i capaç de treballar amb qualsevol aplicació en qualsevol entorn de núvol. El codi Kubernetes està escrit a Go i Distribuït per amb llicència d'Apache 2.0.

Proporciona funcions per desplegar i gestionar la infraestructura, com ara el manteniment de bases de dades DNS, l'equilibri de càrrega,
distribució de contenidors entre nodes de clúster (migració de contenidors en funció dels canvis de càrrega i necessitats de servei), controls de salut a nivell d'aplicació, gestió de comptes, actualització i escalat dinàmic d'un clúster en execució, sense aturar-lo. És possible desplegar grups de contenidors amb operacions d'actualització i desfer per a tot el grup alhora, així com la divisió lògica del clúster en parts amb divisió de recursos. Hi ha suport per a la migració dinàmica d'aplicacions, per a l'emmagatzematge de dades de les quals es poden utilitzar sistemes d'emmagatzematge local i d'emmagatzematge en xarxa.

La versió 1.18 de Kubernetes inclou 38 canvis i millores, dels quals 15 s'han mogut a l'estat estable i 11 a l'estat beta. Es proposen 12 nous canvis en estat alfa. A l'hora de preparar la nova versió, es van adreçar els mateixos esforços tant a perfeccionar diverses funcionalitats com a estabilitzar les capacitats experimentals, així com a afegir nous desenvolupaments. Principals canvis:

  • Kubectl
    • Afegit Una versió alfa de l'ordre "kubectl debug", que us permet simplificar la depuració en pods llançant contenidors efímers amb eines de depuració.
    • Declarat estable l'ordre "kubectl diff", que us permet veure què canviarà al clúster si apliqueu el manifest.
    • Eliminat tots els generadors de l'ordre "kubectl run", excepte el generador per executar un sol pod.
    • Canviat marca "--dry-run", depenent del seu valor (client, servidor i cap), l'execució de prova de l'ordre es realitza al costat del client o del servidor.
    • codi kubectl destacat a un repositori separat. Això va permetre desacoblar kubectl de les dependències internes de Kubernetes i va facilitar la importació de codi a projectes de tercers.
  • Ingrés
    • Va començar canviant el grup d'API per a Ingress a networking.v1beta1.
    • Afegit nous camps:
      • pathType, que us permet especificar com es compararà el camí de la sol·licitud
      • IngressClassName és un reemplaçament de l'anotació kubernetes.io/ingress.class, que es declara obsoleta. Aquest camp especifica el nom de l'objecte especial InressClass
    • Afegit un objecte IngressClass, que indica el nom del controlador d'entrada, els seus paràmetres addicionals i el signe d'utilitzar-lo per defecte
  • servei
    • Afegit el camp AppProtocol, en el qual podeu especificar quin protocol utilitza l'aplicació
    • Traduït en estat beta i activat per defecte EndpointSlicesAPI, que és un reemplaçament més funcional dels Endpoints normals.
  • Xarxa
    • suport IPv6 s'ha mogut a l'estat beta.
  • Discs permanents. S'ha declarat estable la següent funcionalitat:
  • Configuració de l'aplicació
    • A ConfigMap i objectes secrets afegit nou camp "immutable". Establir el valor del camp com a true evita la modificació de l'objecte.
  • Programador
    • Afegit possibilitat de crear perfils addicionals per al kube-scheduler. Si abans era necessari executar programadors addicionals separats per implementar algorismes de distribució de pods no estàndard, ara és possible crear conjunts addicionals de configuracions per al planificador estàndard i especificar el seu nom al mateix camp de pod ".spec.schedulerName". Estat - alfa.
    • Desallotjament basat en taques declarada estable
  • Escalat
    • Afegit la capacitat d'especificar en el manifest HPA el grau d'agressivitat en canviar el nombre de pods en execució, és a dir, quan la càrrega augmenta, llançar N vegades més instàncies alhora.
  • Kubelet
    • Gestor de topologia ha rebut l'estat beta. La funció permet l'assignació de NUMA, que evita la degradació del rendiment en sistemes multisocket.
    • Estat beta rebut Funció PodOverhead, que us permet especificar a RuntimeClass la quantitat addicional de recursos necessaris per executar el pod.
    • Ampliat suport per a HugePages, en estat alfa afegit aïllament a nivell de contenidor i suport per a múltiples mides de pàgines enormes.
    • S'ha suprimit punt final per a mètriques /metrics/resource/v1alpha1, s'utilitza /metrics/resource en el seu lloc
  • API
    • Finalment S'ha eliminat la possibilitat d'utilitzar el grup d'API obsolet apps/v1beta1 i extensions/v1beta1.
    • Aplicació del costat del servidor actualitzat a l'estat beta2. Aquesta millora trasllada la manipulació d'objectes de kubectl al servidor de l'API. Els autors de la millora afirmen que això solucionarà molts errors existents que no es poden corregir en la situació actual. També han afegit una secció “.metadata.managedFields”, en la qual proposen emmagatzemar l'historial dels canvis d'objecte, indicant qui, quan i què ha canviat exactament.
    • Anunciat API estable de CertificateSigningRequest.
  • Suport de la plataforma Windows.

Font: opennet.ru

Afegeix comentari