Kubernetes 1.16 - kuidas uuendada midagi rikkumata

Kubernetes 1.16 - kuidas uuendada midagi rikkumata

Täna, 18. septembril ilmub Kubernetese järgmine versioon - 1.16. Nagu alati, ootavad meid paljud täiustused ja uued tooted. Kuid ma tahaksin juhtida teie tähelepanu faili jaotistele Vajalik toiming CHANGELOG-1.16.md. Nendes jaotistes avaldatakse muudatused, mis võivad rikkuda teie rakendust, klastri hooldustööriistu või nõuda konfiguratsioonifailide muutmist.

Üldiselt vajavad need käsitsi sekkumist...

Alustame kohe muudatusega, mis suure tõenäosusega puudutab kõiki, kes on kubernetesega piisavalt kaua töötanud. Kubernetes API ei toeta enam ressursi API pärandversioone.

Kui keegi ei teadnud või unustas...Ressursi API versioon on näidatud manifestis väljal apiVersion: apps/v1

Nimelt

Ressursi tüüp
vana versioon
Millega tuleks asendada

Kõik ressursid
apps/v1beta1
apps/v1beta2
rakendused / v1

kasutuselevõtt
deemonset
replikaat
laiend/v1beta1
rakendused / v1

võrgupoliitikad
laiendused/v1beta1
networking.k8s.io/v1

turvapoliitika
laiendused/v1beta1
poliitika/v1beta1

Samuti juhin teie tähelepanu asjaolule, et tüübiobjektid Ingress samuti muutunud apiVersion edasi networking.k8s.io/v1beta1. Vana tähendus extensions/v1beta1 on endiselt toetatud, kuid on hea põhjus seda versiooni manifestides samal ajal värskendada.

Erinevates sõlmedele installitavates süsteemisiltides (Node labels) on üsna palju muudatusi.

Kubeletil oli keelatud suvaliste siltide seadmine (varem sai neid seada käivitusklahvide kaudu kubelet --node-labels), jätsid nad ainult selle loendi lubatud:

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/*

Sildid beta.kubernetes.io/metadata-proxy-ready, beta.kubernetes.io/metadata-proxy-ready ja beta.kubernetes.io/kube-proxy-ds-ready ei lisata enam uutele sõlmedele ning erinevad lisakomponendid on hakanud sõlmevalijatena kasutama veidi erinevaid silte:

Komponent
Vana silt
Praegune silt

kube-puhverserver
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

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

kubeadm eemaldab nüüd selle taga oleva algse kubleti konfiguratsioonifaili bootstrap-kubelet.conf. Kui teie tööriistad pääsesid sellele failile juurde, lülituge kasutamisele kubelet.conf, mis salvestab praegused juurdepääsuseaded.

Cadvisor ei paku enam mõõdikuid pod_name и container_namekui kasutasite neid Prometheuses, minge mõõdikute juurde pod и container võrra.

Eemaldati klahvid käsuga rida:

Komponent
Sissetõmmatud võti

hüperkube
--make-symlink

kube-puhverserver
--ressurss-konteiner

Planeerija hakkas kasutama Event API versiooni v1beta1. Kui kasutate Event API-ga suhtlemiseks kolmanda osapoole tööriistu, lülituge uusimale versioonile.

Hetk huumorit. Väljaande 1.16 ettevalmistamise käigus tehti järgmised muudatused:

  • eemaldas annotatsiooni scheduler.alpha.kubernetes.io/critical-pod versioonis v1.16.0-alpha.1
  • tagastas annotatsiooni scheduler.alpha.kubernetes.io/critical-pod versioonis v1.16.0-alpha.2
  • eemaldas annotatsiooni scheduler.alpha.kubernetes.io/critical-pod versioonis v1.16.0-beta.1

Kasutage välja spec.priorityClassName et näidata kauna tähtsust.

Allikas: www.habr.com

Lisa kommentaar