Kubernetes 1.16 - hvernig á að uppfæra án þess að brjóta neitt

Kubernetes 1.16 - hvernig á að uppfæra án þess að brjóta neitt

Í dag, 18. september, kemur út næsta útgáfa af Kubernetes - 1.16. Eins og alltaf bíða okkar margar endurbætur og nýjar vörur. En mig langar til að vekja athygli þína á aðgerðum sem krafist er í skránni BREYTINGAR-1.16.md. Þessir hlutar birta breytingar sem kunna að brjóta forritið þitt, klasaviðhaldsverkfæri eða krefjast breytinga á stillingarskrám.

Almennt þurfa þeir handvirkt inngrip...

Byrjum strax á breytingu sem mun líklegast hafa áhrif á alla sem hafa unnið nógu lengi með kubernetes. Kubernetes API styður ekki lengur eldri tilföng API útgáfur.

Ef einhver vissi ekki eða gleymdi...API útgáfa auðlindarinnar er tilgreind í upplýsingaskránni, í reitnum apiVersion: apps/v1

þ.e.

Gerð auðlindar
gömul útgáfa
Hvað ætti ég að skipta út fyrir?

Öll úrræði
apps/v1beta1
apps/v1beta2
forrit/v1

dreifing
púkasett
eftirlíkingarsett
viðbót/v1beta1
forrit/v1

netstefnur
viðbætur/v1beta1
networking.k8s.io/v1

podsecurity stefnur
viðbætur/v1beta1
stefna/v1beta1

Ég vil líka vekja athygli á því að hlutir af gerð Ingress einnig breytt apiVersion á networking.k8s.io/v1beta1. Gömul merking extensions/v1beta1 er enn stutt, en það er full ástæða til að uppfæra þessa útgáfu í upplýsingaskránni á sama tíma.

Það eru töluvert miklar breytingar á ýmsum kerfismerkjum (Node labels) sem eru sett upp á hnútum.

Kubelet var bannað að setja handahófskennda merkimiða (áður var hægt að stilla þau með ræsilyklum kubelet --node-labels), skildu þeir aðeins eftir þennan lista heimilt:

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

Merkingar beta.kubernetes.io/metadata-proxy-ready, beta.kubernetes.io/metadata-proxy-ready og beta.kubernetes.io/kube-proxy-ds-ready er ekki lengur bætt við nýja hnúta og ýmsir viðbótaríhlutir eru farnir að nota aðeins mismunandi merki sem hnútaval:

Hluti
Gamalt merki
Núverandi merki

kúbe-umboð
beta.kubernetes.io/kube-proxy-ds-ready
node.kubernetes.io/kube-proxy-ds-ready

ip-mask-umboðsmaður
beta.kubernetes.io/masq-agent-ds-ready
node.kubernetes.io/masq-agent-ds-ready

lýsigagna-umboð
beta.kubernetes.io/metadata-proxy-ready
cloud.google.com/metadata-proxy-ready

kubeadm fjarlægir nú upphaflegu kublet stillingarskrána á bak við hana bootstrap-kubelet.conf. Ef tækin þín voru að fá aðgang að þessari skrá, skiptu þá yfir í að nota kubelet.conf, sem geymir núverandi aðgangsstillingar.

Cadvisor veitir ekki lengur mælikvarða pod_name и container_nameef þú notaðir þá í Prometheus, farðu í mælingar pod и container sig.

Fjarlægði lyklana með línuskipuninni:

Hluti
Inndreginn lykill

hyperkube
--gera-táknið

kúbe-umboð
--auðlinda-ílát

Tímaáætlunin byrjaði að nota útgáfu v1beta1 af Event API. Ef þú notar verkfæri þriðja aðila til að hafa samskipti við Event API skaltu skipta yfir í nýjustu útgáfuna.

Augnablik af húmor. Við undirbúning útgáfu 1.16 voru eftirfarandi breytingar gerðar:

  • fjarlægði athugasemdina scheduler.alpha.kubernetes.io/critical-pod í útgáfu v1.16.0-alpha.1
  • skilaði athugasemdinni scheduler.alpha.kubernetes.io/critical-pod í útgáfu v1.16.0-alpha.2
  • fjarlægði athugasemdina scheduler.alpha.kubernetes.io/critical-pod í útgáfu v1.16.0-beta.1

Notaðu reitinn spec.priorityClassName til að gefa til kynna mikilvægi belgsins.

Heimild: www.habr.com

Bæta við athugasemd