Kubernetes 1.17: ืกืงื™ืจื” ื›ืœืœื™ืช ืฉืœ ื”ื—ื™ื“ื•ืฉื™ื ื”ืขื™ืงืจื™ื™ื

ืืชืžื•ืœ, 9 ื‘ื“ืฆืžื‘ืจ, ื”ืชืงื™ื™ื ื”ืžื”ื“ื•ืจื” ื”ื‘ืื” ืฉืœ Kubernetes - 1.17. ืขืœ ืคื™ ื”ืžืกื•ืจืช ืฉื”ืชืคืชื—ื” ืœื‘ืœื•ื’ ืฉืœื ื•, ืื ื—ื ื• ืžื“ื‘ืจื™ื ืขืœ ื”ืฉื™ื ื•ื™ื™ื ื”ืžืฉืžืขื•ืชื™ื™ื ื‘ื™ื•ืชืจ ื‘ื’ืจืกื” ื”ื—ื“ืฉื”.

Kubernetes 1.17: ืกืงื™ืจื” ื›ืœืœื™ืช ืฉืœ ื”ื—ื™ื“ื•ืฉื™ื ื”ืขื™ืงืจื™ื™ื

ื”ืžื™ื“ืข ื”ืžืฉืžืฉ ืœื”ื›ื ืช ื—ื•ืžืจ ื–ื” ื ืœืงื— ืžื”ื”ื•ื“ืขื” ื”ืจืฉืžื™ืช, ื˜ื‘ืœืื•ืช ืžืขืงื‘ ืœืฉื™ืคื•ืจื™ Kubernetes, CHANGELOG-1.17 ื•ื‘ืขื™ื•ืช ืงืฉื•ืจื•ืช, ื‘ืงืฉื•ืช ืžืฉื™ื›ื” ื•ื”ืฆืขื•ืช Kubernetes Enhancement (KEP). ืื– ืžื” ื—ื“ืฉ?..

ื ื™ืชื•ื‘ ืžื•ื“ืข ืœื˜ื•ืคื•ืœื•ื’ื™ื”

ืงื”ื™ืœืช Kubernetes ื—ื™ื›ืชื” ืœืชื›ื•ื ื” ื–ื• ื‘ืžืฉืš ื–ืžืŸ ืจื‘ - ื ื™ืชื•ื‘ ืฉื™ืจื•ืช ืžื•ื“ืข ืœื˜ื•ืคื•ืœื•ื’ื™ื”. ืื ืงืค ืžืงื•ืจื• ื‘ืื•ืงื˜ื•ื‘ืจ 2018, ื•ื”ืจืฉืžื™ืช ื”ื’ื‘ืจื” - ืœืคื ื™ ืฉื ืชื™ื™ื, ื”ื ื•ืฉืื™ื ื”ืจื’ื™ืœื™ื (ื›ืžื• ื–ื”) - ื•ืขื•ื“ ื›ืžื” ืฉื ื™ื ืžื‘ื•ื’ืจ ื™ื•ืชืจ...

ื”ืจืขื™ื•ืŸ ื”ื›ืœืœื™ ื”ื•ื ืœืกืคืง ืืช ื”ื™ื›ื•ืœืช ืœื™ื™ืฉื ื ื™ืชื•ื‘ "ืžืงื•ืžื™" ืขื‘ื•ืจ ืฉื™ืจื•ืชื™ื ื”ืฉื•ื›ื ื™ื ื‘-Kubernetes. "ืžืงื•ืžื™" ื‘ืžืงืจื” ื–ื” ืคื™ืจื•ืฉื• "ืื•ืชื” ืจืžื” ื˜ื•ืคื•ืœื•ื’ื™ืช" (ืจืžืช ื˜ื•ืคื•ืœื•ื’ื™ื”), ืฉื™ื›ื•ืœ ืœื”ื™ื•ืช:

  • ืฆื•ืžืช ื–ื”ื” ืœืฉื™ืจื•ืชื™ื,
  • ืื•ืชื• ืžืชืœื” ืฉืจืช,
  • ืื•ืชื• ืื–ื•ืจ
  • ืื•ืชื• ืกืคืง ืขื ืŸ,
  • ...

ื“ื•ื’ืžืื•ืช ืœืฉื™ืžื•ืฉ ื‘ืชื›ื•ื ื” ื–ื•:

  • ื—ื™ืกื›ื•ืŸ ื‘ืชืขื‘ื•ืจื” ื‘ื”ืชืงื ื•ืช ืขื ืŸ ืขื ืžืกืคืจ ืื–ื•ืจื™ ื–ืžื™ื ื•ืช (ืžื•ืœื˜ื™-AZ) - ืจืื”. ืื™ื•ืจ ื˜ืจื™ ืฉื™ืžื•ืฉ ื‘ื“ื•ื’ืžื” ืฉืœ ืชืขื‘ื•ืจื” ืžืื•ืชื• ืื–ื•ืจ, ืื‘ืœ AZs ืฉื•ื ื™ื ื‘-AWS;
  • ื—ื‘ื™ื•ืŸ ื‘ื™ืฆื•ืขื™ื ื ืžื•ืš ื™ื•ืชืจ/ืชืคื•ืงื” ื˜ื•ื‘ื” ื™ื•ืชืจ;
  • ืฉื™ืจื•ืช ืžืคื•ืฆืœ ื‘ืขืœ ืžื™ื“ืข ืžืงื•ืžื™ ืขืœ ื”ืฆื•ืžืช ื‘ื›ืœ ืจืกื™ืก;
  • ืžื™ืงื•ื ืฉืœ fluentd (ืื• ืื ืœื•ื’ื™ื) ื‘ืื•ืชื• ืฆื•ืžืช ืขื ื”ื™ื™ืฉื•ืžื™ื ืฉื”ื™ื•ืžื ื™ื ืฉืœื”ื ื ืืกืคื™ื;
  • ...

ื ื™ืชื•ื‘ ื›ื–ื”, ืฉ"ื™ื•ื“ืข" ืขืœ ื”ื˜ื•ืคื•ืœื•ื’ื™ื”, ื ืงืจื ื’ื ื–ื™ืงื” ืœืจืฉืช - ื‘ืื ืœื•ื’ื™ื” ืœ ื–ื™ืงื” ืœืฆื•ืžืช, ื–ื™ืงื” ืœืชืจืžื™ืœ/ืื ื˜ื™ ื–ื™ืงื” ืื• ื”ื•ืคื™ืข ืœื ื›ืœ ื›ืš ืžื–ืžืŸ ืชื–ืžื•ืŸ ื ืคื— ืžื•ื“ืข ืœื˜ื•ืคื•ืœื•ื’ื™ื” (ื• ืืกืคืงืช ื ืคื—). ืจืžืช ื”ื™ื™ืฉื•ื ื”ื ื•ื›ื—ื™ืช ServiceTopology ื‘-Kubernetes - ื’ืจืกืช ืืœืคื.

ืœืคืจื˜ื™ื ืขืœ ืื™ืš ื”ืชื›ื•ื ื” ืคื•ืขืœืช ื•ื›ื™ืฆื“ ืืชื” ื›ื‘ืจ ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ื”, ืงืจื ืžืืžืจ ื–ื” ืžืื—ื“ ื”ื›ื•ืชื‘ื™ื.

ืชืžื™ื›ื” ื‘-IPv4/IPv6 ื›ืคื•ืœ ืžื—ืกื ื™ืช

ื”ืชืงื“ืžื•ืช ืžืฉืžืขื•ืชื™ืช ืชื•ืงืŸ ื‘ืชื›ื•ื ืช ืจืฉืช ื ื•ืกืคืช: ืชืžื™ื›ื” ื‘ื•-ื–ืžื ื™ืช ื‘ืฉืชื™ ืขืจื™ืžื•ืช IP, ืฉื”ื•ืฆื’ื” ืœืจืืฉื•ื ื” ื‘ K8s 1.16. ื‘ืžื™ื•ื—ื“, ื”ืžื”ื“ื•ืจื” ื”ื—ื“ืฉื” ื”ื‘ื™ืื” ืืช ื”ืฉื™ื ื•ื™ื™ื ื”ื‘ืื™ื:

  • ื‘-kube-proxy ืžื•ื˜ืžืข ืืคืฉืจื•ืช ืœืคืขื•ืœื” ื‘ื• ื–ืžื ื™ืช ื‘ืฉื ื™ ื”ืžืฆื‘ื™ื (IPv4 ื•- IPv6);
  • ะฒ Pod.Status.PodIPs ื”ื•ืคื™ืข ืชืžื™ื›ื” ื‘-API ื›ืœืคื™ ืžื˜ื” (ื‘ืžืงื‘ื™ืœ ื›ืžื• ื‘ /etc/hosts ื›ืขืช ื”ื ื“ื•ืจืฉื™ื ืžื”ืžืืจื— ืœื”ื•ืกื™ืฃ ื›ืชื•ื‘ืช IPv6);
  • ืชืžื™ื›ื” ื‘ืขืจื™ืžื” ื›ืคื•ืœื” ืกื•ื’ (Kubernetes IN Docker) ื• kubeadm;
  • ื‘ื“ื™ืงื•ืช e2e ืžืขื•ื“ื›ื ื•ืช.

Kubernetes 1.17: ืกืงื™ืจื” ื›ืœืœื™ืช ืฉืœ ื”ื—ื™ื“ื•ืฉื™ื ื”ืขื™ืงืจื™ื™ื
ืึดื™ื•ึผืจ ื‘ืืžืฆืขื•ืช ืขืจื™ืžื” ื›ืคื•ืœื” IPV4/IPv6 ื‘-KIND

ื”ืชืงื“ืžื•ืช ื‘-CSI

ื”ื•ื›ืจื– ื™ืฆื™ื‘ ืชืžื™ื›ื” ื‘ื˜ื•ืคื•ืœื•ื’ื™ื” ืขื‘ื•ืจ ืื—ืกื•ืŸ ืžื‘ื•ืกืก CSI, ื”ื•ืฆื’ ืœืจืืฉื•ื ื” ื‘ K8s 1.12.

ื™ื•ื–ืžื” ืขื‘ื•ืจ ื”ื’ื™ืจื” ืฉืœ ืชื•ืกืคื™ ื ืคื— ืœ-CSI - ื”ื’ื™ืจืช CSI - ื”ื’ื™ืข ืœื’ืจืกืช ื‘ื˜ื. ืชื›ื•ื ื” ื–ื• ื”ื™ื ืงืจื™ื˜ื™ืช ืขืœ ืžื ืช ืœืชืจื’ื ืชื•ืกืคื™ ืื—ืกื•ืŸ ืงื™ื™ืžื™ื (ื‘ืชื•ืš ื”ืขืฅ) ืœืžืžืฉืง ืžื•ื“ืจื ื™ (CSI, ืžื—ื•ืฅ ืœืขืฅ) ื‘ืœืชื™ ื ืจืื” ืœืžืฉืชืžืฉื™ ื”ืงืฆื” ืฉืœ Kubernetes. ืžื ื”ืœื™ ืืฉื›ื•ืœื•ืช ื™ืฆื˜ืจื›ื• ืจืง ืœื”ืคืขื™ืœ ืืช ื”ืขื‘ืจืช CSI, ื•ืœืื—ืจ ืžื›ืŸ ืžืฉืื‘ื™ื ื•ืขื•ืžืกื™ ืขื‘ื•ื“ื” ืงื™ื™ืžื™ื ื™ืžืฉื™ื›ื• "ืคืฉื•ื˜ ืœืขื‘ื•ื“"... ืืš ื‘ืืžืฆืขื•ืช ืžื ื”ืœื™ ื”ื”ืชืงืŸ ื”ืขื“ื›ื ื™ื™ื ื‘ื™ื•ืชืจ ืฉืœ CSI ื‘ืžืงื•ื ื”ืžื™ื•ืฉื ื™ื ื”ื›ืœื•ืœื™ื ื‘ืœื™ื‘ืช Kubernetes.

ื›ืจื’ืข, ื”ื”ืขื‘ืจื” ืขื‘ื•ืจ ืžื ื”ืœื™ ื”ืชืงื ื™ื ืฉืœ AWS EBS ืžื•ื›ื ื” ื‘ื’ืจืกืช ื‘ื˜ื (kubernetes.io/aws-ebs) ื•-GCE PD (kubernetes.io/gce-pd). ื”ืชื—ื–ื™ื•ืช ืขื‘ื•ืจ ืžืชืงื ื™ ืื—ืกื•ืŸ ืื—ืจื™ื ื”ืŸ ื›ื“ืœืงืžืŸ:

Kubernetes 1.17: ืกืงื™ืจื” ื›ืœืœื™ืช ืฉืœ ื”ื—ื™ื“ื•ืฉื™ื ื”ืขื™ืงืจื™ื™ื

ื“ื™ื‘ืจื ื• ืขืœ ืื™ืš ืชืžื™ื›ืช ืื—ืกื•ืŸ "ืžืกื•ืจืชื™ืช" ื‘-K8s ื”ื’ื™ืขื” ืœ-CSI ืžืืžืจ ื–ื”. ื•ื”ืžืขื‘ืจ ืฉืœ ื”ื’ื™ืจืช CSI ืœืกื˜ื˜ื•ืก ื‘ื˜ื ืžื•ืงื“ืฉ ืคืจืกื•ื ื ืคืจื“ ื‘ื‘ืœื•ื’ ื”ืคืจื•ื™ืงื˜.

ื‘ื ื•ืกืฃ, ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ืžืฉืžืขื•ืชื™ืช ื ื•ืกืคืช ื‘ื”ืงืฉืจ ืฉืœ CSI, ืฉืžืงื•ืจื” (ื™ื™ืฉื•ื ืืœืคื) ื‘-K1.17s 8, ื”ื’ื™ืขื” ืœืžืฆื‘ ื‘ื˜ื (ื›ืœื•ืžืจ ืžื•ืคืขืœืช ื›ื‘ืจื™ืจืช ืžื—ื“ืœ) ื‘ืžื”ื“ื•ืจืช Kubernetes 1.12 - ื™ืฆื™ืจืช ืฆื™ืœื•ืžื™ ืžืฆื‘ ื•ื”ื—ืœืžื” ืžื”ื. ื‘ื™ืŸ ื”ืฉื™ื ื•ื™ื™ื ืฉื‘ื•ืฆืขื• ื‘-Kubernetes Volume Snapshot ื‘ื“ืจืš ืœืฉื—ืจื•ืจ ื‘ื˜ื:

  • ืคื™ืฆื•ืœ ื”-Snapshotter ื”ื—ื™ืฆื•ื ื™ ืฉืœ CSI ืœืฉื ื™ ื‘ืงืจื™ื,
  • ืกื•ื“ ื ื•ืกืฃ ืœืžื—ื™ืงื” (ืกื•ื“ ืžื—ื™ืงื”) ื›ื”ืขืจื” ืœืชื•ื›ืŸ ืฉืœ ืชืžื•ื ืช ืžืฆื‘,
  • ืžืกื™ื™ื ื—ื“ืฉ (ืžื’ืžืจ) ื›ื“ื™ ืœืžื ื•ืข ืžื—ื™ืงืช ืื•ื‘ื™ื™ืงื˜ ื”-API ืฉืœ ืชืžื•ื ืช ืžืฆื‘ ืื ื ื•ืชืจื• ื—ื™ื‘ื•ืจื™ื.

ื‘ื–ืžืŸ ืฉื—ืจื•ืจ 1.17, ื”ืชื›ื•ื ื” ื ืชืžื›ืช ืขืœ ื™ื“ื™ ืฉืœื•ืฉื” ืžื ื”ืœื™ ื”ืชืงื ื™ื ืฉืœ CSI: ืžื ื”ืœ ื”ืชืงืŸ GCE Persistent Disk CSI, ืžื ื”ืœ ื”ืชืงืŸ Portworx CSI ื•-NetApp Trident CSI Driver. ืคืจื˜ื™ื ื ื•ืกืคื™ื ืขืœ ื”ื™ื™ืฉื•ื ื•ื”ืฉื™ืžื•ืฉ ื‘ื• ื ื™ืชืŸ ืœืžืฆื•ื ื‘ ืคืจืกื•ื ื–ื” ื‘ื‘ืœื•ื’.

ืชื•ื•ื™ื•ืช ืกืคืง ืขื ืŸ

ืžืชื™ื™ื’ ืืช ื–ื” ืื•ื˜ื•ืžื˜ื™ืช ืžื•ืงืฆื™ื ืœืฆืžืชื™ื ื•ืืžืฆืขื™ ืื—ืกื•ืŸ ืฉื ื•ืฆืจื• ื‘ื”ืชืื ืœืกืคืง ื”ืขื ืŸ ืฉื‘ื• ื ืขืฉื” ืฉื™ืžื•ืฉ, ื”ื™ื• ื–ืžื™ื ื™ื ื‘-Kubernetes ื›ื’ืจืกืช ื‘ื˜ื ื‘ืžืฉืš ื–ืžืŸ ืจื‘ ืžืื•ื“ - ืžืื– ื”ืฉืงืช K8s 1.2 (ืืคืจื™ืœ 2016!). ื‘ื”ืชื—ืฉื‘ ื‘ืฉื™ืžื•ืฉ ื”ื ืจื—ื‘ ืฉืœื”ื ื‘ืžืฉืš ื›ืœ ื›ืš ื”ืจื‘ื” ื–ืžืŸ, ืžืคืชื—ื™ื ั€ะตัˆะธะปะธ, ืฉื”ื’ื™ืข ื”ื–ืžืŸ ืœื”ื›ืจื™ื– ืขืœ ืชื›ื•ื ื” ื™ืฆื™ื‘ื” (GA).

ืœื›ืŸ, ื›ื•ืœื ืฉื•ื ื• ื‘ื”ืชืื (ืœืคื™ ื˜ื•ืคื•ืœื•ื’ื™ื”):

  • beta.kubernetes.io/instance-type โ†’ node.kubernetes.io/instance-type
  • failure-domain.beta.kubernetes.io/zone โ†’ topology.kubernetes.io/zone
  • failure-domain.beta.kubernetes.io/region โ†’ topology.kubernetes.io/region

... ืืš ืขื“ื™ื™ืŸ ื–ืžื™ื ื™ื ืชื—ืช ื”ืฉืžื•ืช ื”ื™ืฉื ื™ื ืฉืœื”ื (ืœืฆื•ืจืš ืชืื™ืžื•ืช ืœืื—ื•ืจ). ืขื ื–ืืช, ืžื•ืžืœืฅ ืœื›ืœ ื”ืžื ื”ืœื™ื ืœืขื‘ื•ืจ ืœืชื•ื•ื™ื•ืช ื”ื ื•ื›ื—ื™ื•ืช. ืชื™ืขื•ื“ ืงืฉื•ืจ K8s ืขื•ื“ื›ืŸ.

ืคืœื˜ ืžื•ื‘ื ื” ืฉืœ kubeadm

ืžื•ืฆื’ ื‘ื’ืจืกืช ืืœืคื ื‘ืคืขื ื”ืจืืฉื•ื ื” ืคืœื˜ ืžื•ื‘ื ื” ืขื‘ื•ืจ ื›ืœื™ ื”ืฉื™ืจื•ืช kubeadm. ืคื•ืจืžื˜ื™ื ื ืชืžื›ื™ื: JSON, YAML, ืชื‘ื ื™ืช Go.

ืžื•ื˜ื™ื‘ืฆื™ื” ืœื™ื™ืฉื•ื ืชื›ื•ื ื” ื–ื• (ืขืœ ืคื™ ืงืค) ื”ื•ื:

ื‘ืขื•ื“ ืฉื ื™ืชืŸ ืœืคืจื•ืก Kubernetes ื‘ืื•ืคืŸ ื™ื“ื ื™, ื”ืชืงืŸ ื‘ืคื•ืขืœ (ืื ืœื ื“ื” ื™ื•ืจื”) ืœืคืขื•ืœื” ื–ื• ื”ื•ื ืฉื™ืžื•ืฉ ื‘-kubeadm. ื›ืœื™ ื ื™ื”ื•ืœ ืžืขืจื›ื•ืช ืคื•ืคื•ืœืจื™ื™ื ื›ืžื• Terraform ืžืกืชืžื›ื™ื ืขืœ kubeadm ืขื‘ื•ืจ ืคืจื™ืกืช Kubernetes. ืฉื™ืคื•ืจื™ื ืžืชื•ื›ื ื ื™ื ืœ-Cluster API ื›ื•ืœืœื™ื ื—ื‘ื™ืœื” ื”ื ื™ืชื ืช ืœื—ื™ื‘ื•ืจ ืขื‘ื•ืจ Kubernetes bootstrapping ืขื kubeadm ื•-cloud-init.

ืœืœื ืคืœื˜ ืžื•ื‘ื ื”, ืืคื™ืœื• ื”ืฉื™ื ื•ื™ื™ื ื”ืชืžื™ืžื™ื ื‘ื™ื•ืชืจ ื‘ืžื‘ื˜ ืจืืฉื•ืŸ ื™ื›ื•ืœื™ื ืœืฉื‘ื•ืจ ืืช Terraform, Cluster API ื•ืชื•ื›ื ื•ืช ืื—ืจื•ืช ืฉืžืฉืชืžืฉื•ืช ื‘ืชื•ืฆืื•ืช ืฉืœ kubeadm.

ื”ืชื•ื›ื ื™ื•ืช ื”ืžื™ื™ื“ื™ื•ืช ืฉืœื ื• ื›ื•ืœืœื•ืช ืชืžื™ื›ื” (ื‘ืฆื•ืจื” ืฉืœ ืคืœื˜ ืžื•ื‘ื ื”) ืœืคืงื•ื“ื•ืช kubeadm ื”ื‘ืื•ืช:

  • alpha certs
  • config images list
  • init
  • token create
  • token list
  • upgrade plan
  • version

ืื™ื•ืจ ืฉืœ ืชื’ื•ื‘ืช JSON ืœืคืงื•ื“ื” kubeadm init -o json:

{
  "node0": "192.168.20.51:443",
  "caCrt": "sha256:1f40ff4bd1b854fb4a5cf5d2f38267a5ce5f89e34d34b0f62bf335d74eef91a3",
  "token": {
    "id":          "5ndzuu.ngie1sxkgielfpb1",
    "ttl":         "23h",
    "expires":     "2019-05-08T18:58:07Z",
    "usages":      [
      "authentication",
      "signing"
    ],
    "description": "The default bootstrap token generated by 'kubeadm init'.",
    "extraGroups": [
      "system:bootstrappers:kubeadm:default-node-token"
    ]
  },
  "raw": "Rm9yIHRoZSBhY3R1YWwgb3V0cHV0IG9mIHRoZSAia3ViZWFkbSBpbml0IiBjb21tYW5kLCBwbGVhc2Ugc2VlIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2FrdXR6LzdhNjg2ZGU1N2JmNDMzZjkyZjcxYjZmYjc3ZDRkOWJhI2ZpbGUta3ViZWFkbS1pbml0LW91dHB1dC1sb2c="
}

ื™ื™ืฆื•ื‘ ืฉืœ ื—ื™ื“ื•ืฉื™ื ืื—ืจื™ื

ื‘ืื•ืคืŸ ื›ืœืœื™, ื”ืฉื—ืจื•ืจ ืฉืœ Kubernetes 1.17 ื”ืชืจื—ืฉ ืชื—ืช ื”ืžื•ื˜ื• "ื™ืฆื™ื‘ื•ืช" ื–ื” ื”ื•ืงืœ ืขืœ ื™ื“ื™ ื”ืขื•ื‘ื“ื” ืฉืชื›ื•ื ื•ืช ืจื‘ื•ืช ื‘ื• (ื”ืžืกืคืจ ื”ื›ื•ืœืœ ืฉืœื”ื ื”ื•ื 14) ืงื™ื‘ืœ ืกื˜ื˜ื•ืก GA. ื‘ื™ื ื™ื”ื:

ืฉื™ื ื•ื™ื™ื ืื—ืจื™ื

ื”ืจืฉื™ืžื” ื”ืžืœืื” ืฉืœ ื”ื—ื™ื“ื•ืฉื™ื ื‘-Kubernetes 1.17, ื›ืžื•ื‘ืŸ, ืื™ื ื” ืžื•ื’ื‘ืœืช ืœืืœื” ื”ืžืคื•ืจื˜ื™ื ืœืขื™ืœ. ื”ื ื” ื›ืžื” ืื—ืจื™ื (ื•ืœืจืฉื™ืžื” ืžืœืื” ื™ื•ืชืจ, ืจืื” CHANGELOG):

  • ื”ืชื›ื•ื ื” ืฉื”ื•ืฆื’ื” ื‘ืžื”ื“ื•ืจื” ื”ืื—ืจื•ื ื” ื”ื’ื™ืขื” ืœื’ืจืกืช ื”ื‘ื˜ื RunAsUserName ืขื‘ื•ืจ ื—ืœื•ื ื•ืช;
  • ืฉื™ื ื•ื™ ื“ื•ืžื” ืงืจื” EndpointSlice API (ื’ื ืž-K8s 1.16), ืื•ืœื ืœืขืช ืขืชื” ืคืชืจื•ืŸ ื–ื” ืœืฉื™ืคื•ืจ ื”ื‘ื™ืฆื•ืขื™ื/ืžื“ืจื’ื™ื•ืช ืฉืœ ื”-Endpoint API ืื™ื ื• ืžื•ืคืขืœ ื›ื‘ืจื™ืจืช ืžื—ื“ืœ;
  • ืชืจืžื™ืœื™ื ื”ื ื›ืขืช ืงืจื™ื˜ื™ื™ื ืœื”ืคืขืœืช ืืฉื›ื•ืœ ื ื™ืชืŸ ืœื™ืฆื•ืจ ืœื ืจืง ื‘ืžืจื—ื‘ื™ ืฉืžื•ืช kube-system (ืœืคืจื˜ื™ื, ืขื™ื™ืŸ ื‘ืชื™ืขื•ื“ ืขื‘ื•ืจ ื”ื’ื‘ืœ ืืช ืฆืจื™ื›ืช ืžื—ืœืงื” ืขื“ื™ืคื•ืช);
  • ืืคืฉืจื•ืช ื—ื“ืฉื” ืขื‘ื•ืจ kubelet - --reserved-cpus - ืžืืคืฉืจ ืœืš ืœื”ื’ื“ื™ืจ ื‘ืžืคื•ืจืฉ ืืช ืจืฉื™ืžืช ื”ืžืขื‘ื“ื™ื ื”ืฉืžื•ืจื™ื ืœืžืขืจื›ืช;
  • ืขื‘ื•ืจ kubectl logs ื”ืฆื™ื’ ื“ื’ืœ ื—ื“ืฉ --prefix, ื”ื•ืกืคืช ืฉื ื”ืชืจืžื™ืœ ื•ืžื›ืœ ื”ืžืงื•ืจ ืœื›ืœ ืฉื•ืจื” ื‘ื™ื•ืžืŸ;
  • ะฒ label.Selector ื”ื•ืกื™ืฃ RequiresExactMatch;
  • ื›ืœ ื”ืžื›ื•ืœื•ืช ื‘-kube-dns ืคื•ืขืœื™ื ื›ืขืช ืขื ืคื—ื•ืช ื”ืจืฉืื•ืช;
  • ื”ื™ืคืจืงื•ื‘ื” ืžื•ืคืจื“ื™ื ืœืžืื’ืจ GitHub ื ืคืจื“ ื•ืœื ื™ื™ื›ืœืœ ืขื•ื“ ื‘ืžื”ื“ื•ืจื•ืช Kubernetes;
  • ื”ืจื‘ื” ื‘ื™ืฆื•ืขื™ื ืžืฉื•ืคืจื™ื kube-proxy ืขื‘ื•ืจ ื™ืฆื™ืื•ืช ืฉืื™ื ืŸ UDP.

ืฉื™ื ื•ื™ื™ื ื‘ืชืœื•ืช:

  • ื’ืจืกืช CoreDNS ื”ื›ืœื•ืœื” ื‘-kubeadm ื”ื™ื 1.6.5;
  • ื’ืจืกืช crictl ืขื•ื“ื›ื ื” ืœ-v1.16.1;
  • CSI 1.2.0;
  • ื•ื›ื•' 3.4.3;
  • ื’ืจืกืช Docker ืฉื ื‘ื“ืงื” ื”ืื—ืจื•ื ื” ืฉื•ื“ืจื’ื” ืœ-19.03;
  • ื’ืจืกืช ื”-Go ื”ืžื™ื ื™ืžืœื™ืช ื”ื ื“ืจืฉืช ืœื‘ื ื™ื™ืช Kubernetes 1.17 ื”ื™ื 1.13.4.

ื .ื‘.

ืงืจื ื’ื ื‘ื‘ืœื•ื’ ืฉืœื ื•:

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”