Kubernetes 1.16 — si të përditësohemi pa e prishur asgjë

Kubernetes 1.16 — si të përditësohemi pa e prishur asgjë

Sot, 18 Shtator, del një version i ri i Kubernetes — 1.16. Si gjithmonë, na pret shumë përmirësime dhe risitë. Por do të doja të tërhiqja vëmendjen tuaj për seksionet e kërkuara në skedarin CHANGELOG-1.16.md. Në këto seksione publikohen ndryshime që mund të prishin funksionimin e aplikacionit tuaj, mjeteve për mirëmbajtjen e klasterit ose kërkojnë ndryshime në skedat e konfigurimit.

Në përgjithësi, kërkojnë ndërhyrje manuale…

Le të fillojmë menjëherë me një ndryshim që, me siguri, do të prekë të gjithë ata që kanë punuar mjaft gjatë me kubernetes. API i Kubernetes nuk mbështet më versionet e vjetra të API të burimeve.

Nëse dikush nuk e dinte, ose ka harruar…Versioni i API të burimit përcaktohet në manifest, në fushën apiVersion: apps/v1

Specifikisht:

Lloji i burimit
Versioni i vjetër
Çfarë duhet të zëvendësohet

Të gjitha burimet
apps/v1beta1
apps/v1beta2
apps/v1

dispozita
daemonset
replicaset
extension/v1beta1
apps/v1

politikat e rrjetit
extensions/v1beta1
networking.k8s.io/v1

politikat e sigurisë të pod-ëve
extensions/v1beta1
policy/v1beta1

Gjithashtu doja të veçoja se objektet e llojit Ingress kanë ndryshuar gjithashtu apiVersionnetworking.k8s.io/v1beta1. Vlera e vjetër extensions/v1beta1 ende mbështetet, por ka një arsye të mirë për të përmirësuar gjithashtu këtë version në manifestet.

Ka shumë ndryshime në etiketat e ndryshme të sistemit (Node labels) që vendosen në nyje.

Kubelet ndaloi vendosjen e etiketave të rastësishme (më parë mund të vendoseshin përmes çelësave të nisjes kubelet --node-labels), duke lënë vetëm këtë listë të lejuara:

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

Etiketat beta.kubernetes.io/metadata-proxy-ready, beta.kubernetes.io/metadata-proxy-ready dhe beta.kubernetes.io/kube-proxy-ds-ready nuk janë shtuar më në nyjet e reja, dhe komponente të ndryshme shtesë kanë filluar të përdorin disa etiketa të tjera si selektor të nyjeve:

Komponenti
Etiketa e vjetër
Etiketa aktuale

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

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

kubeadm tani heq skedarin e konfigurimit fillestar të kubelet bootstrap-kubelet.conf. Nëse mjetet tuaja e kanë thirrur këtë skedar, kaloni në përdorimin e kubelet.conf, në të cilin ruhen konfigurimet aktuale të aksesit.

Cadvisor nuk e jep më metrikat emri_pod dhe emri_enkontrues, nëse i keni përdorur ato në Prometheus, kaloni në metrikat pod dhe enkontruese përkatësisht.

Hoqum çelësat e komandës:

Komponenti
Çelësi i hequr

hyperkube
—make-symlink

kube-proxy
—resource-container

Planifikuesi filloi të përdorë versionin v1beta1 të Event API. Nëse po përdorni mjete të jashtme për të ndërvepruar me Event API, kaloni në versionin aktual.

Një minutë humori. Gjatë përgatitjeve për daljen e versionit 1.16 u bënë ndryshime të mëposhtme:

  • hoqëm annotimin scheduler.alpha.kubernetes.io/critical-pod në versionin v1.16.0-alpha.1
  • kthyen annotimin scheduler.alpha.kubernetes.io/critical-pod në versionin v1.16.0-alpha.2
  • hoqëm annotimin scheduler.alpha.kubernetes.io/critical-pod në versionin v1.16.0-beta.1

Përdorni fushën spec.priorityClassName për të treguar rëndësinë e podit.

Burimi: habr.com

Bli një hosting të besueshëm për faqet me mbrojtje DDoS, VPS VDS serverë 🔥 Bli një hosting të besueshëm për faqet me mbrojtje DDoS, VPS VDS serverë | ProHoster