Kubernetes 1.16 - ΠΊΠ°ΠΊ Π΄Π° надстроитС, Π±Π΅Π· Π΄Π° счупитС Π½ΠΈΡ‰ΠΎ

Kubernetes 1.16 - ΠΊΠ°ΠΊ Π΄Π° надстроитС, Π±Π΅Π· Π΄Π° счупитС Π½ΠΈΡ‰ΠΎ

ДнСс, 18 сСптСмври, ΠΈΠ·Π»ΠΈΠ·Π° слСдващата вСрсия Π½Π° Kubernetes - 1.16. ΠšΠ°ΠΊΡ‚ΠΎ Π²ΠΈΠ½Π°Π³ΠΈ Π½ΠΈ ΠΎΡ‡Π°ΠΊΠ²Π°Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ подобрСния ΠΈ Π½ΠΎΠ²ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈ. Но Π±ΠΈΡ… искал Π΄Π° насоча Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π²ΠΈ към сСкциитС Π½Π° Ρ„Π°ΠΉΠ»Π°, изискващи дСйствиС ΠŸΠ ΠžΠœΠ•ΠΠ˜-1.16.md. Π’Π΅Π·ΠΈ Ρ€Π°Π·Π΄Π΅Π»ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Ρ‚ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° поврСдят Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, инструмСнти Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ ΠΈΠ»ΠΈ Π΄Π° изискват ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅.

ΠšΠ°Ρ‚ΠΎ цяло изискват Ρ€ΡŠΡ‡Π½Π° намСса...

НСка Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ Π²Π΅Π΄Π½Π°Π³Π° с промяна, която Π½Π°ΠΉ-вСроятно Ρ‰Π΅ засСгнС всички, ΠΊΠΎΠΈΡ‚ΠΎ работят с kubernetes Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ дълго. API Π½Π° Kubernetes Π²Π΅Ρ‡Π΅ Π½Π΅ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° наслСдСни вСрсии Π½Π° API Π·Π° рСсурси.

Ако някой Π½Π΅ Π·Π½Π°Π΅ ΠΈΠ»ΠΈ Π΅ Π·Π°Π±Ρ€Π°Π²ΠΈΠ»...API вСрсията Π½Π° рСсурса Π΅ посочСна Π² манифСста, Π² ΠΏΠΎΠ»Π΅Ρ‚ΠΎ apiVersion: apps/v1

А имСнно

Π’ΠΈΠΏ рСсурс
Π‘Ρ‚Π°Ρ€Π° вСрсия
Π‘ ΠΊΠ°ΠΊΠ²ΠΎ трябва Π΄Π° сС Π·Π°ΠΌΠ΅Π½ΠΈ

Всички рСсурси
прилоТСния/v1beta1
прилоТСния/v1beta2
прилоТСния/v1

внСдрявания
Π΄Π΅ΠΌΠΎΠ½Π΅Ρ‚
replicaset
Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΠ΅/v1beta1
прилоТСния/v1

ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ
Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ/v1beta1
Ρ€Π°Π±ΠΎΡ‚Π° Π² ΠΌΡ€Π΅ΠΆΠ°.k8s.io/v1

podsecuritypolicies
Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ/v1beta1
ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°/v1beta1

Π‘ΠΈΡ… искал ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΄Π° ΠΎΠ±ΡŠΡ€Π½Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ„Π°ΠΊΡ‚Π°, Ρ‡Π΅ ΠΎΠ±Π΅ΠΊΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ Ρ‚ΠΈΠΏ Ingress ΡΡŠΡ‰ΠΎ сС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ apiVersion Π½Π° networking.k8s.io/v1beta1. Π‘Ρ‚Π°Ρ€ смисъл extensions/v1beta1 всС ΠΎΡ‰Π΅ сС ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°, Π½ΠΎ ΠΈΠΌΠ° основатСлна ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π΄Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ Ρ‚Π°Π·ΠΈ вСрсия Π² манифСститС Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ.

Има доста ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ систСмни Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΈ (Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΈ Π½Π° възли), ΠΊΠΎΠΈΡ‚ΠΎ са инсталирани Π½Π° възли.

На Kubelet бСшС Π·Π°Π±Ρ€Π°Π½Π΅Π½ΠΎ Π΄Π° Π·Π°Π΄Π°Π²Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΈ (ΠΏΡ€Π΅Π΄ΠΈ Ρ‚Π΅ ΠΌΠΎΠΆΠ΅Ρ…Π° Π΄Π° сС Π·Π°Π΄Π°Π²Π°Ρ‚ Ρ‡Ρ€Π΅Π· клавиши Π·Π° стартиранС kubelet --node-labels), оставиха само Ρ‚ΠΎΠ·ΠΈ списък Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ:

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

Tags beta.kubernetes.io/metadata-proxy-ready, beta.kubernetes.io/metadata-proxy-ready ΠΈ beta.kubernetes.io/kube-proxy-ds-ready Π²Π΅Ρ‡Π΅ Π½Π΅ сС добавят към Π½ΠΎΠ²ΠΈ възли ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π·Π°ΠΏΠΎΡ‡Π½Π°Ρ…Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΈ ΠΊΠ°Ρ‚ΠΎ сСлСктори Π½Π° възли:

ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚
Π‘Ρ‚Π°Ρ€ Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚
Π’Π΅ΠΊΡƒΡ‰ Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚

kube-прокси
beta.kubernetes.io/kube-proxy-ds-ready
node.kubernetes.io/kube-proxy-ds-ready

ip-маска-Π°Π³Π΅Π½Ρ‚
beta.kubernetes.io/masq-agent-ds-ready
node.kubernetes.io/masq-agent-ds-ready

ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈ-прокси
beta.kubernetes.io/metadata-proxy-ready
cloud.google.com/metadata-proxy-ready

kubeadm сСга ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΈΡ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π΅Π½ Ρ„Π°ΠΉΠ» Π½Π° kublet Π·Π°Π΄ Π½Π΅Π³ΠΎ bootstrap-kubelet.conf. Ако Π²Π°ΡˆΠΈΡ‚Π΅ инструмСнти са ΠΈΠΌΠ°Π»ΠΈ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Ρ‚ΠΎΠ·ΠΈ Ρ„Π°ΠΉΠ», ΠΏΡ€Π΅Π²ΠΊΠ»ΡŽΡ‡Π΅Ρ‚Π΅ към ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ kubelet.conf, ΠΊΠΎΠΉΡ‚ΠΎ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ‚Π΅ настройки Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ.

Cadvisor Π²Π΅Ρ‡Π΅ Π½Π΅ прСдоставя ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ pod_name ΠΈ container_nameΠ°ΠΊΠΎ стС Π³ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π»ΠΈ Π² Prometheus, ΠΎΡ‚ΠΈΠ΄Π΅Ρ‚Π΅ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ pod ΠΈ container ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ.

ΠŸΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚ΠΈ са ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅Ρ‚Π΅ с ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Π·Π° Ρ€Π΅Π΄:

ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚
ΠŸΡ€ΠΈΠ±Ρ€Π°Π½ ΠΊΠ»ΡŽΡ‡

Ρ…ΠΈΠΏΠ΅Ρ€ΠΊΡƒΠ±
--make-symlink

kube-прокси
--рСсурс-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€

ΠŸΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‡ΠΈΠΊΡŠΡ‚ Π·Π°ΠΏΠΎΡ‡Π½Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° вСрсия v1beta1 Π½Π° Event API. Ако ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ инструмСнти Π½Π° Ρ‚Ρ€Π΅Ρ‚ΠΈ страни Π·Π° взаимодСйствиС с API Π·Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΡ, ΠΏΡ€Π΅Π²ΠΊΠ»ΡŽΡ‡Π΅Ρ‚Π΅ към Π½Π°ΠΉ-Π½ΠΎΠ²Π°Ρ‚Π° вСрсия.

ΠœΠΎΠΌΠ΅Π½Ρ‚ Π·Π° Ρ…ΡƒΠΌΠΎΡ€. По Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ°Ρ‚Π° Π½Π° вСрсия 1.16 бяха Π½Π°ΠΏΡ€Π°Π²Π΅Π½ΠΈ слСднитС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ:

  • ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π° анотацията scheduler.alpha.kubernetes.io/critical-pod във вСрсия v1.16.0-alpha.1
  • Π²ΡŠΡ€Π½Π° анотацията scheduler.alpha.kubernetes.io/critical-pod във вСрсия v1.16.0-alpha.2
  • ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π° анотацията scheduler.alpha.kubernetes.io/critical-pod във вСрсия v1.16.0-beta.1

Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ»Π΅Ρ‚ΠΎ spec.priorityClassName Π·Π° Π΄Π° сС посочи ваТността Π½Π° подс.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: www.habr.com

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€