Tänään, 18. syyskuuta, julkaistaan Kubernetesin seuraava versio - 1.16. Kuten aina, monet parannukset ja uudet tuotteet odottavat meitä. Haluaisin kuitenkin kiinnittää huomiosi tiedoston toimenpiteitä vaadittaviin osiin
Yleensä ne vaativat manuaalista puuttumista...
Aloitetaan heti muutoksella, joka vaikuttaa todennäköisesti kaikkiin, jotka ovat työskennelleet kuberneteksen kanssa tarpeeksi kauan. Kubernetes API ei enää tue vanhoja resurssien API-versioita.
Jos joku ei tiennyt tai unohtanut...Resurssin API-versio on ilmoitettu luettelossa, kentässä apiVersion: apps/v1
Nimittäin
Resurssin tyyppi
vanha versio
Millä se pitäisi korvata?
Kaikki resurssit
apps/v1beta1
apps/v1beta2
sovellukset / v1
käyttöönotot
daemonset
replikaatti
laajennus/v1beta1
sovellukset / v1
verkkopolitiikat
laajennukset/v1beta1
networking.k8s.io/v1
podturvallisuuspolitiikkaa
laajennukset/v1beta1
käytäntö/v1beta1
Haluaisin myös kiinnittää huomionne siihen, että esineitä tyyppi Ingress
myös muuttunut apiVersion
päälle networking.k8s.io/v1beta1
. Vanha merkitys extensions/v1beta1
on edelleen tuettu, mutta on hyvä syy päivittää tämä versio luetteloissa samanaikaisesti.
Solmuihin asennetuissa eri järjestelmätunnisteissa (Node labels) on melko paljon muutoksia.
Kubeletia kiellettiin asettamasta mielivaltaisia tunnisteita (aiemmin ne voitiin asettaa käynnistysnäppäimillä kubelet --node-labels
), he jättivät vain tämän luettelon
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/*
Tunnisteet beta.kubernetes.io/metadata-proxy-ready
, beta.kubernetes.io/metadata-proxy-ready ja beta.kubernetes.io/kube-proxy-ds-ready eivät enää ole lisättyjä uusiin solmuihin, ja useat lisäkomponentit ovat alkaneet käyttää hieman erilaisia tunnisteita solmuvalitsimina:
komponentti
Vanha etiketti
Nykyinen etiketti
kube-välityspalvelin
beta.kubernetes.io/kube-proxy-ds-ready
node.kubernetes.io/kube-proxy-ds-ready
ip-mask-agentti
beta.kubernetes.io/masq-agent-ds-ready
node.kubernetes.io/masq-agent-ds-ready
metadata-välityspalvelin
beta.kubernetes.io/metadata-proxy-ready
cloud.google.com/metadata-proxy-ready
kubeadm poistaa nyt alkuperäisen kubletin määritystiedoston sen takaa bootstrap-kubelet.conf
. Jos työkalusi käyttivät tätä tiedostoa, vaihda käyttämään kubelet.conf
, joka tallentaa nykyiset käyttöasetukset.
Cadvisor ei enää tarjoa mittareita pod_name
и container_name
Jos käytit niitä Prometheuksessa, siirry mittareihin pod
и container
vastaavasti.
Avaimet poistettiin rivikomennolla:
komponentti
Sisään vedetty avain
hyperkube
--make-symlink
kube-välityspalvelin
--resurssi-säilö
Ajastin alkoi käyttää Event API:n versiota v1beta1. Jos käytät kolmannen osapuolen työkaluja vuorovaikutuksessa Event API:n kanssa, vaihda uusimpaan versioon.
Hetki huumoria. Julkaisun 1.16 valmistelun aikana tehtiin seuraavat muutokset:
- poisti huomautuksen
scheduler.alpha.kubernetes.io/critical-pod
versiossa v1.16.0-alpha.1 - palautti huomautuksen
scheduler.alpha.kubernetes.io/critical-pod
versiossa v1.16.0-alpha.2 - poisti huomautuksen
scheduler.alpha.kubernetes.io/critical-pod
versiossa v1.16.0-beta.1
Käytä kenttää spec.priorityClassName
osoittamaan kotelon tärkeyttä.
Lähde: will.com