Kubernetes 1.14: เบˆเบธเบ”เป€เบ”เบฑเปˆเบ™เบ‚เบญเบ‡เบชเบดเปˆเบ‡เปƒเปเปˆ

Kubernetes 1.14: เบˆเบธเบ”เป€เบ”เบฑเปˆเบ™เบ‚เบญเบ‡เบชเบดเปˆเบ‡เปƒเปเปˆ

เบ„เบทเบ™เบ™เบตเป‰ เบˆเบฐเป€เบเบตเบ”เบ‚เบถเป‰เบ™ เบฅเบธเป‰เบ™เบ•เปเปˆเป„เบ›เบ‚เบญเบ‡ Kubernetes - 1.14. เบญเบตเบ‡เบ•เบฒเบกเบ›เบฐเป€เบžเบ™เบตเบ—เบตเปˆเบžเบฑเบ”เบ—เบฐเบ™เบฒเบชเปเบฒเบฅเบฑเบš blog เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เปƒเบ™เบชเบฐเบšเบฑเบšเปƒเบซเบกเปˆเบ‚เบญเบ‡เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™ Open Source เบ—เบตเปˆเบ›เบฐเป€เบชเบตเบ”เบ™เบตเป‰.

เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เบเบฒเบ™เบเบฐเบเบฝเบกเป€เบญเบเบฐเบชเบฒเบ™เบ™เบตเป‰เปเบกเปˆเบ™เป€เบญเบปเบฒเบกเบฒเบˆเบฒเบ Kubernetes เบ›เบฑเบšเบ›เบธเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก, เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡ -1.14 เปเบฅเบฐเบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡, เบ”เบถเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป, Kubernetes Enhancement Proposals (KEP).

เปƒเบซเป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบเบฒเบ™เปเบ™เบฐเบ™เปเบฒเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบˆเบฒเบ SIG cluster-lifecycle: เบเบธเปˆเบกเบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบผเบงเปเบšเบšเป„เบ”เบ™เบฒเบกเบดเบ Kubernetes (เบซเบผเบทเป€เบžเบทเปˆเบญเปƒเบซเป‰เบŠเบฑเบ”เป€เบˆเบ™เบเบงเปˆเบฒ, เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ HA เบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบˆเบปเป‰เบฒเบžเบฒเบšเบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡) เปเบกเปˆเบ™เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™ เบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เป„เบ”เป‰ เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบ—เบตเปˆโ€‹เบ„เบธเป‰เบ™โ€‹เป€เบ„เบตเบ (เปƒเบ™โ€‹เบชเบฐโ€‹เบžเบฒเบšโ€‹เบเบฒเบ™โ€‹เบ‚เบญเบ‡โ€‹เบเบธเปˆเบก node เบ”เบฝเบงโ€‹) เบ„เปเบฒโ€‹เบชเบฑเปˆเบ‡โ€‹ kubeadm (init ะธ join). เปƒเบ™เบชเบฑเป‰เบ™, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰:

  • เปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เบ—เบตเปˆเปƒเบŠเป‰เป‚เบ”เบเบเบธเปˆเบกเบ–เบทเบเป‚เบญเบ™เป„เบ›เบซเบฒเบ„เบงเบฒเบกเบฅเบฑเบš;
  • เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบ„เบงเบฒเบกโ€‹เป€เบ›เบฑเบ™โ€‹เป„เบ›โ€‹เป„เบ”เป‰โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบเบธเปˆเบก etcd เบžเบฒเบโ€‹เปƒเบ™ cluster K8s (i.e. เบเบฒเบ™โ€‹เบเปเบฒโ€‹เบˆเบฑเบ”โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เป€เบžเบดเปˆเบ‡โ€‹เบžเบฒโ€‹เบญเบฒโ€‹เป„เบชโ€‹เบžเบฒเบโ€‹เบ™เบญเบโ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบขเบนเปˆโ€‹เปƒเบ™โ€‹เป€เบกเบทเปˆเบญโ€‹เบเปˆเบญเบ™โ€‹) etcd-operator;
  • เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบตเปˆเปเบ™เบฐเบ™เปเบฒเบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบ”เบธเปˆเบ™เบ”เปˆเบฝเบ‡เบเบฒเบ™เป‚เบซเบผเบ”เบžเบฒเบเบ™เบญเบเบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบตเปˆเบ—เบปเบ™เบ—เบฒเบ™เบ•เปเปˆเบ„เบงเบฒเบกเบœเบดเบ” (เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”เบกเบฑเบ™เบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบˆเบฐเบฅเบปเบšเบฅเป‰เบฒเบ‡เบเบฒเบ™เป€เบžเบดเปˆเบ‡เบžเบฒเบญเบฒเป„เบชเบ™เบตเป‰, เปเบ•เปˆเบšเปเปˆเปเบกเปˆเบ™เปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ™เบตเป‰).

Kubernetes 1.14: เบˆเบธเบ”เป€เบ”เบฑเปˆเบ™เบ‚เบญเบ‡เบชเบดเปˆเบ‡เปƒเปเปˆ
เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเบณเบ‚เบญเบ‡เบเบธเปˆเบก Kubernetes HA เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบ”เป‰เบงเบ kubeadm

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบชเบฒเบกเบฒเบ”เบžเบปเบšเป„เบ”เป‰เปƒเบ™ เบเบฒเบ™โ€‹เบชเบฐโ€‹เป€เบซเบ™เบตโ€‹เบเบฒเบ™โ€‹เบญเบญเบโ€‹เปเบšเบšโ€‹. เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰เปเบกเปˆเบ™เบฅเปเบ„เบญเบเบกเบฒเบ”เบปเบ™เบ™เบฒเบ™เปเบ—เป‰เป†: เป€เบงเบตเบŠเบฑเปˆเบ™ alpha เบ„เบฒเบ”เบงเปˆเบฒเบˆเบฐเบเบฑเบšเบกเบฒเบขเบนเปˆเปƒเบ™ K8s 1.9, เปเบ•เปˆเบงเปˆเบฒเบžเบฝเบ‡เปเบ•เปˆเบ›เบฒเบเบปเบ”เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™.

API

เบ—เบตเบกเบ‡เบฒเบ™ apply เปเบฅเบฐเป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เปเบฅเป‰เบงเป€เบงเบปเป‰เบฒ เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบงเบฑเบ”เบ–เบธเบ›เบฐเบเบฒเบ” เบœเปˆเบฒเบ™ เบˆเบฒเบเบ™เบฑเป‰เบ™ kubectl เปƒเบ™ apiserver. เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเป€เบญเบ‡เบญเบฐเบ—เบดเบšเบฒเบเบชเบฑเป‰เบ™เป†เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเป‚เบ”เบเบเบฒเบ™เป€เบงเบปเป‰เบฒเปเบšเบšเบ™เบฑเป‰เบ™ kubectl apply - เบžเบฒเบเบชเปˆเบงเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเบ™ Kubernetes, เปเบ™เบงเปƒเบ”เบเปเปˆเบ•เบฒเบก, "เบกเบฑเบ™เป€เบ•เบฑเบกเป„เบ›เบ”เป‰เบงเบเบ‚เปเป‰เบšเบปเบเบžเปˆเบญเบ‡เปเบฅเบฐเบเบฒเบเบ—เบตเปˆเบˆเบฐเปเบเป‰เป„เบ‚," เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบซเบ™เป‰เบฒเบ—เบตเปˆเบ™เบตเป‰เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ–เบทเบเบ™เปเบฒเบเบฑเบšเบ„เบทเบ™เบชเบนเปˆเบชเบฐเบžเบฒเบšเบ›เบปเบเบเบฐเบ•เบดเปเบฅเบฐเบ–เบทเบเป‚เบญเบ™เป„เบ›เบซเบฒเบเบปเบ™เบ„เบงเบšเบ„เบธเบก. เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเปเบฅเบฐเบŠเบฑเบ”เป€เบˆเบ™เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบกเบตเบขเบนเปˆเปƒเบ™เบกเบทเป‰เบ™เบตเป‰:

Kubernetes 1.14: เบˆเบธเบ”เป€เบ”เบฑเปˆเบ™เบ‚เบญเบ‡เบชเบดเปˆเบ‡เปƒเปเปˆ

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™ เป€เบ„เบช. เบ„เบงเบฒเบกเบžเป‰เบญเบกเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เปเบกเปˆเบ™เบญเบฑเบ™เบŸเบฒ (เบเบฒเบ™เบชเบปเปˆเบ‡เป€เบชเบตเบกเป€เบ›เบฑเบ™เป€เบšเบ•เป‰เบฒเปเบกเปˆเบ™เบงเบฒเบ‡เปเบœเบ™เป„เบงเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เปˆเบญเบ Kubernetes เบ•เปเปˆเป„เบ›).

เบกเบตเปƒเบซเป‰เบขเบนเปˆเปƒเบ™เบชเบฐเบšเบฑเบš alpha เป‚เบญเบเบฒเบ” เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เป‚เบ„เบ‡เบเบฒเบ™ OpenAPI v3 เบชเปเบฒเบฅเบฑเบš เบเบฒเบ™เบชเป‰เบฒเบ‡ เปเบฅเบฐเป€เบœเบตเบเปเบœเปˆเป€เบญเบเบฐเบชเบฒเบ™ OpenAPI เบชเปเบฒเบฅเบฑเบš CustomResources (CR) เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบเบงเบ”เบชเบญเบš (เบ”เป‰เบฒเบ™เป€เบŠเบตเบšเป€เบงเบต) เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰เบเบณเบ™เบปเบ”เป€เบญเบ‡ K8s (CustomResourceDefinition, CRD). เบเบฒเบ™เป€เบœเบตเบเปเบœเปˆ OpenAPI เบชเปเบฒเบฅเบฑเบš CRD เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบฅเบนเบเบ„เป‰เบฒ (เป€เบŠเบฑเปˆเบ™: kubectl) เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบขเบนเปˆเบ‚เป‰เบฒเบ‡เป€เบˆเบปเป‰เบฒ (เบžเบฒเบเปƒเบ™ kubectl create ะธ kubectl apply) เปเบฅเบฐโ€‹เบญเบญเบโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™โ€‹เบ•เบฒเบกโ€‹เป‚เบ„เบ‡โ€‹เบเบฒเบ™ (kubectl explain). เบฅเบฒเบเบฅเบฐเบญเบฝเบ” - เปƒเบ™ เป€เบ„เบช.

เบšเบฑเบ™เบ—เบถเบเบ—เบตเปˆเบกเบตเบขเบนเปˆเบเปˆเบญเบ™เปเบฅเป‰เบง เบ•เบญเบ™เบ™เบตเป‰เบเบณเบฅเบฑเบ‡เป€เบ›เบตเบ”เบขเบนเปˆ เบเบฑเบšเบ—เบธเบ‡ O_APPEND (เปเบ•เปˆเบšเปเปˆเปเบกเปˆเบ™ O_TRUNC) เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบชเบนเบ™เป€เบชเบเป„เบกเป‰เบ—เปˆเบญเบ™เปƒเบ™เบšเบฒเบ‡เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เปเบฅเบฐเป€เบžเบทเปˆเบญเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเบ‚เบญเบ‡เบเบฒเบ™เบ•เบฑเบ”เป„เบกเป‰เบ—เปˆเบญเบ™เบ—เบตเปˆเบกเบตเบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เบžเบฒเบเบ™เบญเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบซเบกเบธเบ™.

เบ™เบญเบเบˆเบฒเบเบ™เบตเป‰เปƒเบ™เบชเบฐเบžเบฒเบšเบเบฒเบ™เบ‚เบญเบ‡ Kubernetes API, เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เป„เบ”เป‰เบงเปˆเบฒเปƒเบ™ PodSandbox ะธ PodSandboxStatus เป€เบžเบตเปˆเบก เบžเบฒเบเบชเบฐเบซเบ™เบฒเบก runtime_handler เป€เบžเบทเปˆเบญเบšเบฑเบ™เบ—เบถเบเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบš RuntimeClass เปƒเบ™เบเบฑเบ (เบญเปˆเบฒเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบ‚เปเป‰เบ„เบงเบฒเบกเบเปˆเบฝเบงเบเบฑเบš Kubernetes 1.12 เบ›เปˆเบญเบเบญเบญเบเบกเบฒ, เบšเปˆเบญเบ™เบ—เบตเปˆเบซเป‰เบญเบ‡เบฎเบฝเบ™เบ™เบตเป‰เบ›เบฒเบเบปเบ”เป€เบ›เบฑเบ™เบชเบฐเบšเบฑเบš alpha), เปเบฅเบฐเปƒเบ™ Admission Webhooks เบ›เบฐเบ•เบดเบšเบฑเบ” เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบงเปˆเบฒเบชเบฐเบšเบฑเบšเปƒเบ” AdmissionReview เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™. เบชเบธเบ”เบ—เป‰เบฒเบ, เบเบปเบ”เบฅเบฐเบšเบฝเบš Admission Webhooks เปเบกเปˆเบ™เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™ เบชเบฒเบกเบฒเบ”เบˆเปเบฒเบเบฑเบ” เบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเป‚เบ”เบ namespaces เปเบฅเบฐเบเบญเบšเบ‚เบญเบ‡เบเบธเปˆเบก.

เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒ

PersistentLocalVolumes, เป€เบŠเบดเปˆเบ‡เบกเบตเบชเบฐเบ–เบฒเบ™เบฐเป€เบšเบ•เป‰เบฒเบ•เบฑเป‰เบ‡เปเบ•เปˆเป€เบ›เบตเบ”เบ•เบปเบง K8s 1.10, เบ›เบฐโ€‹เบเบฒเบ” เบ„เบปเบ‡เบ—เบตเปˆ (GA): เบ›เบฐเบ•เบนเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰เบˆเบฐเบšเปเปˆเบ–เบทเบเบ›เบดเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เบญเบตเบเบ•เปเปˆเป„เบ› เปเบฅเบฐเบˆเบฐเบ–เบทเบเบฅเบถเบšเบญเบญเบเปƒเบ™ Kubernetes 1.17.

เป‚เบญเบเบฒเบ” เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ API เบฅเบปเบ‡ (เบ•เบปเบงเบขเปˆเบฒเบ‡, เบŠเบทเปˆเบเบฑเบ) เบชเปเบฒเบฅเบฑเบšเบŠเบทเปˆเบ‚เบญเบ‡เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ—เบตเปˆเบ•เบดเบ”เบ•เบฑเป‰เบ‡เป€เบ›เบฑเบ™ subPath, เป„เบ”เป‰เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ - เปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเปƒเบซเบกเปˆ subPathExpr, เป€เบŠเบดเปˆเบ‡เบ›เบฐเบˆเบธเบšเบฑเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบŠเบทเปˆเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™. เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ›เบฒเบเบปเบ”เบขเบนเปˆเปƒเบ™ Kubernetes 1.11, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบš 1.14 เบกเบฑเบ™เบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบญเบฑเบ™เบŸเบฒ.

เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบเบฒเบ™เบ›เปˆเบญเบ Kubernetes เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบซเบผเบฒเบเปเบกเปˆเบ™เป„เบ”เป‰เบ–เบทเบเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเบชเปเบฒเบฅเบฑเบš CSI (Container Storage Interface):

CSI

เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป„เบ”เป‰ (เป€เบ›เบฑเบ™เบชเปˆเบงเบ™เปœเบถเปˆเบ‡เบ‚เบญเบ‡เป€เบงเบตเบŠเบฑเบ™เบญเบฑเบ™เบŸเบฒ) เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ เบ›เบฑเบšเบ‚เบฐเปœเบฒเบ”เบชเบณเบฅเบฑเบšเบ›เบฐเบฅเบดเบกเบฒเบ™ CSI. เป€เบžเบทเปˆเบญเปƒเบŠเป‰เบกเบฑเบ™, เบ—เปˆเบฒเบ™เบˆเบฐเบ•เป‰เบญเบ‡เป€เบ›เบตเบ”เปƒเบŠเป‰เบ›เบฐเบ•เบนเบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ”เบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ ExpandCSIVolumes, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบเบฒเบ™เบกเบตเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบ™เบตเป‰เบขเบนเปˆเปƒเบ™เป„เบ”เป€เบงเบต CSI เบชเบฐเป€เบžเบฒเบฐ.

เบ„เบธเบ™โ€‹เบ™เบฐโ€‹เบชเบปเบกโ€‹เบšเบฑเบ”โ€‹เบญเบตเบโ€‹เบ›เบฐโ€‹เบเบฒเบ™โ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบชเปเบฒโ€‹เบฅเบฑเบš CSI เปƒเบ™โ€‹เบชเบฐโ€‹เบšเบฑเบš alpha - เป‚เบญเบเบฒเบ” เบญเป‰เบฒเบ‡เบญเบตเบ‡เป‚เบ”เบเบเบปเบ‡ (i.e. เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เปƒเบŠเป‰ PV/PVC) เบเบฑเบšเบ›เบฐเบฅเบดเบกเบฒเบ™ CSI เบžเบฒเบเปƒเบ™เบ‚เปเป‰เบเปเบฒเบ™เบปเบ”เบ‚เบญเบ‡เบเบฑเบ. เบ™เบตเป‰ เป€เบญเบปเบฒเบ‚เปเป‰เบˆเปเบฒเบเบฑเบ”เปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ CSI เป€เบ›เบฑเบ™เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เบซเปˆเบฒเบ‡เป„เบเบชเบญเบเบซเบผเบตเบเบชเบฐเป€เบžเบฒเบฐ, เป€เบ›เบตเบ”เบ›เบฐเบ•เบนเบชเบนเปˆเป‚เบฅเบเบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบ‚เบปเบฒ เบ›เบฐเบฅเบดเบกเบฒเบ™ ephemeral เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™. เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰ (เบ•เบปเบงเบขเปˆเบฒเบ‡เบˆเบฒเบเป€เบญเบเบฐเบชเบฒเบ™) เบ•เป‰เบญเบ‡โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เป€เบ›เบตเบ”โ€‹เปƒเบŠเป‰โ€‹เบ‡เบฒเบ™โ€‹ CSIInlineVolume เบ›เบฐเบ•เบนเบฎเบปเป‰เบงเบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ”.

เบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเบ„เบทเบšเบซเบ™เป‰เบฒเปƒเบ™ "เบžเบฒเบเปƒเบ™" เบ‚เบญเบ‡ Kubernetes เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบš CSI, เบ—เบตเปˆเบšเปเปˆเป€เบซเบฑเบ™เป„เบ”เป‰เบŠเบฑเบ”เป€เบˆเบ™เบเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เบชเบธเบ”เบ—เป‰เบฒเบ (เบœเบนเป‰เป€เบšเบดเปˆเบ‡เปเบเบ‡เบฅเบฐเบšเบปเบš) ... เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเป„เบ”เป‰เบ–เบทเบเบšเบฑเบ‡เบ„เบฑเบšเปƒเบซเป‰เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเบญเบ‡เบชเบฐเบšเบฑเบšเบ‚เบญเบ‡เปเบ•เปˆเบฅเบฐ plugin เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒ: เบซเบ™เบถเปˆเบ‡ - "เปƒเบ™. เบงเบดเบ—เบตเป€เบเบปเปˆเบฒ", เบžเบฒเบเปƒเบ™ codebase K8s (เปƒเบ™ -tree), เปเบฅเบฐเบ—เบตเบชเบญเบ‡ - เป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡ CSI เปƒเบซเบกเปˆ. (เบญเปˆเบฒเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบ™ เบ—เบตเปˆเบ™เบตเป‰). เบ™เบตเป‰เป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบ„เบงเบฒเบกเบšเปเปˆเบชเบฐเบ”เบงเบเบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเปƒเบˆเบ—เบตเปˆเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เปเบเป‰เป„เบ‚เบเป‰เบญเบ™เบงเปˆเบฒ CSI เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบชเบฐเบ–เบฝเบ™เบฅเบฐเบžเบฒเบš. เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เบšเปเปˆเป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบžเบฝเบ‡เปเบ•เปˆเบ›เบฐเบ•เบดเป€เบชเบ” API เบ‚เบญเบ‡ plugins เบžเบฒเบเปƒเบ™ (เปƒเบ™เบ•เบปเป‰เบ™เป„เบกเป‰) เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบ เบ™เบฐเป‚เบเบšเบฒเบ Kubernetes เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡.

เบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เป€เบฎเบฑเบ”เปƒเบซเป‰เบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบชเบฐเบšเบฑเบš alpha เบšเบฑเบ™เบฅเบธเป„เบ”เป‰ เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบเบปเบเบเป‰เบฒเบ เบฅเบฐเบซเบฑเบ” plugin เบžเบฒเบเปƒเบ™, เบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบ›เบฑเบ™ in-tree, เปƒเบ™ CSI plugins, เบ‚เบญเบšเปƒเบˆเบ—เบตเปˆเบ„เบงเบฒเบกเบเบฑเบ‡เบงเบปเบ™เบ‚เบญเบ‡เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบˆเบฐเบซเบผเบธเบ”เบฅเบปเบ‡เป€เบžเบทเปˆเบญเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเบฐเบšเบฑเบšเบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡ plugins เบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ, เปเบฅเบฐเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบš APIs เป€เบเบปเปˆเบฒเบˆเบฐเบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเปเบฅเบฐเบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ›เบฐเบเบฒเบ”เบงเปˆเบฒเบฅเป‰เบฒเบชเบฐเป„เบซเบกเปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ›เบปเบเบเบฐเบ•เบด. เบ„เบฒเบ”เบงเปˆเบฒเป‚เบ”เบ Kubernetes เบฅเบธเป‰เบ™เบ•เปเปˆเป„เบ› (1.15) เบ—เบธเบเบ›เบฅเบฑเบเบญเบดเบ™เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เบ„เบฅเบฒเบงเบˆเบฐเบ–เบทเบเป‚เบญเบ™เบเป‰เบฒเบ, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเป€เบšเบ•เป‰เบฒ เปเบฅเบฐเบˆเบฐเบ–เบทเบเป€เบ›เบตเบ”เปƒเบŠเป‰เปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ K8s เบ•เบฒเบกเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เบชเปเบฒเบฅเบฑเบšเบฅเบฒเบเบฅเบฐเบญเบฝเบ”, เป€เบšเบดเปˆเบ‡ เบเบฒเบ™โ€‹เบชเบฐโ€‹เป€เบซเบ™เบตโ€‹เบเบฒเบ™โ€‹เบญเบญเบโ€‹เปเบšเบšโ€‹. เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเบ™เบตเป‰เบเบฑเบ‡เบชเบปเปˆเบ‡เบœเบปเบ™เปƒเบซเป‰ เบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบผเบง เบˆเบฒเบเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบ›เบฐเบฅเบดเบกเบฒเบ™เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป‚เบ”เบเบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เบŸเบฑเบ‡เบชเบฐเป€เบžเบฒเบฐ (AWS, Azure, GCE, Cinder).

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบญเบธเบ›เบฐเบเบญเบ™เบ•เบฑเบ™เบเบฑเบš CSI (CSIBlockVolume) เป‚เบญเบ™ เป€เบ›เบฑเบ™เป€เบงเบตเบŠเบฑเบ™เป€เบšเบ•เป‰เบฒ.

Nodes/Kubelet

เบชเบฐโ€‹เบšเบฑเบš Alpha เบ™เปเบฒโ€‹เบชเบฐโ€‹เป€เบซเบ™เบตโ€‹ เบˆเบธเบ”โ€‹เบชเบธเบ”โ€‹เบ—เป‰เบฒเบโ€‹เปƒเบซเบกเปˆโ€‹ เปƒเบ™ Kubelet, เบญเบญเบเปเบšเบšเบชเปเบฒเบฅเบฑเบš เบเบฑเบšเบ„เบทเบ™ metrics เบเปˆเบฝเบงเบเบฑเบšเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™. เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เปเบฅเป‰เบง, เบ–เป‰เบฒเบเปˆเบญเบ™เบ™เบตเป‰ Kubelet เป„เบ”เป‰เบฎเบฑเบšเบชเบฐเบ–เบดเบ•เบดเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ container เบˆเบฒเบ cAdvisor, เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบกเบฒเบˆเบฒเบเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก runtime เบ•เบนเป‰เบ„เบญเบ™เป€เบ—เบ™เป€เบ™เบตเป‚เบ”เบเบœเปˆเบฒเบ™ CRI (Container Runtime Interface), เปเบ•เปˆเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš Docker เบฎเบธเปˆเบ™เป€เบเบปเปˆเบฒเบเบฑเบ‡เบ–เบทเบเบฎเบฑเบเบชเบฒเป„เบงเป‰. เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰, เบชเบฐเบ–เบดเบ•เบดเบ—เบตเปˆเป€เบเบฑเบšเบเปเบฒเบขเบนเปˆเปƒเบ™ Kubelet เป„เบ”เป‰เบ–เบทเบเบชเบปเปˆเบ‡เบœเปˆเบฒเบ™ REST API, เปเบ•เปˆเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบขเบนเปˆเบ—เบตเปˆ /metrics/resource/v1alpha1. เบเบธเบ”เบ—เบฐเบชเบฒเบ”เป„เบฅเบเบฐเบเบฒเบงเบ‚เบญเบ‡เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ เปเบกเปˆเบ™ เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบซเบผเบธเบ”เบœเปˆเบญเบ™เบŠเบธเบ”เบ‚เบญเบ‡ metrics เบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เป‚เบ”เบ Kubelet. เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, เบ•เบปเบงเบŠเบตเป‰เบงเบฑเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡ เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป‚เบ—เบซเบฒ เบšเปเปˆเปเบกเปˆเบ™ "เบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบซเบผเบฑเบ", เปเบ•เปˆ "เบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™", เปเบฅเบฐเบ–เบทเบเบญเบฐเบ—เบดเบšเบฒเบเบงเปˆเบฒเป€เบ›เบฑเบ™ "เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบŠเบฑเป‰เบ™เบ—เปเบฒเบญเบดเบ”, เป€เบŠเบฑเปˆเบ™ cpu, เปเบฅเบฐเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ".

A nuance เบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบซเบผเบฒเบ: เป€เบ–เบดเบ‡เบงเปˆเบฒเบˆเบฐเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™เบ‚เบญเบ‡เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ‚เบญเบ‡ gRPC เปƒเบ™เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบเบฑเบšเบเปเบฅเบฐเบ™เบตเบ•เปˆเบฒเบ‡เป†เบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบฎเบนเบšเปเบšเบš Prometheus. (เป€เบšเบดเปˆเบ‡เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ‚เบญเบ‡เบซเบ™เบถเปˆเบ‡เปƒเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰), เบœเบนเป‰เบ‚เบฝเบ™เบกเบฑเบเบฎเบนเบšเปเบšเบšเบ‚เปเป‰เบ„เบงเบฒเบกเบ‚เบญเบ‡ Prometheus เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบเบฒเบ™เบ™เปเบฒเบžเบฒเบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ™เบตเป‰เปƒเบ™เบŠเบธเบกเบŠเบปเบ™.

"gRPC เบšเปเปˆเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบšเบ—เปเปˆเบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™. Endpoint เบˆเบฐเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบปเปˆเบ‡ metrics เบเบฑเบš Metrics Server เบซเบผเบทเบญเบปเบ‡เบ›เบฐเบเบญเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เป‚เบ”เบเบเบปเบ‡เบเบฑเบšเบกเบฑเบ™. เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฎเบนเบšเปเบšเบšเบ‚เปเป‰เบ„เบงเบฒเบก Prometheus เป€เบกเบทเปˆเบญเปƒเบŠเป‰เบ–เบฒเบ™เบ„เบงเบฒเบกเบˆเปเบฒเปƒเบ™ Metrics Server เบ”เบตโ€‹เบžเป เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเบ—เบตเปˆเบˆเบฐเบกเบฑเบ Prometheus เบซเบผเบฒเบเบเบงเปˆเบฒ gRPC เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบเบฒเบ™เบฎเบฑเบšเบฎเบญเบ‡เป€เบญเบปเบฒ Prometheus เบขเปˆเบฒเบ‡เบเบงเป‰เบฒเบ‡เบ‚เบงเบฒเบ‡เปƒเบ™เบŠเบธเบกเบŠเบปเบ™. เป€เบกเบทเปˆเบญเบฎเบนเบšเปเบšเบš OpenMetrics เบกเบตเบ„เบงเบฒเบกเบซเบกเบฑเป‰เบ™เบ„เบปเบ‡เบซเบผเบฒเบ, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเบซเบฒเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” gRPC เบ”เป‰เบงเบเบฎเบนเบšเปเบšเบšเบ—เบตเปˆเบญเบตเบ‡เปƒเบชเปˆ proto."

Kubernetes 1.14: เบˆเบธเบ”เป€เบ”เบฑเปˆเบ™เบ‚เบญเบ‡เบชเบดเปˆเบ‡เปƒเปเปˆ
เบซเบ™เบถเปˆเบ‡เปƒเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบฎเบนเบšเปเบšเบš gRPC เปเบฅเบฐ Prometheus เบขเบนเปˆเปƒเบ™เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ” Kubelet เปƒเบซเบกเปˆเบชเปเบฒเบฅเบฑเบš metrics. เบเบฃเบฒเบŸเป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปเบฅเบฐเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบญเบทเปˆเบ™เป†เบชเบฒเบกเบฒเบ”เบžเบปเบšเป„เบ”เป‰เปƒเบ™ เป€เบ„เบช.

เปƒเบ™เบšเบฑเบ™เบ”เบฒเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบญเบทเปˆเบ™เป†:

  • Kubelet เบ”เบฝเบงเบ™เบตเป‰ (เบ„เบฑเป‰เบ‡เบ”เบฝเบง) เบžเบฐเบเบฒเบเบฒเบกเบขเบธเบ” เบšเบฑเบ™เบˆเบธเบขเบนเปˆเปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบ—เบตเปˆเบšเปเปˆเบฎเบนเป‰เบˆเบฑเบเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐ restart เปเบฅเบฐเบฅเบถเบšเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™.
  • เบเบฒเบ™ เบ™เบณ เปƒเบŠเป‰ PodPresets เบ”เบฝเบงเบ™เบตเป‰เป€เบ–เบดเบ‡เบ–เบฑเบ‡เบšเบฑเบ™เบˆเบธ เปเบกเปˆเบ™เป€เบžเบตเปˆเบก เบ‚เปเป‰เบกเบนเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบžเบฒเบŠเบฐเบ™เบฐเบ›เบปเบเบเบฐเบ•เบด.
  • เบ„เบนเป€เบšเป€เบฅเบ” เป„เบ”เป‰โ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹ usageNanoCores เบˆเบฒเบเบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เบชเบฐเบ–เบดเบ•เบด CRI, เปเบฅเบฐเบชเปเบฒเบฅเบฑเบš nodes เปเบฅเบฐ containers เปƒเบ™ Windows เป€เบžเบตเปˆเบก เบชเบฐโ€‹เบ–เบดโ€‹เบ•เบดโ€‹เป€เบ„เบทเบญโ€‹เบ‚เปˆเบฒเบโ€‹.
  • เบ‚เปเป‰เบกเบนเบ™เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™ เปเบฅเบฐเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเบณเป„เบ”เป‰เบ–เบทเบเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เปƒเบ™เบ›เป‰เบฒเบเบเบณเบเบฑเบš kubernetes.io/os ะธ kubernetes.io/arch Node objects (เป‚เบญเบ™เบˆเบฒเบเป€เบšเบ•เป‰เบฒเป„เบ›เบซเบฒ GA).
  • เบ„เบงเบฒเบกโ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบฅเบฐโ€‹เบšเบธโ€‹เบเบธเปˆเบกโ€‹เบœเบนเป‰โ€‹เปƒเบŠเป‰โ€‹เบฅเบฐโ€‹เบšเบปเบšโ€‹เบชเบฐโ€‹เป€เบžเบฒเบฐโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบšเบฑเบ™โ€‹เบˆเบธโ€‹เปƒเบ™ pod (RunAsGroup, เบ›เบฒเบเบปเบ”เบขเบนเปˆเปƒเบ™ K8s 1.11) เบ‚เบฑเป‰เบ™เบชเบนเบ‡ เบเปˆเบญเบ™เป€เบšเบ•เป‰เบฒ (เป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เบ•เบฒเบกเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™).
  • du เปเบฅเบฐเบŠเบญเบเบซเบฒเบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™ cAdvisor, เบ—เบปเบ”เปเบ—เบ™ เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ” Go.

CLI

เปƒเบ™ cli-runtime เปเบฅเบฐ kubectl เป€เบžเบตเปˆเบก -k เบ—เบธเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบเบฑเบš เบ›เบฑเบšเปเบ•เปˆเบ‡ (เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบขเบนเปˆเปƒเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ), i.e. เป€เบžเบทเปˆเบญเบ›เบฐเบกเบงเบ™เบœเบปเบ™เป„เบŸเบฅเปŒ YAML เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบˆเบฒเบเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบเบฒเบ™เบ›เบฑเบšเปเบ•เปˆเบ‡เบžเบดเป€เบชเบ” (เบชเปเบฒเบฅเบฑเบšเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบžเบงเบเบกเบฑเบ™, เป€เบšเบดเปˆเบ‡ เป€เบ„เบช):

Kubernetes 1.14: เบˆเบธเบ”เป€เบ”เบฑเปˆเบ™เบ‚เบญเบ‡เบชเบดเปˆเบ‡เปƒเปเปˆ
เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เป„เบŸเบฅเปŒเบ‡เปˆเบฒเบเบ”เบฒเบ เบเบฒเบ™เบ›เบฑเบšเปเบ•เปˆเบ‡ (เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™เบซเบผเบฒเบเบ‚เบญเบ‡ kustomize เปเบกเปˆเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบžเบฒเบเปƒเบ™ เบเบฒเบ™เบŠเป‰เบญเบ™เบเบฑเบ™)

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™:

  • เป€เบžเบตเปˆเบกเปเบฅเป‰เบง เบ—เบตเบกเบ‡เบฒเบ™เปƒเบซเบกเปˆ kubectl create cronjob, เบŠเบทเปˆเป€เบงเบปเป‰เบฒเบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡.
  • ะ’ kubectl logs เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰ เบฅเบงเบก เบ—เบธเบ‡ -f (--follow เบชเปเบฒเบฅเบฑเบšเบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบ–เปˆเบฒเบเบ—เบญเบ”) เปเบฅเบฐ -l (--selector เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ›เป‰เบฒเบ).
  • kubectl เบชเบญเบ™ เบ„เบฑเบ”เบฅเบญเบเป„เบŸเบฅเปŒเบ—เบตเปˆเป€เบฅเบทเบญเบเป‚เบ”เบ wild card.
  • เบเบฑเบšเบ—เบตเบกเบ‡เบฒเบ™ kubectl wait เป€เบžเบตเปˆเบก เบ—เบธเบ‡ --all เป€เบžเบทเปˆเบญเป€เบฅเบทเบญเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบฑเบ‡เปเบปเบ”เปƒเบ™ namespace เบ‚เบญเบ‡เบ›เบฐเป€เบžเบ”เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบตเปˆเบฅเบฐเบšเบธ.

เบญเบทเปˆเบ™เป†

เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ•เปเปˆเป„เบ›เบ™เบตเป‰เป„เบ”เป‰เบฎเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเบ„เบปเบ‡เบ—เบตเปˆ (GA):

  • ReadinessGate, เปƒเบŠเป‰เปƒเบ™เบชเบฐเป€เบžเบฒเบฐเบ‚เบญเบ‡เบเบฑเบเป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบ—เบตเปˆเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบ„เบงเบฒเบกเบžเป‰เบญเบกเบ‚เบญเบ‡เบเบฑเบ;
  • เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบซเบ™เป‰เบฒเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ (เบ›เบฐเบ•เบนเบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ”เป€เบญเบตเป‰เบ™เบงเปˆเบฒ HugePages);
  • CustomPodDNS;
  • PriorityClass API เบšเบธเบฅเบดเบกเบฐเบชเบดเบ” Pod & Preemption.

เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบญเบทเปˆเบ™เป†เบ—เบตเปˆเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเปƒเบ™ Kubernetes 1.14:

  • เบ™เบฐเป‚เบเบšเบฒเบ RBAC เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบšเปเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ API เบญเบตเบเบ•เปเปˆเป„เบ› discovery ะธ access-review เบœเบนเป‰โ€‹เปƒเบŠเป‰โ€‹เป‚เบ”เบโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบเบงเบ”โ€‹เบชเบญเบšโ€‹ (เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบฎเบญเบ‡).
  • เบฎเบญเบ‡เบฎเบฑเบš CoreDNS เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™ เบฎเบฑเบšเบ›เบฐเบเบฑเบ™ Linux เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™, เบชเบฐเบ™เบฑเป‰เบ™เป€เบกเบทเปˆเบญเปƒเบŠเป‰ kubeadm เป€เบžเบทเปˆเบญเบ™เบณเปƒเบŠเป‰เบกเบฑเบ™ (CoreDNS) เปƒเบ™เบเบธเปˆเบก, nodes เบˆเบฐเบ•เป‰เบญเบ‡เปเบฅเปˆเบ™เป€เบ—เบดเบ‡ Linux เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™ (nodeSelectors เปเบกเปˆเบ™เปƒเบŠเป‰เบชเบณเบฅเบฑเบšเบ‚เปเป‰เบˆเบณเบเบฑเบ”เบ™เบตเป‰).
  • เบ•เบญเบ™เบ™เบตเป‰เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ CoreDNS เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปเบฅเป‰เบง เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ เบ•เปเปˆ plugin เปเบ—เบ™เบ•เบปเบงเปเบ—เบ™. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เปƒเบ™ CoreDNS เป€เบžเบตเปˆเบก readinessProbe, เป€เบŠเบดเปˆเบ‡เบ›เป‰เบญเบ‡เบเบฑเบ™เบเบฒเบ™เบ”เบธเปˆเบ™เบ”เปˆเบฝเบ‡เบเบฒเบ™เป‚เบซเบผเบ”เปƒเบ™เบเบฑเบเบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบก (เบšเปเปˆเบžเป‰เบญเบกเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™).
  • เปƒเบ™ kubeadm, เปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™ init เบซเบผเบท upload-certs, เป„เบ”เป‰โ€‹เบเบฒเบโ€‹เป€เบ›เบฑเบ™โ€‹เป„เบ›โ€‹เป„เบ”เป‰โ€‹ เป‚เบซเบผเบ”เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบžเบทเปˆเบญเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบปเบ™เบ„เบงเบšเบ„เบธเบกเปƒเปเปˆเบเบฑเบšเบ„เบงเบฒเบกเบฅเบฑเบš kubeadm-certs (เปƒเบŠเป‰เบ—เบธเบ‡ --experimental-upload-certs).
  • เป€เบงเบตเบŠเบฑเปˆเบ™เบญเบฑเบ™เบŸเบฒเป„เบ”เป‰เบ›เบฐเบเบปเบ”เบ‚เบถเป‰เบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ Windows เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ gMSA (เบšเบฑเบ™เบŠเบตเบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบ„เบธเป‰เบกเบ„เบญเบ‡เบเบธเปˆเบก) - เบšเบฑเบ™เบŠเบตเบžเบดเป€เบชเบ”เปƒเบ™ Active Directory เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เบเบฑเบšเบšเบฑเบ™เบˆเบธเป„เบ”เป‰.
  • เบชเปเบฒเบฅเบฑเบš G.C.E. เป€เบ›เบตเบ”เปƒเบŠเป‰เปเบฅเป‰เบง เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ” mTLS เบฅเบฐเบซเบงเปˆเบฒเบ‡ etcd เปเบฅเบฐ kube-apiserver.
  • เบเบฒเบ™เบญเบฑเบšเป€เบ”เบ”เปƒเบ™เบŠเบญเบšเปเบงเบ—เบตเปˆเปƒเบŠเป‰เปเบฅเป‰เบง/เบ‚เบถเป‰เบ™เบเบฑเบš: Go 1.12.1, CSI 1.1, CoreDNS 1.3.1, เบฎเบญเบ‡เบฎเบฑเบš Docker 18.09 เปƒเบ™ kubeadm, เปเบฅเบฐ เป€เบงเบตเบŠเบฑเบ™ Docker API เบ•เปˆเบณเบชเบธเบ”เบ—เบตเปˆเบฎเบญเบ‡เบฎเบฑเบšเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เปเบกเปˆเบ™ 1.26.

PS

เบญเปˆเบฒเบ™เบเบฑเบ‡เบขเบนเปˆเปƒเบ™ blog เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ:

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™