Kubernetes 1.16 - рдХрд╛рд╣реАрд╣реА рди рддреЛрдбрддрд╛ рдЕрдкрдЧреНрд░реЗрдб рдХрд╕реЗ рдХрд░рд╛рд╡реЗ

Kubernetes 1.16 - рдХрд╛рд╣реАрд╣реА рди рддреЛрдбрддрд╛ рдЕрдкрдЧреНрд░реЗрдб рдХрд╕реЗ рдХрд░рд╛рд╡реЗ

рдЖрдЬ, 18 рд╕рдкреНрдЯреЗрдВрдмрд░, рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рдЪреА рдкреБрдвреАрд▓ рдЖрд╡реГрддреНрддреА рд░рд┐рд▓реАрдЬ рдЭрд╛рд▓реА - 1.16. рдиреЗрд╣рдореАрдкреНрд░рдорд╛рдгреЗ, рдЕрдиреЗрдХ рд╕реБрдзрд╛рд░рдгрд╛ рдЖрдгрд┐ рдирд╡реАрди рдЙрддреНрдкрд╛рджрдиреЗ рдЖрдордЪреА рд╡рд╛рдЯ рдкрд╛рд╣рдд рдЖрд╣реЗрдд. рдкрдг рдореА рддреБрдордЪреЗ рд▓рдХреНрд╖ рдлрд╛рдИрд▓рдЪреНрдпрд╛ рдХреГрддреА рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рднрд╛рдЧрд╛рдВрдХрдбреЗ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░реВ рдЗрдЪреНрдЫрд┐рддреЛ CHANGELOG-1.16.md. рд╣реЗ рд╡рд┐рднрд╛рдЧ рдмрджрд▓ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддрд╛рдд рдЬреНрдпрд╛рдореБрд│реЗ рддреБрдордЪрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЦрдВрдбрд┐рдд рд╣реЛрдК рд╢рдХрддреЛ, рдХреНрд▓рд╕реНрдЯрд░ рджреЗрдЦрднрд╛рд▓ рд╕рд╛рдзрдиреЗ рдХрд┐рдВрд╡рд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдлрд╛рдЗрд▓реНрд╕рдордзреНрдпреЗ рдмрджрд▓ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗрдд.

рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рддреНрдпрд╛рдВрдирд╛ рдореЕрдиреНрдпреБрдЕрд▓ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ ...

рдЪрд▓рд╛ рд▓рдЧреЗрдЪрдЪ рдПрдХрд╛ рдмрджрд▓рд╛рд╕рд╣ рдкреНрд░рд╛рд░рдВрдн рдХрд░реВрдпрд╛ рдЬреНрдпрд╛рдЪрд╛ рдкрд░рд┐рдгрд╛рдо рдмрд╣реБрдзрд╛ рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддреАрд╡рд░ рд╣реЛрдИрд▓ рдЬреЛ рдмрд░реНрдпрд╛рдЪ рдХрд╛рд│рд╛рдкрд╛рд╕реВрди kubernetes рд╕реЛрдмрдд рдХрд╛рдо рдХрд░рдд рдЖрд╣реЗ. Kubernetes API рдпрд╛рдкреБрдвреЗ рд▓реЗрдЧрд╕реА рд░рд┐рд╕реЛрд░реНрд╕ API рдЖрд╡реГрддреНрддреНрдпрд╛рдВрдирд╛ рд╕рдорд░реНрдерди рджреЗрдд рдирд╛рд╣реА.

рдХреЛрдгрд╛рд▓рд╛ рдорд╛рд╣рд┐рдд рдирд╕реЗрд▓ рдХрд┐рдВрд╡рд╛ рд╡рд┐рд╕рд░рд▓рд╛ рдЕрд╕реЗрд▓ рддрд░...рд╕рдВрд╕рд╛рдзрдирд╛рдЪреА API рдЖрд╡реГрддреНрддреА рдореЕрдирд┐рдлреЗрд╕реНрдЯрдордзреНрдпреЗ, рдлреАрд▓реНрдбрдордзреНрдпреЗ рджрд░реНрд╢рд╡рд┐рд▓реА рдЖрд╣реЗ apiVersion: apps/v1

рдореНрд╣рдгрдЬреЗ:

рд╕рдВрд╕рд╛рдзрди рдкреНрд░рдХрд╛рд░
рдЬреБрдиреА рдЖрд╡реГрддреНрддреА
рдХрд╛рдп рд╕рд╣ рдмрджрд▓рд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ

рд╕рд░реНрд╡ рд╕рдВрд╕рд╛рдзрдиреЗ
рдЕреЕрдкреНрд╕/v1beta1
рдЕреЕрдкреНрд╕/v1beta2
рдЕреЕрдкреНрд╕/v1

рддреИрдирд╛рдд
рдбреЗрдореЙрдирд╕реЗрдЯ
рдкреНрд░рддрд┐рдХреГрддреА
рд╡рд┐рд╕реНрддрд╛рд░/v1beta1
рдЕреЕрдкреНрд╕/v1

рдиреЗрдЯрд╡рд░реНрдХ рдзреЛрд░рдгреЗ
рд╡рд┐рд╕реНрддрд╛рд░/v1beta1
networking.k8s.io/v1

рдкреЙрдбрд╕реБрд░рдХреНрд╖рд╛ рдзреЛрд░рдгреЗ
рд╡рд┐рд╕реНрддрд╛рд░/v1beta1
рдзреЛрд░рдг/v1beta1

рдореА рдпрд╛ рд╡рд╕реНрддреБрд╕реНрдерд┐рддреАрдХрдбреЗ рддреБрдордЪреЗ рд▓рдХреНрд╖ рд╡реЗрдзреВрди рдШреЗрдК рдЗрдЪреНрдЫрд┐рддреЛ Ingress рджреЗрдЦреАрд▓ рдмрджрд▓рд▓реЗ apiVersion рд╡рд░ networking.k8s.io/v1beta1. рдЬреБрдирд╛ рдЕрд░реНрде extensions/v1beta1 рдЕрджреНрдпрд╛рдк рд╕рдорд░реНрдерд┐рдд рдЖрд╣реЗ, рдкрд░рдВрддреБ рддреНрдпрд╛рдЪ рд╡реЗрд│реА рдореЕрдирд┐рдлреЗрд╕реНрдЯрдордзреНрдпреЗ рд╣реА рдЖрд╡реГрддреНрддреА рдЕрджреНрдпрддрдирд┐рдд рдХрд░рдгреНрдпрд╛рдЪреЗ рдПрдХ рдЪрд╛рдВрдЧрд▓реЗ рдХрд╛рд░рдг рдЖрд╣реЗ.

рдиреЛрдбреНрд╕рд╡рд░ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╡рд┐рд╡рд┐рдз рд╕рд┐рд╕реНрдЯрдо рд▓реЗрдмрд▓реНрд╕рдордзреНрдпреЗ (рдиреЛрдб рд▓реЗрдмрд▓реНрд╕) рдмрд░реЗрдЪ рдмрджрд▓ рдЖрд╣реЗрдд.

рдХреБрдмреЗрд▓реЗрдЯрд▓рд╛ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд▓реЗрдмрд▓реЗ рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рд╕ рдордирд╛рдИ рд╣реЛрддреА (рдкреВрд░реНрд╡реА рддреЗ рд▓реЙрдиреНрдЪ рдХреА рджреНрд╡рд╛рд░реЗ рд╕реЗрдЯ рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрдд рд╣реЛрддреЗ 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/*

рдЯреЕрдЧреНрдЬ 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

рдЖрдпрдкреА-рдорд╛рд╕реНрдХ-рдПрдЬрдВрдЯ
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, рдЬреЗ рд╡рд░реНрддрдорд╛рди рдкреНрд░рд╡реЗрд╢ рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рд╕рдВрдЪрдпрд┐рдд рдХрд░рддреЗ.

рдХреЕрдбрд╡реНрд╣рд╛рдпрдЭрд░ рдпрд╛рдкреБрдвреЗ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдкреНрд░рджрд╛рди рдХрд░рдд рдирд╛рд╣реА pod_name ╨╕ container_nameрддреБрдореНрд╣реА рдкреНрд░реЛрдорд┐рдерд┐рдпрд╕рдордзреНрдпреЗ рддреНрдпрд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд▓рд╛ рдЕрд╕рд▓реНрдпрд╛рд╕, рдореЗрдЯреНрд░рд┐рдХреНрд╕рд╡рд░ рдЬрд╛ pod ╨╕ container рдЕрдиреБрдХреНрд░рдореЗ

рд▓рд╛рдЗрди рдХрдорд╛рдВрдбрд╕рд╣ рдХреА рдХрд╛рдврд▓реНрдпрд╛:

рдШрдЯрдХ
рдорд╛рдЧреЗ рдШреЗрддрд▓реЗрд▓реА рдХреА

hyperkube
--make-symlink

kube-рдкреНрд░реЙрдХреНрд╕реА
-- рд╕рдВрд╕рд╛рдзрди-рдХрдВрдЯреЗрдирд░

рд╢реЗрдбреНрдпреБрд▓рд░рдиреЗ рдЗрд╡реНрд╣реЗрдВрдЯ API рдЪреА рдЖрд╡реГрддреНрддреА v1beta1 рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕ рд╕реБрд░реБрд╡рд╛рдд рдХреЗрд▓реА. рддреБрдореНрд╣реА рдЗрд╡реНрд╣реЗрдВрдЯ 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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛