Kubernetes 1.14: ืื™ื‘ืขืจื‘ืœื™ืง ืคื•ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ื™ื ืึธื•ื•ื•ื™ื™ืฉืึทื ื–

Kubernetes 1.14: ืื™ื‘ืขืจื‘ืœื™ืง ืคื•ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ื™ื ืึธื•ื•ื•ื™ื™ืฉืึทื ื–

ื“ื™ ื ืึทื›ื˜ ื•ื•ืขื˜ ื ืขืžืขืŸ ืึธืจื˜ ื•ื•ื™ื™ึทื˜ืขืจ ืžืขืœื“ื•ื ื’ ืคื•ืŸ Kubernetes - 1.14. ืœื•ื™ื˜ ื“ื™ ื˜ืจืึทื“ื™ืฆื™ืข ื•ื•ืึธืก ืื™ื– ื“ืขื•ื•ืขืœืึธืคึผืขื“ ืคึฟืึทืจ ืื•ื ื“ื–ืขืจ ื‘ืœืึธื’, ืžื™ืจ ื–ืขื ืขืŸ ื’ืขืจืขื“ื˜ ื•ื•ืขื’ืŸ ื“ื™ ืฉืœื™ืกืœ ืขื ื“ืขืจื•ื ื’ืขืŸ ืื™ืŸ ื“ื™ ื ื™ื™ึทืข ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹ื“ืขื ื•ื•ื•ื ื“ืขืจืœืขืš ืขืคึฟืŸ ืžืงื•ืจ ืคึผืจืึธื“ื•ืงื˜.

ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ื’ืขื ื™ืฆื˜ ืฆื• ืฆื•ื’ืจื™ื™ื˜ืŸ ื“ืขื ืžืึทื˜ืขืจื™ืึทืœ ืื™ื– ื’ืขื ื•ืžืขืŸ ืคื•ืŸ ืงื•ื‘ืขืจื ืขื˜ืขืก ื™ืžืคึผืจื•ื•ื•ืžืึทื ืฅ ื˜ืจืึทืงื™ื ื’ ื˜ื™ืฉืŸ, CHANGELOG-1.14 ืื•ืŸ ืคึฟืึทืจื‘ื•ื ื“ืขื ืข ื™ืฉื•ื–, ืฆื™ืขืŸ ืจื™ืงื•ื•ืขืก, Kubernetes Enhancement Proposals (KEP).

ืœืึธืžื™ืจ ืึธื ื”ื™ื™ื‘ืŸ ืžื™ื˜ ืึท ื•ื•ื™ื›ื˜ื™ืง ื”ืงื“ืžื” ืคื•ืŸ SIG ืงื ื•ื™ืœ-ืœื™ืคืขืกื™ืงืœืข: ื“ื™ื ืึทืžื™ืฉ ืคืึทื™ืœืึธื•ื•ืขืจ ืงืœืึทืกื˜ืขืจื– Kubernetes (ืึธื“ืขืจ ืฆื• ื–ื™ื™ืŸ ืžืขืจ ื’ืขื ื•ื™, ื–ื™ืš-ื›ืึธื•ืกื˜ื™ื“ HA ื“ื™ืคึผืœื•ื™ืžืึทื ืฅ) ืื™ื– ืื™ืฆื˜ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื‘ืืฉืืคืŸ ื ื™ืฆืŸ ื‘ืึทืงืึทื ื˜ืข (ืื™ืŸ ื“ืขื ืงืึธื ื˜ืขืงืกื˜ ืคื•ืŸ ืื™ื™ืŸ-ื ืึธื“ืข ืงืœืึทืกื˜ืขืจื–) ืงืึทืžืึทื ื“ื– kubeadm (init ะธ join). ื‘ืงื™ืฆื•ืจ, ืคืืจ ื“ืขื:

  • ืกืขืจื˜ื™ืคื™ืงืึทืฅ ื’ืขื ื™ืฆื˜ ื“ื•ืจืš ื“ืขื ืงื ื•ื™ืœ ื–ืขื ืขืŸ ื˜ืจืึทื ืกืคืขืจื“ ืฆื• ืกื™ืงืจื™ืฅ;
  • ืคึฟืึทืจ ื“ื™ ืžืขื’ืœืขื›ืงื™ื™ื˜ ืฆื• ื ื•ืฆืŸ ื“ื™ ืขื˜ืง ืงื ื•ื™ืœ ืื™ืŸ ื“ื™ K8s ืงื ื•ื™ืœ (ื“"ื” ื‘ืึทืงื•ืžืขืŸ ื‘ืึทืคืจื™ื™ึทืขืŸ ืคื•ืŸ ื“ื™ ืคืจื™ืขืจ ื™ื’ื–ื™ืกื˜ื™ื ื’ ืคื•ื ื“ืจื•ื™ืกื ื“ื™ืง ื“ืขืคึผืขื ื“ืขื ืกื™) ืขื˜ืง-ืึธืคึผืขืจืึทื˜ืึธืจ;
  • ื“ืึธืงื•ืžืขื ื˜ืŸ ื“ื™ ืจืขืงืึทืžืขื ื“ื™ื“ ืกืขื˜ื˜ื™ื ื’ืก ืคึฟืึทืจ ืึท ืคื•ื ื“ืจื•ื™ืกื ื“ื™ืง ืžืึทืกืข ื‘ืึทืœืึทื ืกืขืจ ื•ื•ืึธืก ื’ื™ื˜ ืึท ืฉื•ืœื“-ื˜ืึธืœืขืจืึทื ื˜ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ (ืื™ืŸ ื“ืขืจ ืฆื•ืงื•ื ืคึฟื˜ ืขืก ืื™ื– ืคึผืœืึทื ื ืขื“ ืฆื• ืขืœื™ืžื™ื ื™ืจืŸ ื“ืขื ื“ืขืคึผืขื ื“ืขื ืกื™, ืึธื‘ืขืจ ื ื™ืฉื˜ ืื™ืŸ ื“ืขื ื‘ื™ื ืข).

Kubernetes 1.14: ืื™ื‘ืขืจื‘ืœื™ืง ืคื•ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ื™ื ืึธื•ื•ื•ื™ื™ืฉืึทื ื–
ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจ ืคื•ืŸ ืึท Kubernetes HA ืงื ื•ื™ืœ ื‘ืืฉืืคืŸ ืžื™ื˜ kubeadm

ื“ืขื˜ืึทื™ืœืก ืคื•ืŸ ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขืคึฟื•ื ืขืŸ ืื™ืŸ ืคึผืœืึทืŸ ืคืึธืจืฉืœืึธื’. ื“ืขืจ ืฉื˜ืจื™ืš ืื™ื– ื’ืขื•ื•ืขืŸ ื‘ืืžืช ืœืึทื ื’-ืึทื•ื•ื™ื™ื˜ืึทื“: ื“ื™ ืึทืœืฃ ื•ื•ืขืจืกื™ืข ืื™ื– ื’ืขื•ื•ืขืŸ ื“ืขืจื•ื•ืึทืจื˜ ืฆื•ืจื™ืง ืื™ืŸ K8s 1.9, ืึธื‘ืขืจ ื‘ืœื•ื™ื– ืืจื•ื™ืก ืื™ืฆื˜.

ืึทืคึผื™

ืงืึธืœืขืงื˜ื™ื•ื• apply ืื•ืŸ ื‘ื›ืœืœ ื’ืขืจืขื“ื˜ ื“ืขืงืœืึทืจืึทื˜ื™ื•ื•ืข ื›ื™ื™ืคืขืฅ ืคืึทืจื•ื•ืึทืœื˜ื•ื ื’ ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ืคื•ืŸ kubectl ืื™ืŸ ืึทืคึผื™ืกืขืจื•ื•ืขืจ. ื“ื™ ื“ืขื•ื•ืขืœืึธืคึผืขืจืก ื–ื™ืš ื‘ืขืงื™ืฆืขืจ ื“ืขืจืงืœืขืจืŸ ื–ื™ื™ืขืจ ื‘ืึทืฉืœื•ืก ื“ื•ืจืš ื–ืึธื’ืŸ ืึทื– kubectl apply - ืึท ืคื•ื ื“ืึทืžืขื ื˜ืึทืœ ื˜ื™ื™ืœ ืคื•ืŸ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทื ื– ืื™ืŸ Kubernetes, ืึธื‘ืขืจ, "ืขืก ืื™ื– ืคื•ืœ ืคื•ืŸ ื‘ืึทื’ื– ืื•ืŸ ืฉื•ื•ืขืจ ืฆื• ืคืึทืจืจื™ื›ื˜ืŸ," ืื•ืŸ ื“ืขืจื™ื‘ืขืจ ื“ื™ ืคืึทื ื’ืงืฉืึทื ืึทืœื™ื˜ื™ ื“ืึทืจืฃ ื–ื™ื™ืŸ ืฆื•ืจื™ืง ืฆื• ื ืึธืจืžืึทืœ ืื•ืŸ ื˜ืจืึทื ืกืคืขืจื“ ืฆื• ื“ื™ ืงืึธื ื˜ืจืึธืœ ืคืœืึทืš. ืคึผืฉื•ื˜ ืื•ืŸ ืงืœืึธืจ ื‘ื™ื™ืฉืคื™ืœืŸ ืคื•ืŸ ืคึผืจืึธื‘ืœืขืžืก ื•ื•ืึธืก ืขืงืกื™ืกื˜ื™ืจืŸ ื”ื™ื™ึทื ื˜:

Kubernetes 1.14: ืื™ื‘ืขืจื‘ืœื™ืง ืคื•ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ื™ื ืึธื•ื•ื•ื™ื™ืฉืึทื ื–

ื“ืขื˜ืึทื™ืœืก ื•ื•ืขื’ืŸ ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ื–ืขื ืขืŸ ืื™ืŸ ืงืขืคึผ. ื“ื™ ืื™ืฆื˜ื™ืงืข ื’ืจื™ื™ื˜ืงื™ื™ื˜ ืื™ื– ืึทืœืฃ (ื“ืขืจ ื”ืขื›ืขืจื•ื ื’ ืฆื• ื‘ื™ืชื ืื™ื– ืคึผืœืึทื ื ืขื“ ืคึฟืึทืจ ื“ืขืจ ื•ื•ื™ื™ึทื˜ืขืจ ืžืขืœื“ื•ื ื’ ืคื•ืŸ Kubernetes).

ื‘ื ื™ืžืฆื ืื™ืŸ ืึทืœืฃ ื•ื•ืขืจืกื™ืข ื’ืขืœืขื’ื ื”ื™ื™ึทื˜ ื ื™ืฆืŸ ื“ื™ OpenAPI v3 ืกื›ืขืžืข ืคึฟืึทืจ ืงืจื™ื™ื™ื˜ื™ื ื’ ืื•ืŸ ืืจื•ื™ืกื’ืขื‘ืŸ OpenAPI ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ ืคึฟืึทืจ CustomResources (CR) ื’ืขื ื™ืฆื˜ ืฆื• ื•ื•ืึทืœืึทื“ื™ื™ื˜ (ืกืขืจื•ื•ืขืจ-ื–ื™ื™ึทื˜) ืง8ืก ื‘ืึทื ื™ืฆืขืจ-ื“ื™ืคื™ื™ื ื“ ืจืขืกื•ืจืกืŸ (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 ืžืขืœื“ื•ื ื’, ื•ื•ื• ื“ืขื ืงืœืึทืก ืื™ื– ืืจื•ื™ืก ื•ื•ื™ ืึทืŸ ืึทืœืฃ ื•ื•ืขืจืกื™ืข), ืื•ืŸ ืื™ืŸ ืึทืจื™ื™ึทื ื˜ืจืขื˜ืŸ ื•ื•ืขื‘ื”ืึธืึธืงืก ื™ืžืคึผืœืึทืžืขื ืึทื“ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ื‘ืึทืฉืœื™ืกืŸ ื•ื•ืึธืก ื•ื•ืขืจืกื™ืขืก AdmissionReview ื–ื™ื™ ืฉื˜ื™ืฆืŸ. ืฆื•ื ืกื•ืฃ, ื“ื™ ืึทืจื™ื™ึทื ื˜ืจืขื˜ืŸ ื•ื•ืขื‘ื”ืึธืึธืงืก ื›ึผืœืœื™ื ื–ืขื ืขืŸ ืื™ืฆื˜ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื‘ืื’ืจืขื ืขืฆื˜ ื“ื™ ืžืึธืก ืคื•ืŸ ื–ื™ื™ืขืจ ื ื•ืฆืŸ ื“ื•ืจืš ื ืึธืžืขืŸ ืกืคึผื™ื™ืกืึทื– ืื•ืŸ ืงื ื•ื™ืœ ืคืจืึทืžืขื•ื•ืึธืจืงืก.

ืกื˜ืึธืจื™ื“ื–ืฉ

PersistentLocalVolumes, ื•ื•ืึธืก ื”ืื˜ ื‘ื™ืชื ืกื˜ืึทื˜ื•ืก ื–ื™ื ื˜ ืžืขืœื“ื•ื ื’ K8s 1.10, ืžื•ื“ื™ืข ืกื˜ืึทื‘ื™ืœ (GA): ื“ืขื ืฉื˜ืจื™ืš ื˜ื•ื™ืขืจ ืื™ื– ื ื™ื˜ ืžืขืจ ืคืึทืจืงืจื™ืคึผืœื˜ ืื•ืŸ ื•ื•ืขื˜ ื–ื™ื™ืŸ ืึทื•ื•ืขืงื’ืขื ื•ืžืขืŸ ืื™ืŸ Kubernetes 1.17.

ื’ืขืœืขื’ื ื”ื™ื™ื˜ ื ื™ืฆืŸ ืกื•ื•ื™ื•ื•ืข ื•ื•ืขืจื™ืึทื‘ืึทืœื– ื’ืขืจื•ืคืŸ ืึทืจืึธืคึผ ืึทืคึผื™ (ืœืžืฉืœ, ื“ื™ ืคึผืึธื“ ื ืึธืžืขืŸ) ืคึฟืึทืจ ื“ื™ ื ืขืžืขืŸ ืคื•ืŸ ื“ื™ืจืขืงื˜ืขืจื™ื– ืžืึธื•ื ื˜ืขื“ ื•ื•ื™ subPath, ืื™ื– ื“ืขื•ื•ืขืœืึธืคึผืขื“ - ืื™ืŸ ื“ื™ ืคืึธืจืขื ืคื•ืŸ ืึท ื ื™ื™ึท ืคืขืœื“ subPathExpr, ื•ื•ืึธืก ืื™ื– ืื™ืฆื˜ ื’ืขื ื™ืฆื˜ ืฆื• ื‘ืึทืฉื˜ื™ืžืขืŸ ื“ืขื ื’ืขื•ื•ืืœื˜ ื•ื•ืขื’ื•ื•ื™ื™ึทื–ืขืจ ื ืึธืžืขืŸ. ื“ืขืจ ืฉื˜ืจื™ืš ื˜ื›ื™ืœืขืก ืืจื•ื™ืก ืื™ืŸ Kubernetes 1.11, ืึธื‘ืขืจ ืคึฟืึทืจ 1.14 ืขืก ืื™ื– ืคืืจื‘ืœื™ื‘ืŸ ืื™ืŸ ืึทืœืฃ ื•ื•ืขืจืกื™ืข ืกื˜ืึทื˜ื•ืก.

ื•ื•ื™ ืžื™ื˜ ื“ื™ ืคืจื™ืขืจื“ื™ืงืข Kubernetes ืžืขืœื“ื•ื ื’, ืคื™ืœืข ื‘ืึทื˜ื™ื™ึทื˜ื™ืง ืขื ื“ืขืจื•ื ื’ืขืŸ ื–ืขื ืขืŸ ื‘ืึทืงืขื ืขื  ืคึฟืึทืจ ื“ื™ ืึทืงื˜ื™ื•ื•ืœื™ ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ CSI (Container Storage Interface):

ืงืกื™

ื’ืขื•ื•ืืจืŸ ื‘ื ื™ืžืฆื (ื•ื•ื™ ืึท ื˜ื™ื™ืœ ืคื•ืŸ ื“ื™ ืึทืœืฃ ื•ื•ืขืจืกื™ืข) ืฉื˜ื™ืฆืŸ ืจืขืกื™ื–ื™ื ื’ ืคึฟืึทืจ CSI ื•ื•ืึทืœื™ื•ืžื–. ืฆื• ื ื•ืฆืŸ ืขืก, ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ื’ืขื‘ืŸ ื“ืขื ืฉื˜ืจื™ืš ื˜ื•ื™ืขืจ ื’ืขืจื•ืคืŸ ExpandCSIVolumes, ื•ื•ื™ ื’ืขื–ื•ื ื˜ ื•ื•ื™ ื“ื™ ื‘ื™ื™ึทื–ื™ื™ึทืŸ ืคื•ืŸ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ืขื ืึธืคึผืขืจืึทืฆื™ืข ืื™ืŸ ืึท ืกืคึผืขืฆื™ืคื™ืฉ CSI ืฉืึธืคืขืจ.

ืืŸ ืื ื“ืขืจ ืฉื˜ืจื™ืš ืคึฟืึทืจ CSI ืื™ืŸ ื“ื™ ืึทืœืฃ ื•ื•ืขืจืกื™ืข - ื’ืขืœืขื’ื ื”ื™ื™ึทื˜ ืึธืคึผืฉื™ืงืŸ ื’ืœื™ื™ืš (ื“"ื” ืึธืŸ ื ื™ืฆืŸ PV/PVC) ืฆื• CSI ื•ื•ืึทืœื™ื•ืžื– ืื™ืŸ ื“ื™ ืคึผืึธื“ ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’. ื“ืืก ืจื™ืžื•ื•ื•ื– ื“ื™ ืจื™ืกื˜ืจื™ืงืฉืึทืŸ ืื•ื™ืฃ ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ CSI ื•ื•ื™ ื•ื™ืกืฉืœื™ืกื™ืง ื•ื•ื™ื™ึทื˜ ื“ืึทื˜ืŸ ืกื˜ืึธืจื™ื“ื–ืฉ, ืขืคื ื˜ ืคืืจ ื–ื™ื™ ื˜ื™ืจืŸ ืฆื• ื“ืขืจ ื•ื•ืขืœื˜ ื”ื™ื’ืข ืขืคืขืžืขืจืึทืœ ื•ื•ืึทืœื™ื•ืžื–. ืคึฟืึทืจ ื ื•ืฆืŸ (ื‘ื™ื™ึทืฉืคึผื™ืœ ืคื•ืŸ ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ) ืžื•ื–ืŸ ื–ื™ื™ืŸ ืขื ื™ื™ื‘ืึทืœื“ CSIInlineVolume ืฉื˜ืจื™ืš ื˜ื•ื™ืขืจ.

ืขืก ืื™ื– ืื•ื™ืš ื’ืขื•ื•ืขืŸ ืคึผืจืึธื’ืจืขืก ืื™ืŸ ื“ื™ "ื™ื ืขืจืœืขืš" ืคื•ืŸ Kubernetes ืฉื™ื™ึทื›ื•ืช ืฆื• CSI, ื•ื•ืึธืก ื–ืขื ืขืŸ ื ื™ืฉื˜ ืึทื–ื•ื™ ืงืขื ื˜ื™ืง ืฆื• ืกื•ืฃ ื ื™ืฆืขืจืก (ืกื™ืกื˜ืขื ืึทื“ืžื™ื ื™ืกื˜ืจืึทื˜ืึธืจืก) ... ื“ืขืจื•ื•ื™ื™ึทืœ, ื“ืขื•ื•ืขืœืึธืคึผืขืจืก ื–ืขื ืขืŸ ื’ืขืฆื•ื•ื•ื ื’ืขืŸ ืฆื• ืฉื˜ื™ืฆืŸ ืฆื•ื•ื™ื™ ื•ื•ืขืจืกื™ืขืก ืคื•ืŸ ื™ืขื“ืขืจ ืกื˜ืึธืจื™ื“ื–ืฉ ืคึผืœื•ื’ื™ืŸ: ืื™ื™ื ืขืจ - "ืื™ืŸ ื“ื™ ืึทืœื˜ ื•ื•ืขื’", ื™ืŸ ื“ื™ K8s ืงืึธื“ืขื‘ืึทืกืข (ืื™ืŸ -ื‘ื•ื™ื), ืื•ืŸ ื“ื™ ืจื’ืข - ื•ื•ื™ ืึท ื˜ื™ื™ืœ ืคื•ืŸ ื“ื™ ื ื™ื™ึทืข CSI (ืœื™ื™ืขื ืขืŸ ืžืขืจ ื•ื•ืขื’ืŸ ืื™ื, ืœืžืฉืœ, ืื™ืŸ ื“ืึธ). ื“ืึธืก ื–ื™ื™ึทื ืขืŸ ืคืึทืจืฉื˜ื™ื™ื™ืง ื™ื ืงืึทื ื•ื•ื™ื ื™ืึทื ืกื™ื– ื•ื•ืึธืก ื“ืึทืจืคึฟืŸ ืฆื• ื–ื™ื™ืŸ ืึทื“ืจืขืกื“ ื•ื•ื™ CSI ื–ื™ืš ืกื˜ื™ื™ื‘ืึทืœื™ื™ื–ื™ื–. ืขืก ืื™ื– ื ื™ื˜ ืžืขื’ืœืขืš ืฆื• ืคืฉื•ื˜ ื“ื™ืคึผืจื™ืฉื™ื™ื™ื˜ ื“ื™ API ืคื•ืŸ ื™ื ืขืจืœืขืš (ืื™ืŸ-ื‘ื•ื™ื) ืคึผืœื•ื’ื™ื ืก ืจืขื›ื˜ ืฆื• ื‘ืึทื˜ื™ื™ึทื˜ื™ืง Kubernetes ืคึผืึธืœื™ื˜ื™ืง.

ืึทืœืข ื“ืขื ื’ืขืคื™ืจื˜ ืฆื• ื“ื™ ืคืึทืงื˜ ืึทื– ื“ื™ ืึทืœืฃ ื•ื•ืขืจืกื™ืข ืจื™ื˜ืฉื˜ ืžื™ื™ื’ืจื™ื™ืฉืึทืŸ ืคึผืจืึธืฆืขืก ื™ื ืขืจืœืขืš ืคึผืœื•ื’ื™ืŸ ืงืึธื“, ื™ืžืคึผืœืึทืžืขื ืึทื“ ื•ื•ื™ ืื™ืŸ-ื‘ื•ื™ื, ืื™ืŸ CSI ืคึผืœื•ื’ื™ื ืก, ื“ืึทื ืง ืฆื• ื•ื•ืึธืก ื“ื™ ื•ื•ืขืจื™ื– ืคื•ืŸ ื“ืขื•ื•ืขืœืึธืคึผืขืจืก ื•ื•ืขื˜ ื–ื™ื™ืŸ ืจื™ื“ื•ืกื˜ ืฆื• ืฉื˜ื™ืฆืŸ ืื™ื™ืŸ ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹ื–ื™ื™ืขืจ ืคึผืœื•ื’ื™ื ืก, ืื•ืŸ ืงืึทืžืคึผืึทื˜ืึทื‘ื™ืœืึทื˜ื™ ืžื™ื˜ ืึทืœื˜ ืึทืคึผื™ืก ื•ื•ืขื˜ ื‘ืœื™ื™ึทื‘ืŸ ืื•ืŸ ื–ื™ื™ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื“ืขืจืงืœืขืจื˜ ืคืึทืจืขืœื˜ืขืจื˜ ืื™ืŸ ื“ื™ ื’ืขื•ื•ื™ื™ื ื˜ืœืขืš ืกืฆืขื ืึทืจ. ืขืก ืื™ื– ื“ืขืจื•ื•ืึทืจื˜ ืึทื– ื‘ื™ื™ ื“ืขืจ ื•ื•ื™ื™ึทื˜ืขืจ ืžืขืœื“ื•ื ื’ ืคื•ืŸ Kubernetes (1.15) ืึทืœืข ื•ื•ืึธืœืงืŸ ืฉืคึผื™ื™ึทื–ืขืจ ืคึผืœื•ื’ื™ื ืก ื•ื•ืขื˜ ื–ื™ื™ืŸ ืžื™ื™ื’ืจื™ื™ื˜ื™ื“, ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ื•ื•ืขื˜ ื‘ืึทืงื•ืžืขืŸ ื‘ื™ืชื ืกื˜ืึทื˜ื•ืก ืื•ืŸ ื•ื•ืขื˜ ื–ื™ื™ืŸ ืึทืงื˜ื™ื•ื•ื™ื™ื˜ื™ื“ ืื™ืŸ K8s ื™ื ืกื˜ืึทืœื™ื™ืฉืึทื ื– ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜. ืคึฟืึทืจ ืคืจื˜ื™ื, ื–ืขืŸ ืคึผืœืึทืŸ ืคืึธืจืฉืœืึธื’. ื“ื™ ื“ืึธื–ื™ืงืข ืžื™ื’ืจืึทืฆื™ืข ื”ืึธื˜ ืื•ื™ืš ื’ืขืคึฟื™ืจื˜ ื“ื•ืจื›ืคืึทืœ ืคึฟื•ืŸ ื‘ืึทื ื“ ืœื™ืžืึทืฅ ื“ื™ืคื™ื™ื ื“ ื“ื•ืจืš ืกืคึผืขืฆื™ืคื™ืฉ ื•ื•ืึธืœืงืŸ ืคึผืจืึทื•ื•ื™ื™ื“ืขืจื– (AWS, Azure, GCE, Cinder).

ืึทื“ื“ื™ื˜ื™ืึธื ืึทืœืœื™, ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื‘ืœืึธืง ื“ืขื•ื•ื™ืกืขืก ืžื™ื˜ CSI (CSIBlockVolume) ื˜ืจืึทื ืกืคืขืจื“ ืฆื• ื‘ื™ืชื ื•ื•ืขืจืกื™ืข.

ื ืึธื“ืขืก / ืงื•ื‘ืขืœืขื˜

ืึทืœืฃ ื•ื•ืขืจืกื™ืข ื“ืขืจืœืื ื’ื˜ ื ื™ื™ึท ืขื ื“ืคึผื•ื™ื ื˜ ืื™ืŸ ืงื•ื‘ืขืœืขื˜, ื“ื™ื–ื™ื™ื ื“ ืคึฟืึทืจ ืฆื•ืจื™ืงืงื•ืžืขืŸ ืžืขื˜ืจื™ืงืก ืื•ื™ืฃ ืฉืœื™ืกืœ ืจืขืกื•ืจืกืŸ. ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ, ืื•ื™ื‘ ืงื•ื‘ืขืœืขื˜ ื‘ื™ื– ืึทื”ืขืจ ื‘ืืงื•ืžืขืŸ ืกื˜ืึทื˜ื™ืกื˜ื™ืง ืื•ื™ืฃ ืงืึทื ื˜ื™ื™ื ืขืจ ื‘ืึทื ื™ืฅ ืคึฟื•ืŸ cAdvisor, ืื™ืฆื˜ ื“ื™ ื“ืึทื˜ืŸ ืงื•ืžืขืŸ ืคึฟื•ืŸ ื“ื™ ืงืึทื ื˜ื™ื™ื ืขืจ ืจื•ื ื˜ื™ืžืข ืกื•ื•ื™ื•ื•ืข ื“ื•ืจืš CRI (Container Runtime Interface), ืึธื‘ืขืจ ืงืึทืžืคึผืึทื˜ืึทื‘ื™ืœืึทื˜ื™ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืขืœื˜ืขืจืข ื•ื•ืขืจืกื™ืขืก ืคื•ืŸ ื“ืึธืงืงืขืจ ืื™ื– ืื•ื™ืš ืืคื’ืขื”ื™ื˜. ื‘ื™ื– ืึทื”ืขืจ, ืกื˜ืึทื˜ื™ืกื˜ื™ืง ื’ืขื–ืืžืœื˜ ืื™ืŸ Kubelet ื–ืขื ืขืŸ ื’ืขืฉื™ืงื˜ ื“ื•ืจืš ื“ื™ REST API, ืึธื‘ืขืจ ืื™ืฆื˜ ืึทืŸ ืขื ื“ืคึผื•ื™ื ื˜ ืื™ืŸ /metrics/resource/v1alpha1. ืœืื ื’-ื˜ืขืจืžื™ืŸ ืกื˜ืจืึทื˜ืขื’ื™ืข ืคื•ืŸ โ€‹โ€‹ื“ืขื•ื•ืขืœืึธืคึผืขืจืก ื‘ืืฉื˜ื™ื™ื˜ ืื™ื– ืฆื• ืžื™ื ืึทืžื™ื™ื– ื“ื™ ื’ืึทื ื’ ืคื•ืŸ ืžืขื˜ืจื™ืงืก ืฆื•ื’ืขืฉื˜ืขืœื˜ ื“ื•ืจืš Kubelet. ื“ื•ืจืš ื“ืขื ื•ื•ืขื’, ื“ื™ ืžืขื˜ืจื™ืงืก ื–ื™ืš ืื™ืฆื˜ ืจื•ืคืŸ ื–ื™ื™ ื ื™ื˜ "ื”ืึทืจืฅ ืžืขื˜ืจื™ืงืก", ืึธื‘ืขืจ "ืจื™ืกืึธืจืก ืžืขื˜ืจื™ืงืก", ืื•ืŸ ื–ืขื ืขืŸ ื“ื™ืกืงืจื™ื™ื‘ื“ ื•ื•ื™ "ืขืจืฉื˜ืขืจ-ืงืœืึทืก ืจืขืกื•ืจืกืŸ, ืึทื–ืึท ื•ื•ื™ ืงืคึผื• ืื•ืŸ ื–ื›ึผืจื•ืŸ".

ื ื–ื™ื™ืขืจ ื˜ืฉื™ืงืึทื•ื•ืข ื ื•ืึทื ืก: ื˜ืจืึธืฅ ื“ื™ ืงืœืึธืจ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืžื™ื™ึทืœืข ืคื•ืŸ โ€‹โ€‹ื“ื™ ื’ืจืคึผืง ืขื ื“ืคึผื•ื™ื ื˜ ืื™ืŸ ืคืึทืจื’ืœื™ื™ึทืš ืžื™ื˜ ืคืึทืจืฉื™ื“ืŸ ืงืึทืกืขืก ืคื•ืŸ ื ื™ืฆืŸ ื“ื™ ืคึผืจืึธืžืขื˜ื”ืขื•ืก ืคึฟืึธืจืžืึทื˜ (ื–ืขืŸ ื“ืขืจ ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ื‘ืขื ื˜ืฉืžืึทืจืงืก ืื•ื ื˜ืŸ), ื“ื™ ืžื—ื‘ืจื™ื ื‘ื™ืœื›ืขืจ ื“ื™ ื˜ืขืงืกื˜ ืคึฟืึธืจืžืึทื˜ ืคื•ืŸ ืคึผืจืึธืžืขื˜ื”ืขื•ืก ืจืขื›ื˜ ืฆื• ื“ืขืจ ืงืœืึธืจ ืคื™ืจืขืจืฉืึทืคื˜ ืคื•ืŸ ื“ืขื ืžืึธื ื™ื˜ืึธืจื™ื ื’ ืกื™ืกื˜ืขื ืื™ืŸ ื“ื™ ืงื”ืœ.

"gRPC ืื™ื– ื ื™ืฉื˜ ืงืึทืžืคึผืึทื˜ืึทื‘ืึทืœ ืžื™ื˜ ื”ื•ื™ืคึผื˜ ืžืึธื ื™ื˜ืึธืจื™ื ื’ ืคึผื™ื™ืคึผืœื™ื™ื ื–. ืขื ื“ืคึผื•ื™ื ื˜ ื•ื•ืขื˜ ื ืึธืจ ื–ื™ื™ืŸ ื ื•ืฆื™ืง ืคึฟืึทืจ ื“ื™ืœื™ื•ื•ืขืจื™ื ื’ ืžืขื˜ืจื™ืงืก ืฆื• ืžืขื˜ืจื™ืงืก ืกืขืจื•ื•ื™ืจืขืจ ืึธื“ืขืจ ืžืึธื ื™ื˜ืึธืจื™ื ื’ ืงืึทืžืคึผืึธื•ื ืึทื ืฅ ื•ื•ืึธืก ื•ื™ืกืฉื˜ื™ืžืขืŸ ื’ืœื™ื™ืš ืžื™ื˜ ืื™ื. ืคึผืจืึธืžืขื˜ื”ืขื•ืก ื˜ืขืงืกื˜ ืคึฟืึธืจืžืึทื˜ ืคืึธืจืฉื˜ืขืœื•ื ื’ ื•ื•ืขืŸ ืื™ืจ ื ื•ืฆืŸ ืงืึทื˜ืฉื™ื ื’ ืื™ืŸ ืžืขื˜ืจื™ืงืก ืกืขืจื•ื•ื™ืจืขืจ ื’ืขื ื•ื’ ื’ื•ื˜ ืคึฟืึทืจ ืื•ื ื“ื– ืฆื• ื‘ืขืกืขืจ ื•ื•ืขืœืŸ Prometheus ืื™ื‘ืขืจ gRPC ื•ื•ื™ื™ึทืœ ืคื•ืŸ ื“ื™ ื•ื•ื™ื™ื“ืกืคึผืจืขื“ ืึทื“ืึทืคึผืฉืึทืŸ ืคื•ืŸ Prometheus ืื™ืŸ ื“ื™ ืงื”ืœ. ืึทืžืึธืœ ื“ื™ OpenMetrics ืคึฟืึธืจืžืึทื˜ ื•ื•ืขืจื˜ ืžืขืจ ืกื˜ืึทื‘ื™ืœ, ืžื™ืจ ืงืขื ืขืŸ ืฆื•ื’ืึทื ื’ gRPC ืคืึธืจืฉื˜ืขืœื•ื ื’ ืžื™ื˜ ืึท ืคึผืจืึธื˜ืึธ-ื‘ืื–ื™ืจื˜ ืคึฟืึธืจืžืึทื˜.

Kubernetes 1.14: ืื™ื‘ืขืจื‘ืœื™ืง ืคื•ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ื™ื ืึธื•ื•ื•ื™ื™ืฉืึทื ื–
ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ืงืึธืžืคึผืึทืจืึทื˜ื™ื•ื•ืข ืคืึธืจืฉื˜ืขืœื•ื ื’ ื˜ืขืกืฅ ืคื•ืŸ ื ื™ืฆืŸ gRPC ืื•ืŸ Prometheus ืคึฟืึธืจืžืึทื˜ื™ืจื•ื ื’ืขืŸ ืื™ืŸ ื“ื™ ื ื™ื™ึทืข Kubelet ืขื ื“ืคึผื•ื™ื ื˜ ืคึฟืึทืจ ืžืขื˜ืจื™ืงืก. ืžืขืจ ื’ืจืึทืคืก ืื•ืŸ ืื ื“ืขืจืข ื“ืขื˜ืึทื™ืœืก ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขืคึฟื•ื ืขืŸ ืื™ืŸ ืงืขืคึผ.

ืฆื•ื•ื™ืฉืŸ ืื ื“ืขืจืข ืขื ื“ืขืจื•ื ื’ืขืŸ:

  • ืงื•ื‘ืขืœืขื˜ ืื™ืฆื˜ (ืื™ื™ืŸ ืžืึธืœ) ื˜ืจื™ื™ื ื’ ืฆื• ื”ืึทืœื˜ืŸ ืงืึทื ื˜ื™ื™ื ืขืจื– ืื™ืŸ ืึทืŸ ืื•ืžื‘ืึทืงืึทื ื˜ ืฉื˜ืึทื˜ ืื™ื™ื“ืขืจ ืจื™ืกื˜ืึทืจื˜ ืื•ืŸ ื•ื™ืกืžืขืงืŸ ืึทืคึผืขืจื™ื™ืฉืึทื ื–.
  • ื•ื•ืขืŸ ื ื™ืฆืŸ PodPresets ืื™ืฆื˜ ืฆื• ื“ื™ ื™ื ื™ื˜ ืงืึทื ื˜ื™ื™ื ืขืจ ืื™ื– ืฆื•ื’ืขื’ืขื‘ืŸ ื“ื™ ื–ืขืœื‘ืข ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ื•ื•ื™ ืคึฟืึทืจ ืึท ืจืขื’ื•ืœืขืจ ืงืึทื ื˜ื™ื™ื ืขืจ.
  • ืงื•ื‘ืขืœืขื˜ ืื ื’ืขื”ื•ื™ื‘ืŸ ื ื™ืฆืŸ usageNanoCores ืคึฟื•ืŸ ื“ื™ CRI ืกื˜ืึทื˜ื™ืกื˜ื™ืง ืฉืคึผื™ื™ึทื–ืขืจ, ืื•ืŸ ืคึฟืึทืจ ื ืึธื•ื“ื– ืื•ืŸ ืงืึทื ื˜ื™ื™ื ืขืจื– ืื•ื™ืฃ Windows ืฆื•ื’ืขื’ืขื‘ืŸ ื ืขืฅ ืกื˜ืึทื˜ื™ืกื˜ื™ืง.
  • ืึทืคึผืขืจื™ื™ื˜ื™ื ื’ ืกื™ืกื˜ืขื ืื•ืŸ ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ืื™ื– ืื™ืฆื˜ ืจืขืงืึธืจื“ืขื“ ืื™ืŸ ืœืึทื‘ืขืœืก kubernetes.io/os ะธ kubernetes.io/arch ื ืึธื“ืข ืึทื‘ื“ื–ืฉืขืงืฅ (ื˜ืจืึทื ืกืคืขืจื“ ืคื•ืŸ ื‘ื™ืชื ืฆื• GA).
  • ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ืึท ืกืคึผืขืฆื™ืคื™ืฉ ืกื™ืกื˜ืขื ื‘ืึทื ื™ืฆืขืจ ื’ืจื•ืคึผืข ืคึฟืึทืจ ืงืึทื ื˜ื™ื™ื ืขืจื– ืื™ืŸ ืึท ืคึผืึธื“ (RunAsGroup, ื‘ืื•ื•ื™ื–ืŸ ืื™ืŸ K8s 1.11) ืึทื•ื•ืึทื ืกื™ืจื˜ืข ืื™ื™ื“ืขืจ ื‘ื™ืชื (ืขื ื™ื™ื‘ืึทืœื“ ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜).
  • ื“ื• ืื•ืŸ ื’ืขืคึฟื™ื ืขืŸ ื’ืขื ื™ืฆื˜ ืื™ืŸ cAdvisor, ืจื™ืคึผืœื™ื™ืกื˜ ืื•ื™ืฃ ื’ื™ื™ืŸ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ.

ืงืœื™

ืื™ืŸ ืงืœื™-ืจื•ื ื˜ื™ืžืข ืื•ืŸ ืงื•ื‘ืขืงื˜ืœ ืฆื•ื’ืขื’ืขื‘ืŸ -ืง ืคืึธืŸ ืคึฟืึทืจ ื™ื ื˜ืึทื’ืจื™ื™ืฉืึทืŸ ืžื™ื˜ ืงืึทืกื˜ืึทืžื™ื™ื– (ืื’ื‘, ืื™ืจ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ืื™ื– ืื™ืฆื˜ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ืื™ืŸ ืึท ื‘ืึทื–ื•ื ื“ืขืจ ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™), ื“.ื”. ืฆื• ืคึผืจืึธืฆืขืก ื ืึธืš YAML ื˜ืขืงืขืก ืคึฟื•ืŸ ืกืคึผืขืฆื™ืขืœ ืงื•ืกื˜ืึธืžื™ื–ืึทื˜ื™ืึธืŸ ื“ื™ืจืขืงื˜ืขืจื™ื– (ืคึฟืึทืจ ื“ืขื˜ืึทื™ืœืก ื•ื•ืขื’ืŸ ื ื™ืฆืŸ ื–ื™ื™, ื–ืขืŸ ืงืขืคึผ):

Kubernetes 1.14: ืื™ื‘ืขืจื‘ืœื™ืง ืคื•ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ื™ื ืึธื•ื•ื•ื™ื™ืฉืึทื ื–
ื‘ื™ื™ึทืฉืคึผื™ืœ ืคื•ืŸ ืคึผืฉื•ื˜ ื˜ืขืงืข ื‘ืึทื ื™ืฅ ืงื•ืกื˜ืึธืžื™ื–ืึทื˜ื™ืึธืŸ (ืึท ืžืขืจ ืงืึธืžืคึผืœื™ืฆื™ืจื˜ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืคื•ืŸ ืงื•ืกื˜ืึธืžื™ื–ืข ืื™ื– ืžืขื’ืœืขืš ื™ืŸ overlays)

ืื™ืŸ ื“ืขืจืฆื•:

  • ืฆื•ื’ืขื’ืขื‘ืŸ ื ื™ื™ึท ืžืึทื ืฉืึทืคึฟื˜ kubectl create cronjob, ืฐืขืžืขื  ืก ื ืืžืข ืŸ ืจืขื“ื˜ .
  • ะ’ kubectl logs ืื™ืฆื˜ ืื™ืจ ืงืขื ืขืŸ ืฆื• ืคืึทืจื‘ื™ื ื“ืŸ ืคืœืึทื’ืก -f (--follow ืคึฟืึทืจ ืกื˜ืจื™ืžื™ื ื’ ืœืึธื’ืก) ืื•ืŸ -l (--selector ืคึฟืึทืจ ืคื™ืจืžืข ืึธื ืคึฟืจืขื’).
  • kubectl ื’ืขืœืขืจื ื˜ ืงืึธืคึผื™ืข ื˜ืขืงืขืก ืื•ื™ืกื’ืขืงืœื™ื‘ืŸ ื“ื•ืจืš ื•ื•ื™ืœื“ ืงืึธืจื˜.
  • ืฆื• ื“ื™ ืžืึทื ืฉืึทืคึฟื˜ kubectl wait ืฆื•ื’ืขื’ืขื‘ืŸ flag --all ืฆื• ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ืึทืœืข ืจืขืกื•ืจืกืŸ ืื™ืŸ ื“ื™ ื ืึธืžืขืŸ ืคื•ืŸ ื“ื™ ืกืคึผืขืกื™ืคื™ืขื“ ืžื™ื˜ืœ ื˜ื™ืคึผ.

ืื ื“ืขืจืข

ื“ื™ ืคืืœื’ืขื ื“ืข ืงื™ื™ืคึผืึทื‘ื™ืœืึทื˜ื™ื– ื”ืึธื‘ืŸ ื‘ืืงื•ืžืขืŸ ืกื˜ืึทื‘ื™ืœ (GA) ืกื˜ืึทื˜ื•ืก:

ืื ื“ืขืจืข ืขื ื“ืขืจื•ื ื’ืขืŸ ื‘ืึทืงืขื ืขื  ืื™ืŸ Kubernetes 1.14:

  • ืคืขืœื™ืงื™ื™ึทื˜ RBAC ืคึผืึธืœื™ื˜ื™ืง ื ื™ื˜ ืžืขืจ ืึทืœืึทื•ื– ืึทืคึผื™ ืึทืงืกืขืก discovery ะธ access-review ื ื™ืฆืขืจืก ืึธืŸ ืึธื˜ืขื ื˜ืึทืงื™ื™ืฉืึทืŸ (ืื•ื™ื˜ืขื ื˜ื™ืงื™ืจื˜).
  • ืึทืคื™ืฉืึทืœ ืงืึธืจืขื“ื ืก ืฉื˜ื™ืฆืŸ ืฆื•ื’ืขืฉื˜ืขืœื˜ ื‘ืœื•ื™ื– ืœื™ื ื•ืงืก, ืึทื–ื•ื™ ื•ื•ืขืŸ ื ื™ืฆืŸ kubeadm ืฆื• ืฆืขื•ื•ื™ืงืœืขืŸ ืขืก (CoreDNS) ืื™ืŸ ืึท ืงื ื•ื™ืœ, ื ืึธื•ื“ื– ืžื•ื–ืŸ ืœื•ื™ืคืŸ ื‘ืœื•ื™ื– ืื•ื™ืฃ ืœื™ื ื•ืงืก (ื ืึธื“ืขืกืขืœืขืงื˜ืึธืจืก ื–ืขื ืขืŸ ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ ื“ืขื ื‘ืึทื’ืจืขื ืขืฆื•ื ื’).
  • ืคืขืœื™ืงื™ื™ึทื˜ CoreDNS ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืื™ื– ืื™ืฆื˜ ื ื™ืฆื˜ ืคืึธืจื•ื™ืก ืคึผืœื•ื’ื™ืŸ ืึทื ืฉื˜ืึธื˜ ืคื•ืŸ ืคืจืืงืกื™. ืื•ื™ืš ืื™ืŸ CoreDNS ืฆื•ื’ืขื’ืขื‘ืŸ ReadinessProbe, ื•ื•ืึธืก ืคึผืจื™ื•ื•ืขื ืฅ ืžืึทืกืข ื‘ืึทืœืึทื ืกื™ื ื’ ืื•ื™ืฃ ืฆื•ื ืขืžืขืŸ (ื ื™ื˜ ื’ืจื™ื™ื˜ ืคึฟืึทืจ ื“ื™ื ืกื˜) ืคึผืึธื“ืก.
  • ืื™ืŸ ืงื•ื‘ืขืึทื“ื, ืื•ื™ืฃ ืคืึทืกืขืก init ืึธื“ืขืจ upload-certs, ื’ืขื•ื•ืืจืŸ ืžืขื’ืœืขืš ืœืึธื“ืŸ ื“ื™ ืกืขืจื˜ื™ืคื™ืงืึทืฅ ืคืืจืœืื ื’ื˜ ืฆื• ืคืึทืจื‘ื™ื ื“ืŸ ื“ื™ ื ื™ื™ึท ืงืึธื ื˜ืจืึธืœ ืคืœืึทืš ืฆื• ื“ื™ kubeadm-certs ืกื•ื“ (ื ื•ืฆืŸ ื“ื™ ืคืึธืŸ --experimental-upload-certs).
  • ืึทืŸ ืึทืœืฃ ื•ื•ืขืจืกื™ืข ืื™ื– ืืจื•ื™ืก ืคึฟืึทืจ Windows ื™ื ืกื˜ืึทืœื™ื™ืฉืึทื ื– ืฉื˜ื™ืฆืŸ gMSA (Group Managed Service Account) - ืกืคึผืขืฆื™ืขืœืข ืึทืงืึทื•ื ืฅ ืื™ืŸ ืึทืงื˜ื™ื•ื• Directory ื•ื•ืึธืก ืงืขื ืขืŸ ืื•ื™ืš ื–ื™ื™ืŸ ื’ืขื•ื•ื™ื™ื ื˜ ื“ื•ืจืš ืงืึทื ื˜ื™ื™ื ืขืจื–.
  • ืคึฟืึทืจ G.C.E. ืึทืงื˜ื™ื•ื•ื™ื™ื˜ื™ื“ mTLS ืขื ืงืจื™ืคึผืฉืึทืŸ ืฆื•ื•ื™ืฉืŸ ืขื˜ืง ืื•ืŸ ืงื•ื‘-ืึทืคึผื™ืกืขืจื•ื•ืขืจ.
  • ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื•ื ื’ืขืŸ ืื™ืŸ ื’ืขื•ื•ื™ื™ื ื˜ / ืึธืคืขื ื’ื™ืง ื•ื•ื™ื™ื›ื•ื•ืืจื’: ื’ื™ื™ืŸ 1.12.1, CSI 1.1, CoreDNS 1.3.1, Docker 18.09 ืฉื˜ื™ืฆืŸ ืื™ืŸ kubeadm, ืื•ืŸ ื“ื™ ืžื™ื ื™ืžื•ื ืฉื˜ื™ืฆื˜ Docker API ื•ื•ืขืจืกื™ืข ืื™ื– ืื™ืฆื˜ 1.26.

ืคึผืก

ืœื™ื™ืขื ืขืŸ ืื•ื™ืš ืื•ื™ืฃ ืื•ื ื“ื–ืขืจ ื‘ืœืึธื’:

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

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’