Astăzi, 18 septembrie, este lansată următoarea versiune de Kubernetes - 1.16. Ca întotdeauna, ne așteaptă multe îmbunătățiri și produse noi. Dar aș dori să vă atrag atenția asupra secțiunilor Acțiune necesară din fișier
În general, necesită intervenție manuală...
Să începem imediat cu o schimbare care, cel mai probabil, îi va afecta pe toți cei care lucrează cu kubernetes suficient de mult. API-ul Kubernetes nu mai acceptă versiunile API de resurse vechi.
Daca cineva nu a stiut sau a uitat...Versiunea API a resursei este indicată în manifest, în câmp apiVersion: apps/v1
Anume
Tipul de resursă
versiune veche
Cu ce ar trebui inlocuit
Toate resursele
apps/v1beta1
apps/v1beta2
aplicații / v1
implementări
daemonset
replicaset
extensia/v1beta1
aplicații / v1
politicile de rețea
extensii/v1beta1
networking.k8s.io/v1
podpolitici de securitate
extensii/v1beta1
policy/v1beta1
De asemenea, aș dori să vă atrag atenția asupra faptului că obiectele de tip Ingress
schimbat de asemenea apiVersion
pe networking.k8s.io/v1beta1
. Sensul vechi extensions/v1beta1
este încă acceptat, dar există un motiv întemeiat pentru a actualiza această versiune în manifeste în același timp.
Există destul de multe modificări în diverse etichete de sistem (etichete de nod) care sunt instalate pe noduri.
Kubelet i-a fost interzis să seteze etichete arbitrare (anterior acestea puteau fi setate prin tastele de lansare kubelet --node-labels
), au lăsat doar această listă
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/*
Tag-uri beta.kubernetes.io/metadata-proxy-ready
, beta.kubernetes.io/metadata-proxy-ready și beta.kubernetes.io/kube-proxy-ds-ready nu mai sunt adăugate la nodurile noi, iar diverse componente suplimentare au început să folosească etichete ușor diferite ca selectoare de noduri:
component
Etichetă veche
Eticheta curentă
kube-proxy
beta.kubernetes.io/kube-proxy-ds-ready
node.kubernetes.io/kube-proxy-ds-ready
ip-mask-agent
beta.kubernetes.io/masq-agent-ds-ready
node.kubernetes.io/masq-agent-ds-ready
metadate-proxy
beta.kubernetes.io/metadata-proxy-ready
cloud.google.com/metadata-proxy-ready
kubeadm elimină acum fișierul inițial de configurare kublet din spatele acestuia bootstrap-kubelet.conf
. Dacă instrumentele dvs. accesau acest fișier, treceți la utilizarea kubelet.conf
, care stochează setările curente de acces.
Cadvisor nu mai oferă valori pod_name
и container_name
dacă le-ai folosit în Prometheus, mergi la metrics pod
и container
respectiv.
S-au eliminat tastele cu comanda de linie:
component
Cheie retrasă
hiperkube
--face-simbol
kube-proxy
--resource-container
Programatorul a început să utilizeze versiunea v1beta1 a API-ului Event. Dacă utilizați instrumente terțe pentru a interacționa cu API-ul Event, treceți la cea mai recentă versiune.
Un moment de umor. În timpul pregătirii versiunii 1.16, au fost făcute următoarele modificări:
- a eliminat adnotarea
scheduler.alpha.kubernetes.io/critical-pod
în versiunea v1.16.0-alpha.1 - a returnat adnotarea
scheduler.alpha.kubernetes.io/critical-pod
în versiunea v1.16.0-alpha.2 - a eliminat adnotarea
scheduler.alpha.kubernetes.io/critical-pod
în versiunea v1.16.0-beta.1
Folosește câmpul spec.priorityClassName
pentru a indica importanța păstăii.
Sursa: www.habr.com