Kubernetes 1.16 - hoe u kunt upgraden zonder iets kapot te maken

Kubernetes 1.16 - hoe u kunt upgraden zonder iets kapot te maken

Vandaag, 18 september, wordt de volgende versie van Kubernetes uitgebracht: 1.16. Zoals altijd staan ​​ons veel verbeteringen en nieuwe producten te wachten. Maar ik zou graag uw aandacht willen vestigen op de secties Actie vereist van het bestand CHANGELOG-1.16.md. In deze secties worden wijzigingen gepubliceerd die uw toepassing mogelijk kapot maken, onderhoudstools voor clusters bevatten of wijzigingen in configuratiebestanden vereisen.

Over het algemeen vereisen ze handmatige tussenkomst...

Laten we meteen beginnen met een verandering die hoogstwaarschijnlijk gevolgen zal hebben voor iedereen die lang genoeg met kubernetes heeft gewerkt. De Kubernetes API ondersteunt niet langer oudere resource-API-versies.

Mocht iemand het nog niet weten of vergeten...De API-versie van de resource wordt aangegeven in het manifest, in het veld apiVersion: apps/v1

Namelijk

Brontype
Oude versie
Waarmee vervangen moet worden

Alle hulpbronnen
apps/v1beta1
apps/v1beta2
apps / v1

implementaties
daemonset
replicaset
extensie/v1beta1
apps / v1

netwerkbeleid
extensies/v1beta1
netwerken.k8s.io/v1

podveiligheidsbeleid
extensies/v1beta1
beleid/v1beta1

Ik zou ook uw aandacht willen vestigen op het feit dat objecten van het type zijn Ingress ook veranderd apiVersion op networking.k8s.io/v1beta1. Oude betekenis extensions/v1beta1 wordt nog steeds ondersteund, maar er is een goede reden om deze versie tegelijkertijd in de manifesten bij te werken.

Er zijn nogal wat wijzigingen in de verschillende systeemlabels (Node-labels) die op knooppunten zijn geïnstalleerd.

Het was Kubelet verboden willekeurige labels in te stellen (voorheen konden deze worden ingesteld via startsleutels). kubelet --node-labels), lieten ze alleen deze lijst achter toegestaan:

kubernetes.io/hostname
kubernetes.io/instance-type
kubernetes.io/os
kubernetes.io/arch

beta.kubernetes.io/instance-type
beta.kubernetes.io/os
beta.kubernetes.io/arch

failure-domain.beta.kubernetes.io/zone
failure-domain.beta.kubernetes.io/region

failure-domain.kubernetes.io/zone
failure-domain.kubernetes.io/region

[*.]kubelet.kubernetes.io/*
[*.]node.kubernetes.io/*

Tags beta.kubernetes.io/metadata-proxy-ready, beta.kubernetes.io/metadata-proxy-ready en beta.kubernetes.io/kube-proxy-ds-ready worden niet langer toegevoegd aan nieuwe knooppunten, en verschillende aanvullende componenten zijn enigszins andere labels gaan gebruiken als knooppuntselectors:

bestanddeel
Oud etiket
Huidig ​​etiket

kube-proxy
beta.kubernetes.io/kube-proxy-ds-ready
node.kubernetes.io/kube-proxy-ds-ready

ip-masker-agent
beta.kubernetes.io/masq-agent-ds-ready
node.kubernetes.io/masq-agent-ds-ready

metadata-proxy
beta.kubernetes.io/metadata-proxy-ready
cloud.google.com/metadata-proxy-ready

kubeadm verwijdert nu het initiële kublet-configuratiebestand erachter bootstrap-kubelet.conf. Als uw tools toegang hadden tot dit bestand, schakel dan over naar Using kubelet.conf, waarin de huidige toegangsinstellingen worden opgeslagen.

Cadvisor biedt geen statistieken meer pod_name и container_nameals je ze in Prometheus hebt gebruikt, ga dan naar statistieken pod и container respectievelijk.

De sleutels verwijderd met het regelcommando:

bestanddeel
Ingetrokken sleutel

hyperkube
--make-symlink

kube-proxy
--resource-container

De planner begon versie v1beta1 van de Event API te gebruiken. Als u tools van derden gebruikt voor interactie met de Event API, schakel dan over naar de nieuwste versie.

Een momentje humor. Tijdens de voorbereiding van release 1.16 zijn de volgende wijzigingen aangebracht:

  • de annotatie verwijderd scheduler.alpha.kubernetes.io/critical-pod in versie v1.16.0-alpha.1
  • heeft de annotatie teruggestuurd scheduler.alpha.kubernetes.io/critical-pod in versie v1.16.0-alpha.2
  • de annotatie verwijderd scheduler.alpha.kubernetes.io/critical-pod in versie v1.16.0-bèta.1

Gebruik het veld spec.priorityClassName om het belang van de pod aan te geven.

Bron: www.habr.com

Voeg een reactie