แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ
แƒ—แƒฃ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ— Kubernetes-แƒ—แƒแƒœ, แƒ›แƒแƒจแƒ˜แƒœ kubectl แƒแƒ แƒ˜แƒก แƒแƒšแƒ‘แƒแƒ— แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒ™แƒแƒ›แƒฃแƒœแƒแƒšแƒฃแƒ แƒ˜ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒฎแƒจแƒ˜แƒ แƒแƒ“ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ—. แƒ“แƒ แƒ แƒแƒชแƒ แƒ“แƒ˜แƒ“ แƒ“แƒ แƒแƒก แƒฃแƒ—แƒ›แƒแƒ‘แƒ— แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒš แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒ›แƒ”แƒœแƒขแƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒแƒก, แƒฆแƒ˜แƒ แƒก แƒ›แƒ˜แƒกแƒ˜ แƒ™แƒแƒ แƒ’แƒแƒ“ แƒจแƒ”แƒกแƒฌแƒแƒ•แƒšแƒ แƒ“แƒ แƒ›แƒ˜แƒกแƒ˜ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒกแƒฌแƒแƒ•แƒšแƒ.

แƒ’แƒฃแƒœแƒ“แƒ˜ Kubernetes aaS Mail.ru-แƒ“แƒแƒœ แƒ—แƒแƒ แƒ’แƒ›แƒœแƒ แƒ“แƒแƒœแƒ˜แƒ”แƒš แƒ•แƒ”แƒ˜แƒ‘แƒ”แƒšแƒ˜แƒก แƒกแƒขแƒแƒขแƒ˜แƒ, แƒ แƒแƒ›แƒ”แƒšแƒจแƒ˜แƒช แƒœแƒแƒฎแƒแƒ•แƒ— แƒ แƒฉแƒ”แƒ•แƒ”แƒ‘แƒกแƒ แƒ“แƒ แƒฎแƒ แƒ˜แƒ™แƒ”แƒ‘แƒก kubectl-แƒ—แƒแƒœ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒ˜ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ˜แƒก แƒแƒกแƒ”แƒ•แƒ” แƒ“แƒแƒ’แƒ”แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒแƒ— Kubernetes-แƒ˜แƒก แƒฃแƒคแƒ แƒ แƒฆแƒ แƒ›แƒ แƒ’แƒแƒ’แƒ”แƒ‘แƒแƒจแƒ˜.

แƒแƒ•แƒขแƒแƒ แƒ˜แƒก แƒ—แƒฅแƒ›แƒ˜แƒ—, แƒกแƒขแƒแƒขแƒ˜แƒ˜แƒก แƒ›แƒ˜แƒ–แƒแƒœแƒ˜แƒ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒงแƒแƒ•แƒ”แƒšแƒ“แƒฆแƒ˜แƒฃแƒ แƒ˜ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ Kubernetes-แƒ—แƒแƒœ แƒแƒ แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒ˜, แƒแƒ แƒแƒ›แƒ”แƒ“ แƒฃแƒคแƒ แƒ แƒกแƒแƒกแƒ˜แƒแƒ›แƒแƒ•แƒœแƒแƒช แƒ˜แƒงแƒแƒก!

แƒจแƒ”แƒกแƒแƒ•แƒแƒšแƒ˜: แƒ แƒ แƒแƒ แƒ˜แƒก kubectl

แƒกแƒแƒœแƒแƒ› แƒ˜แƒกแƒฌแƒแƒ•แƒšแƒ˜แƒ— แƒ™แƒฃแƒ‘แƒ”แƒฅแƒขแƒšแƒ˜แƒก แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒ˜แƒ’แƒแƒ— แƒ แƒ แƒแƒ แƒ˜แƒก แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก.

แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒ—แƒ•แƒแƒšแƒกแƒแƒ–แƒ แƒ˜แƒกแƒ˜แƒ—, kubectl แƒแƒ แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒžแƒแƒœแƒ”แƒšแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒจแƒ”แƒแƒกแƒ แƒฃแƒšแƒแƒ— Kubernetes แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜.

แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒฃแƒ แƒแƒ“ แƒ แƒแƒ› แƒ•แƒ—แƒฅแƒ•แƒแƒ—, kubectl แƒแƒ แƒ˜แƒก Kubernetes API แƒ™แƒšแƒ˜แƒ”แƒœแƒขแƒ˜.

Kubernetes API แƒแƒ แƒ˜แƒก HTTP REST API. แƒ”แƒก API แƒแƒ แƒ˜แƒก แƒœแƒแƒ›แƒ“แƒ•แƒ˜แƒšแƒ˜ Kubernetes แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜, แƒ แƒแƒ›แƒšแƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—แƒแƒช แƒ˜แƒก แƒ›แƒ—แƒšแƒ˜แƒแƒœแƒแƒ“ แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ“แƒ”แƒ‘แƒ. แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› Kubernetes-แƒ˜แƒก แƒงแƒแƒ•แƒ”แƒšแƒ˜ แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ แƒ•แƒšแƒ˜แƒœแƒ“แƒ”แƒ‘แƒ แƒ แƒแƒ’แƒแƒ แƒช API แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜ แƒ“แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ“แƒ”แƒก HTTP แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒ— แƒแƒ› แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒก แƒ›แƒ˜แƒ›แƒแƒ แƒ—.

แƒแƒฅแƒ”แƒ“แƒแƒœ แƒ’แƒแƒ›แƒแƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ”, kubectl-แƒ˜แƒก แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜ แƒแƒ›แƒแƒชแƒแƒœแƒแƒ HTTP แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ Kubernetes API-แƒ–แƒ”:

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ
Kubernetes แƒแƒ แƒ˜แƒก แƒ›แƒ—แƒšแƒ˜แƒแƒœแƒแƒ“ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ–แƒ” แƒแƒ แƒ˜แƒ”แƒœแƒขแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ. แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒ˜แƒก แƒ˜แƒœแƒแƒ แƒฉแƒฃแƒœแƒ”แƒ‘แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ˜แƒ“แƒ แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒแƒก แƒ“แƒ Kubernetes-แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ แƒแƒ แƒ˜แƒก CRUD แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜.

แƒ—แƒฅแƒ•แƒ”แƒœ แƒกแƒ แƒฃแƒšแƒแƒ“ แƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ‘แƒ— Kubernetes-แƒก แƒแƒ› แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒ— แƒ“แƒ Kubernetes แƒแƒ“แƒ’แƒ”แƒœแƒก แƒ แƒ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒแƒ™แƒ”แƒ—แƒแƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒแƒ›แƒŸแƒแƒ›แƒ˜แƒœแƒ“แƒ”แƒšแƒ˜ แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—. แƒแƒ› แƒ›แƒ˜แƒ–แƒ”แƒ–แƒ˜แƒ—, Kubernetes API แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒ แƒแƒ แƒ’แƒแƒœแƒ˜แƒ–แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ, แƒ แƒแƒ’แƒแƒ แƒช แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ แƒ›แƒแƒ—แƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒš แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ”แƒ‘แƒ—แƒแƒœ.

แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒก.

แƒ•แƒ—แƒฅแƒ•แƒแƒ—, แƒ แƒแƒ› แƒ’แƒกแƒฃแƒ แƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— ReplicaSet แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜. แƒแƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒฆแƒฌแƒ”แƒ แƒ— ReplicaSet แƒคแƒแƒ˜แƒšแƒจแƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ— replicaset.yaml, แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ’แƒแƒฃแƒจแƒ•แƒ˜แƒ— แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ:

$ kubectl create -f replicaset.yaml

แƒ”แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก ReplicaSet แƒ แƒ”แƒกแƒฃแƒ แƒกแƒก. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ แƒ แƒฎแƒ“แƒ”แƒ‘แƒ แƒ™แƒฃแƒšแƒ˜แƒกแƒ”แƒ‘แƒจแƒ˜?

Kubernetes-แƒก แƒแƒฅแƒ•แƒก ReplicaSet แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ. แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒกแƒฎแƒ•แƒ แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ˜แƒก แƒ›แƒกแƒ’แƒแƒ•แƒกแƒแƒ“, แƒ˜แƒก แƒ•แƒšแƒ˜แƒœแƒ“แƒ”แƒ‘แƒ แƒ แƒแƒ’แƒแƒ แƒช API แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜. แƒแƒ› แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ˜แƒก แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ API แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜ แƒแƒกแƒ” แƒ’แƒแƒ›แƒแƒ˜แƒงแƒฃแƒ แƒ”แƒ‘แƒ:

POST /apis/apps/v1/namespaces/{namespace}/replicasets

API แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ”แƒ‘แƒ˜ Kubernetes-แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒฎแƒ˜แƒšแƒแƒ— แƒแƒฅ API แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒ (แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒงแƒ•แƒแƒœแƒ˜แƒšแƒ˜ แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜). แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ แƒ”แƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒก แƒ’แƒแƒœแƒกแƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒšแƒแƒ“, แƒฏแƒ”แƒ  แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ›แƒแƒขแƒแƒ— API แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒก URL แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒก แƒ‘แƒ˜แƒšแƒ˜แƒ™แƒ”แƒ‘แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒฉแƒแƒ›แƒแƒ—แƒ•แƒšแƒ˜แƒšแƒ˜แƒ API แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒแƒจแƒ˜.

แƒ›แƒแƒจแƒแƒกแƒแƒ“แƒแƒ›แƒ”, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ— แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒš แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒแƒก, kubectl แƒแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒก HTTP POST แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒแƒก แƒ–แƒ”แƒ›แƒแƒ— API แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒจแƒ˜. ReplicaSet แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ—แƒฅแƒ•แƒ”แƒœ แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒ”แƒ— แƒคแƒแƒ˜แƒšแƒจแƒ˜ replicaset.yaml, แƒ˜แƒ’แƒ–แƒแƒ•แƒœแƒ”แƒ‘แƒ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒก แƒขแƒ”แƒฅแƒกแƒขแƒจแƒ˜.

แƒแƒกแƒ” แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก kubectl แƒงแƒ•แƒ”แƒšแƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒฃแƒ แƒ—แƒ˜แƒ”แƒ แƒ—แƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒก Kubernetes แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ—แƒแƒœ. แƒงแƒ•แƒ”แƒšแƒ แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, kubectl แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒฃแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒก HTTP แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ”แƒ‘แƒก แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒก Kubernetes API แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ”แƒ‘แƒ–แƒ”.

แƒ’แƒ—แƒฎแƒแƒ•แƒ— แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒแƒ—, แƒ แƒแƒ› แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒกแƒ แƒฃแƒšแƒแƒ“ แƒ›แƒแƒ แƒ—แƒแƒ— Kubernetes แƒ˜แƒกแƒ”แƒ—แƒ˜ แƒฃแƒขแƒ˜แƒšแƒ˜แƒขแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ curlHTTP แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ”แƒ‘แƒ˜แƒก แƒฎแƒ”แƒšแƒ˜แƒ— แƒ’แƒแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒ— Kubernetes API-แƒ–แƒ”. Kubectl แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒแƒแƒ“แƒ•แƒ˜แƒšแƒ”แƒ‘แƒก Kubernetes API-แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒก.

แƒ”แƒก แƒแƒ แƒ˜แƒก แƒกแƒแƒคแƒฃแƒซแƒ•แƒšแƒ”แƒ‘แƒ˜, แƒ—แƒฃ แƒ แƒ แƒแƒ แƒ˜แƒก kubectl แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ˜แƒ’แƒ˜. แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ แƒ˜แƒก แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ แƒแƒฆแƒแƒช Kubernetes API-แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘, แƒ แƒแƒช แƒ™แƒฃแƒ‘แƒ”แƒฅแƒขแƒšแƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒ›แƒ แƒฃแƒœแƒ“แƒ แƒ˜แƒชแƒแƒ“แƒ”แƒก. แƒ›แƒแƒ“แƒ˜แƒ— แƒ’แƒแƒ“แƒแƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒ™แƒฃแƒ‘แƒ”แƒ แƒœแƒ”แƒขแƒ˜แƒก แƒจแƒ˜แƒ“แƒ แƒกแƒแƒ›แƒงแƒแƒ แƒแƒก.

แƒ™แƒฃแƒ‘แƒ”แƒ แƒœแƒ”แƒขแƒ˜แƒก แƒจแƒ˜แƒ“แƒ แƒกแƒแƒ›แƒงแƒแƒ แƒ

Kubernetes แƒจแƒ”แƒ“แƒ’แƒ”แƒ‘แƒ แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ แƒแƒ’แƒแƒ แƒช แƒชแƒแƒšแƒ™แƒ”แƒฃแƒšแƒ˜ แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒ˜ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒฃแƒš แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ–แƒ”. แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ—แƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ›แƒ—แƒแƒ•แƒแƒ  แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ–แƒ”, แƒกแƒฎแƒ•แƒ”แƒ‘แƒ˜ แƒ›แƒฃแƒจแƒ แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ–แƒ”, แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜ แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒก แƒ—แƒแƒ•แƒ˜แƒก แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒš แƒ“แƒแƒ•แƒแƒšแƒ”แƒ‘แƒแƒก.

แƒแƒฅ แƒแƒ แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ”แƒ‘แƒ˜ แƒ›แƒ—แƒแƒ•แƒแƒ  แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ–แƒ”:

  1. แƒกแƒแƒชแƒแƒ•แƒ˜ - แƒ˜แƒœแƒแƒฎแƒแƒ•แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ”แƒ‘แƒก (แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ• แƒ”แƒก แƒแƒ แƒ˜แƒก แƒ.แƒจ).
  2. API แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜ โ€” แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก API-แƒก แƒ“แƒ แƒ›แƒแƒ แƒ—แƒแƒ•แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒก.
  3. แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ˜แƒก แƒ›แƒ”แƒœแƒ”แƒฏแƒ”แƒ แƒ˜ โ€” แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก, แƒ แƒแƒ› แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒกแƒขแƒแƒขแƒฃแƒกแƒ˜ แƒจแƒ”แƒ”แƒกแƒแƒ‘แƒแƒ›แƒ”แƒ‘แƒ แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒก.
  4. แƒ’แƒแƒœแƒ แƒ˜แƒ’แƒ˜ โ€” แƒแƒฌแƒงแƒแƒ‘แƒก แƒžแƒแƒ“แƒ”แƒ‘แƒก แƒ›แƒฃแƒจแƒแƒ—แƒ แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ–แƒ”.

แƒ“แƒ แƒแƒฅ แƒแƒ แƒ˜แƒก แƒ”แƒ แƒ—แƒ˜ แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜ แƒ›แƒฃแƒจแƒ แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ–แƒ”:

  1. แƒ™แƒฃแƒ‘แƒ”แƒšแƒ”แƒขแƒ˜ โ€” แƒ›แƒแƒ แƒ—แƒแƒ•แƒก แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒแƒก แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ™แƒ•แƒแƒœแƒซแƒ–แƒ”.

แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒกแƒแƒ’แƒ”แƒ‘แƒแƒ“, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ”แƒก แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ”แƒ‘แƒ˜ แƒ”แƒ แƒ—แƒแƒ“, แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒก.

แƒ“แƒแƒ•แƒฃแƒจแƒ•แƒแƒ—, แƒ แƒแƒ› แƒแƒฎแƒšแƒแƒฎแƒแƒœ แƒ“แƒแƒแƒกแƒ แƒฃแƒšแƒ”แƒ— kubectl create -f replicaset.yaml, แƒ แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒแƒช kubectl-แƒ›แƒ แƒ’แƒแƒแƒ™แƒ”แƒ—แƒ HTTP POST แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ ReplicaSet API แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜ (ReplicaSet แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ•แƒšแƒ).

แƒ แƒ แƒฎแƒ“แƒ”แƒ‘แƒ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒจแƒ˜?

  1. แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ kubectl create -f replicaset.yaml API แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜ แƒ˜แƒœแƒแƒฎแƒแƒ•แƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒก ReplicaSet แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒแƒก แƒกแƒแƒชแƒแƒ•แƒจแƒ˜:

    แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ

  2. แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜, ReplicaSet แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ˜ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ˜แƒก แƒ›แƒ”แƒœแƒ”แƒฏแƒ”แƒ แƒจแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒก ReplicaSet แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒแƒก, แƒจแƒ”แƒชแƒ•แƒšแƒแƒก แƒ“แƒ แƒฌแƒแƒจแƒšแƒแƒก:

    แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ

  3. ReplicaSet แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ˜ แƒฅแƒ›แƒœแƒ˜แƒก pod แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒแƒก ReplicaSet-แƒ˜แƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒแƒกแƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก (ReplicaSet-แƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ˜แƒก pod แƒจแƒแƒ‘แƒšแƒแƒœแƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—) แƒ“แƒ แƒ˜แƒœแƒแƒฎแƒแƒ•แƒก แƒ›แƒแƒ— แƒกแƒแƒชแƒแƒ•แƒจแƒ˜:

    แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ

  4. แƒ’แƒแƒœแƒ แƒ˜แƒ’แƒ˜แƒก แƒแƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ, แƒ—แƒ•แƒแƒšแƒ—แƒ•แƒแƒšแƒ˜แƒก แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒฏแƒ”แƒ  แƒแƒ  แƒแƒ แƒ˜แƒก แƒ›แƒ˜แƒœแƒ˜แƒญแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒ แƒชแƒ”แƒ แƒ— แƒ›แƒฃแƒจแƒ แƒ™แƒ•แƒแƒœแƒซแƒ–แƒ”:

    แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ

  5. แƒ“แƒแƒ›แƒ’แƒ”แƒ’แƒ›แƒแƒ•แƒ˜ แƒ˜แƒ แƒฉแƒ”แƒ•แƒก แƒจแƒ”แƒกแƒแƒคแƒ”แƒ แƒ˜แƒก แƒ›แƒฃแƒจแƒ แƒ™แƒ•แƒแƒœแƒซแƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒžแƒแƒ“แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒแƒ›แƒแƒขแƒ”แƒ‘แƒก แƒแƒ› แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก แƒ’แƒแƒœแƒงแƒแƒคแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒแƒก แƒ›แƒแƒฆแƒแƒ–แƒ˜แƒแƒจแƒ˜:

    แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ

  6. แƒ›แƒฃแƒจแƒ แƒ™แƒ•แƒแƒœแƒซแƒ–แƒ”, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒ”แƒœแƒ˜แƒญแƒ”แƒ‘แƒ pod, Kubelet แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ, แƒ˜แƒก แƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ‘แƒก แƒแƒ› แƒ™แƒ•แƒแƒœแƒซแƒก แƒ›แƒ˜แƒœแƒ˜แƒญแƒ”แƒ‘แƒฃแƒš แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒก:

    แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ

  7. Kubelet แƒ™แƒ˜แƒ—แƒฎแƒฃแƒšแƒแƒ‘แƒก pod แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒแƒก แƒกแƒแƒชแƒแƒ•แƒ˜แƒ“แƒแƒœ แƒ“แƒ แƒแƒ•แƒแƒšแƒ”แƒ‘แƒก แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒแƒก, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ Docker, แƒ’แƒแƒฃแƒจแƒ•แƒแƒก แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒ”แƒ‘แƒ˜ แƒ™แƒ•แƒแƒœแƒซแƒ–แƒ”:

    แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ

แƒฅแƒ•แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜แƒ แƒแƒ› แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒแƒ‘แƒ˜แƒก แƒขแƒ”แƒฅแƒกแƒขแƒฃแƒ แƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ.

API แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ ReplicaSet-แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒกแƒแƒ“แƒ›แƒ˜ แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ API แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ . API แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜ แƒแƒฎแƒ“แƒ”แƒœแƒก แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒก แƒแƒ•แƒ—แƒ”แƒœแƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒแƒก แƒ“แƒ แƒ˜แƒœแƒแƒฎแƒแƒ•แƒก ReplicaSet แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒแƒก แƒกแƒแƒชแƒแƒ•แƒจแƒ˜.

แƒ”แƒก แƒฆแƒแƒœแƒ˜แƒกแƒซแƒ˜แƒ”แƒ‘แƒ แƒ˜แƒฌแƒงแƒ”แƒ‘แƒก ReplicaSet แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ แƒ˜แƒก แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ˜แƒก แƒ›แƒ”แƒœแƒ”แƒฏแƒ”แƒ แƒ˜แƒก แƒฅแƒ•แƒ”แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜. ReplicaSet แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ˜ แƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ‘แƒก ReplicaSet แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒแƒก, แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒแƒก แƒ“แƒ แƒฌแƒแƒจแƒšแƒแƒก แƒ›แƒแƒฆแƒแƒ–แƒ˜แƒแƒจแƒ˜ แƒ“แƒ แƒ˜แƒฆแƒ”แƒ‘แƒก แƒฆแƒแƒœแƒ˜แƒกแƒซแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒขแƒงแƒแƒ‘แƒ˜แƒœแƒ”แƒ‘แƒแƒก, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ”แƒก แƒ›แƒแƒฎแƒ“แƒ”แƒ‘แƒ.

ReplicaSet แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ˜แƒก แƒแƒ›แƒแƒชแƒแƒœแƒแƒ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ˜แƒก ReplicaSet pods. แƒฉแƒ•แƒ”แƒœแƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒจแƒ˜ แƒฏแƒ”แƒ  แƒแƒ  แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒžแƒแƒ“แƒšแƒ”แƒ‘แƒ˜, แƒแƒ›แƒ˜แƒขแƒแƒ› ReplicaSet แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ˜ แƒฅแƒ›แƒœแƒ˜แƒก แƒแƒ› pod แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ”แƒ‘แƒก (ReplicaSet-แƒ˜แƒก แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒ”แƒ‘แƒ˜แƒก แƒžแƒแƒ“ แƒจแƒแƒ‘แƒšแƒแƒœแƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—) แƒ“แƒ แƒ˜แƒœแƒแƒฎแƒแƒ•แƒก แƒ›แƒแƒ— แƒกแƒแƒชแƒแƒ•แƒจแƒ˜.

แƒแƒฎแƒแƒšแƒ˜ pod-แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ แƒฎแƒ“แƒ”แƒ‘แƒ แƒ’แƒ แƒแƒคแƒ˜แƒ™แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ , แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ‘แƒก แƒžแƒแƒ“ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒ”แƒ‘แƒ”แƒ‘แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒฏแƒ”แƒ  แƒแƒ  แƒแƒ แƒ˜แƒก แƒ“แƒแƒ’แƒ”แƒ’แƒ›แƒ˜แƒšแƒ˜ แƒ›แƒฃแƒจแƒ แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ“แƒแƒ›แƒ’แƒ”แƒ’แƒ›แƒแƒ•แƒ˜ แƒ˜แƒ แƒฉแƒ”แƒ•แƒก แƒจแƒ”แƒกแƒแƒคแƒ”แƒ แƒ˜แƒก แƒ›แƒฃแƒจแƒ แƒ™แƒ•แƒแƒœแƒซแƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒžแƒแƒ“แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒ’แƒแƒœแƒแƒแƒฎแƒšแƒ”แƒ‘แƒก แƒžแƒแƒ“ แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ”แƒ‘แƒก แƒกแƒแƒชแƒแƒ•แƒจแƒ˜.

แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› แƒแƒ› แƒ›แƒแƒ›แƒ”แƒœแƒขแƒแƒ›แƒ“แƒ” แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒจแƒ˜ แƒแƒ แƒกแƒแƒ“ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒ  แƒ˜แƒงแƒ แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ™แƒแƒ“แƒ˜. แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒ แƒแƒช แƒแƒฅแƒแƒ›แƒ“แƒ” แƒ’แƒแƒ™แƒ”แƒ—แƒ“แƒ - แƒ”แƒก แƒแƒ แƒ˜แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ แƒ“แƒ แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒ แƒกแƒแƒชแƒแƒ•แƒจแƒ˜ แƒ›แƒ—แƒแƒ•แƒแƒ  แƒ™แƒ•แƒแƒœแƒซแƒ–แƒ”.

แƒ‘แƒแƒšแƒ แƒ›แƒแƒ•แƒšแƒ”แƒœแƒ แƒ˜แƒฌแƒ•แƒ”แƒ•แƒก Kubelets-แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒก แƒฃแƒฌแƒ”แƒ•แƒก แƒ›แƒแƒ—แƒ˜ แƒ›แƒฃแƒจแƒ แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒแƒ’แƒ”แƒ’แƒ›แƒ˜แƒš แƒžแƒแƒ“แƒ”แƒ‘แƒก. แƒ›แƒฃแƒจแƒ แƒ™แƒ•แƒแƒœแƒซแƒ˜แƒก Kubelet, แƒ แƒแƒ›แƒ”แƒšแƒ–แƒ”แƒช แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ ReplicaSet pods, แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ•แƒแƒšแƒแƒก แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒ, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ Docker, แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ’แƒแƒฃแƒจแƒ•แƒแƒก แƒ˜แƒกแƒ˜แƒœแƒ˜.

แƒแƒ› แƒ”แƒขแƒแƒžแƒ–แƒ”, แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ ReplicaSet แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ แƒกแƒแƒ‘แƒแƒšแƒแƒแƒ“ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก!

Kubernetes API-แƒก แƒ แƒแƒšแƒ˜

แƒ แƒแƒ’แƒแƒ แƒช แƒฌแƒ˜แƒœแƒ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒจแƒ˜ แƒœแƒแƒฎแƒ”, Kubernetes แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ”แƒ‘แƒ˜ (แƒ’แƒแƒ แƒ“แƒ API แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒกแƒ แƒ“แƒ แƒจแƒ”แƒœแƒแƒฎแƒ•แƒ˜แƒกแƒ) แƒแƒ™แƒ•แƒ˜แƒ แƒ“แƒ”แƒ‘แƒ˜แƒแƒœ แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒก แƒกแƒแƒชแƒแƒ•แƒจแƒ˜ แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒš แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒจแƒ˜ แƒ“แƒ แƒชแƒ•แƒšแƒ˜แƒก แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก แƒกแƒแƒชแƒแƒ•แƒจแƒ˜ แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘.

แƒ แƒ แƒ—แƒฅแƒ›แƒ แƒฃแƒœแƒ“แƒ, แƒ”แƒก แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ”แƒ‘แƒ˜ แƒแƒ  แƒฃแƒ แƒ—แƒ˜แƒ”แƒ แƒ—แƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ”แƒœ แƒฃแƒจแƒฃแƒแƒšแƒแƒ“ แƒกแƒแƒชแƒแƒ•แƒ—แƒแƒœ, แƒแƒ แƒแƒ›แƒ”แƒ“ แƒ›แƒฎแƒแƒšแƒแƒ“ Kubernetes API-แƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—.

แƒ’แƒแƒœแƒ•แƒ˜แƒฎแƒ˜แƒšแƒแƒ— แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜:

  1. ReplicaSet แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ˜ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก API แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒก แƒฉแƒแƒ›แƒแƒ—แƒ•แƒแƒšแƒ”แƒ— ReplicaSets แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒ— watch ReplicaSet แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒจแƒ˜ แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜.
  2. ReplicaSet แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ˜ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก API แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒก Pod-แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ (แƒจแƒ”แƒฅแƒ›แƒ”แƒœแƒ˜แƒ— แƒžแƒแƒ“แƒ˜) แƒ‘แƒฃแƒ“แƒ”แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฅแƒ›แƒœแƒ”แƒšแƒแƒ“.
  3. Scheduler แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก API แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒก แƒžแƒแƒขแƒฉแƒ˜ แƒžแƒแƒ“แƒ˜ (แƒ แƒ”แƒ“แƒแƒฅแƒขแƒ˜แƒ แƒ”แƒ‘แƒ pod) แƒ’แƒแƒœแƒแƒแƒฎแƒšแƒแƒก pods แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ แƒแƒ แƒฉแƒ”แƒฃแƒšแƒ˜ แƒ›แƒฃแƒจแƒ แƒ™แƒ•แƒแƒœแƒซแƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘.

แƒ แƒแƒ’แƒแƒ แƒช แƒฎแƒ”แƒ“แƒแƒ•แƒ—, แƒ”แƒก แƒแƒ แƒ˜แƒก แƒ˜แƒ’แƒ˜แƒ•แƒ” API, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช kubectl แƒฌแƒ•แƒ“แƒ”แƒ‘แƒ. แƒจแƒ˜แƒ“แƒ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒ’แƒแƒ แƒ” แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ˜แƒ’แƒ˜แƒ•แƒ” API-แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒคแƒฃแƒœแƒ“แƒแƒ›แƒ”แƒœแƒขแƒฃแƒ แƒ˜ แƒ™แƒแƒœแƒชแƒ”แƒคแƒชแƒ˜แƒแƒ Kubernetes-แƒ˜แƒก แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒจแƒ˜.

แƒแƒฎแƒšแƒ แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒจแƒ”แƒ•แƒแƒฏแƒแƒ›แƒแƒ— แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก Kubernetes:

  1. แƒจแƒ”แƒœแƒแƒฎแƒ•แƒ˜แƒก แƒ›แƒแƒฆแƒแƒ–แƒ˜แƒ”แƒ‘แƒจแƒ˜ แƒฌแƒ”แƒ แƒ˜แƒ, แƒแƒœแƒฃ Kubernetes แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜.
  2. API แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒก แƒกแƒแƒชแƒแƒ•แƒจแƒ˜ Kubernetes API-แƒ˜แƒก แƒกแƒแƒฎแƒ˜แƒ—.
  3. Kubernetes-แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒกแƒฎแƒ•แƒ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜ แƒ“แƒ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ™แƒ˜แƒ—แƒฎแƒฃแƒšแƒแƒ‘แƒก, แƒแƒ™แƒ•แƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ“แƒ แƒ›แƒแƒœแƒ˜แƒžแƒฃแƒšแƒ˜แƒ แƒ”แƒ‘แƒก Kubernetes-แƒ˜แƒก แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒแƒก (แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒก) API-แƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—.

แƒแƒ› แƒชแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒชแƒแƒ“แƒœแƒ แƒ“แƒแƒ’แƒ”แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒแƒ— แƒฃแƒ™แƒ”แƒ— แƒ’แƒแƒ˜แƒ’แƒแƒ— kubectl แƒ“แƒ แƒ›แƒ˜แƒ˜แƒฆแƒแƒ— แƒ›แƒแƒฅแƒกแƒ˜แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒแƒ‘แƒ.

แƒแƒฎแƒšแƒ แƒ›แƒแƒ“แƒ˜แƒ— แƒ’แƒแƒ“แƒแƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒš แƒ แƒฉแƒ”แƒ•แƒแƒก แƒ“แƒ แƒฎแƒ แƒ˜แƒ™แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ“แƒแƒ’แƒ”แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒแƒ— แƒ’แƒแƒแƒฃแƒ›แƒฏแƒแƒ‘แƒ”แƒกแƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒžแƒ แƒแƒ“แƒฃแƒฅแƒขแƒ˜แƒฃแƒšแƒแƒ‘แƒ kubectl-แƒ˜แƒ—.

1. แƒ“แƒแƒแƒฉแƒฅแƒแƒ แƒ”แƒ— แƒจแƒ”แƒงแƒ•แƒแƒœแƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—

Kubectl-แƒ˜แƒ— แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒฃแƒ›แƒฏแƒแƒ‘แƒ”แƒกแƒ”แƒ‘แƒ˜แƒก แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒกแƒแƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒฎแƒจแƒ˜แƒ แƒแƒ“ แƒจแƒ”แƒฃแƒ›แƒฉแƒœแƒ”แƒ•แƒ”แƒšแƒ˜ แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒ แƒแƒ แƒ˜แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ.

แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒ“แƒแƒแƒกแƒ แƒฃแƒšแƒแƒ— kubectl แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒœแƒแƒฌแƒ˜แƒšแƒ”แƒ‘แƒ˜ Tab แƒ™แƒšแƒแƒ•แƒ˜แƒจแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒ”แƒก แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒฅแƒ•แƒ”แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒแƒ แƒ’แƒฃแƒ›แƒ”แƒœแƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒ˜แƒกแƒ”แƒ—แƒ˜ แƒ แƒ—แƒฃแƒšแƒ˜, แƒ แƒแƒ’แƒแƒ แƒ˜แƒช แƒแƒ แƒ˜แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜.

แƒœแƒแƒฎแƒ”แƒ—, แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก kubectl แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ:

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ
แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒ›แƒฃแƒจแƒแƒแƒ”แƒ‘แƒ˜ Bash แƒ“แƒ Zsh แƒญแƒฃแƒ แƒ•แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒแƒคแƒ˜แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ  แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒก แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“, แƒ›แƒแƒ’แƒ แƒแƒ› แƒฅแƒ•แƒ”แƒ›แƒแƒ— แƒจแƒ”แƒ›แƒแƒ’แƒ—แƒแƒ•แƒแƒ–แƒ”แƒ‘แƒ— แƒ›แƒแƒ™แƒšแƒ” แƒแƒ›แƒแƒœแƒแƒ แƒ˜แƒ“แƒก.

แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ

แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒแƒ แƒ˜แƒก แƒญแƒฃแƒ แƒ•แƒ˜แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒ’แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒแƒ แƒ˜แƒก shell แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒก แƒ’แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒ˜แƒก แƒฅแƒชแƒ”แƒ•แƒแƒก แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

Kubectl แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒฌแƒแƒ แƒ›แƒแƒฅแƒ›แƒœแƒ˜แƒก แƒ“แƒ แƒ’แƒแƒ›แƒแƒกแƒชแƒ”แƒ›แƒก แƒ’แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ”แƒ‘แƒก Bash-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ Zsh-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—:

$ kubectl completion bash

ะ˜ะปะธ:

$ kubectl completion zsh

แƒ—แƒ”แƒแƒ แƒ˜แƒฃแƒšแƒแƒ“, แƒกแƒแƒ™แƒ›แƒแƒ แƒ˜แƒกแƒ˜แƒ แƒแƒ› แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒ•แƒแƒšแƒ˜ แƒ“แƒแƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒแƒ— แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒกแƒก, แƒ แƒแƒ—แƒ kubectl-แƒ›แƒ แƒจแƒ”แƒซแƒšแƒแƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ•แƒกแƒ”แƒ‘แƒ.

แƒžแƒ แƒแƒฅแƒขแƒ˜แƒ™แƒแƒจแƒ˜, แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒ›แƒ”แƒ—แƒแƒ“แƒ˜ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ Bash-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก (แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒ”แƒ‘แƒ˜ Linux-แƒกแƒ แƒ“แƒ MacOS-แƒก แƒจแƒแƒ แƒ˜แƒก) แƒ“แƒ Zsh-แƒกแƒ—แƒ•แƒ˜แƒก. แƒฅแƒ•แƒ”แƒ›แƒแƒ— แƒ’แƒแƒœแƒ•แƒ˜แƒฎแƒ˜แƒšแƒแƒ•แƒ— แƒงแƒ•แƒ”แƒšแƒ แƒแƒ› แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒก.

Bash Linux-แƒ–แƒ”

Bash-แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒ“แƒแƒ›แƒแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ bash-แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒžแƒแƒ™แƒ”แƒขแƒ–แƒ”, แƒแƒ›แƒ˜แƒขแƒแƒ› แƒฏแƒ”แƒ  แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ—:

$ sudo apt-get install bash-completion

ะ˜ะปะธ:

$ yum install bash-completion

แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒแƒ›แƒแƒฌแƒ›แƒแƒ—, แƒ แƒแƒ› แƒžแƒแƒ™แƒ”แƒขแƒ˜ แƒฌแƒแƒ แƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— แƒแƒ แƒ˜แƒก แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—:

$ type _init_completion

แƒ—แƒฃ แƒ”แƒก แƒ’แƒแƒ›แƒแƒกแƒชแƒ”แƒ›แƒก shell-แƒ˜แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ˜แƒก แƒ™แƒแƒ“แƒก, แƒ›แƒแƒจแƒ˜แƒœ bash-completion แƒกแƒฌแƒแƒ แƒแƒ“ แƒแƒ แƒ˜แƒก แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜. แƒ—แƒฃ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒ˜แƒซแƒšแƒ”แƒ•แƒ "แƒแƒ  แƒแƒ แƒ˜แƒก แƒœแƒแƒžแƒแƒ•แƒœแƒ˜" แƒจแƒ”แƒชแƒ“แƒแƒ›แƒแƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ›แƒแƒขแƒแƒ— แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒฎแƒแƒ–แƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒคแƒแƒ˜แƒšแƒก ~ / .bashrc:

$ source /usr/share/bash-completion/bash_completion

แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒ—แƒฃ แƒแƒ แƒ แƒแƒ› แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ˜แƒก แƒคแƒแƒ˜แƒšแƒจแƒ˜ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ ~ / .bashrc แƒ—แƒฃ แƒแƒ แƒ, แƒ”แƒก แƒ“แƒแƒ›แƒแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ›แƒ”แƒœแƒ”แƒฏแƒ”แƒ แƒ–แƒ”, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— bash-completion-แƒ˜แƒก แƒ“แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“. แƒ”แƒก แƒแƒฃแƒชแƒ˜แƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ APT-แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ แƒ YUM-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

bash-completion-แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒ˜แƒ แƒแƒ— แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒ˜แƒกแƒ”, แƒ แƒแƒ› kubectl-แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒฉแƒแƒ แƒ—แƒฃแƒšแƒ˜ แƒ˜แƒงแƒแƒก shell-แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒกแƒ”แƒกแƒ˜แƒแƒ–แƒ”.

แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ˜แƒก แƒ”แƒ แƒ—แƒ˜ แƒ’แƒ–แƒแƒ แƒคแƒแƒ˜แƒšแƒจแƒ˜ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒฎแƒแƒ–แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ ~ / .bashrc:

source <(kubectl completion bash)

แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ”แƒ แƒ—แƒ˜ แƒ’แƒ–แƒแƒ kubectl แƒ’แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜ /etc/bash_completion.d (แƒจแƒ”แƒฅแƒ›แƒ”แƒœแƒ˜, แƒ—แƒฃ แƒแƒ  แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก):

$ kubectl completion bash >/etc/bash_completion.d/kubectl

แƒงแƒ•แƒ”แƒšแƒ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒ™แƒแƒขแƒแƒšแƒแƒ’แƒจแƒ˜ /etc/bash_completion.d แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒจแƒ”แƒ“แƒ˜แƒก bash-แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒจแƒ˜.

แƒแƒ แƒ˜แƒ•แƒ” แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ แƒ—แƒแƒœแƒแƒ‘แƒ แƒแƒ“ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ.

แƒญแƒฃแƒ แƒ•แƒ˜แƒก แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, kubectl แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒก.

Bash MacOS-แƒ–แƒ”

MacOS-แƒ–แƒ” แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒชแƒแƒขแƒ แƒฃแƒคแƒ แƒ แƒ แƒ—แƒฃแƒšแƒ˜แƒ. แƒคแƒแƒฅแƒขแƒ˜แƒ, แƒ แƒแƒ› แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒแƒ“, MacOS แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก Bash 3.2 แƒ•แƒ”แƒ แƒกแƒ˜แƒแƒก, แƒฎแƒแƒšแƒ kubectl แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก Bash แƒ•แƒ”แƒ แƒกแƒ˜แƒแƒก แƒ›แƒ˜แƒœแƒ˜แƒ›แƒฃแƒ› 4.1 แƒ“แƒ แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก Bash 3.2-แƒจแƒ˜.

แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒšแƒ˜แƒชแƒ”แƒœแƒ–แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ Bash-แƒ˜แƒก แƒ›แƒแƒซแƒ•แƒ”แƒšแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒกแƒ—แƒแƒœ MacOS-แƒ–แƒ”. Bash แƒ•แƒ”แƒ แƒกแƒ˜แƒ 4 แƒšแƒ˜แƒชแƒ”แƒœแƒ–แƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ GPLv3-แƒ˜แƒ—, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ  แƒแƒ แƒ˜แƒก แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ˜แƒšแƒ˜ Apple-แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ .

MacOS-แƒ–แƒ” kubectl แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ— Bash-แƒ˜แƒก แƒฃแƒแƒฎแƒšแƒ”แƒกแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ. แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒฃแƒšแƒ˜ Bash แƒ“แƒแƒแƒงแƒ”แƒœแƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ• แƒ’แƒแƒ แƒกแƒแƒ“, แƒ แƒแƒช แƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒจแƒ˜ แƒ‘แƒ”แƒ•แƒ  แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒแƒก แƒ’แƒ˜แƒจแƒ•แƒ”แƒšแƒ˜แƒก. แƒ”แƒก แƒแƒ  แƒแƒ แƒ˜แƒก แƒ แƒ—แƒฃแƒšแƒ˜, แƒ“แƒ”แƒขแƒแƒšแƒ”แƒ‘แƒ˜ แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜แƒ แƒกแƒขแƒแƒขแƒ˜แƒแƒจแƒ˜ "Bash-แƒ˜แƒก แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒ MacOS-แƒ–แƒ”".

แƒกแƒแƒœแƒแƒ› แƒ’แƒแƒแƒ’แƒ แƒซแƒ”แƒšแƒ”แƒ‘แƒ—, แƒ“แƒแƒ แƒฌแƒ›แƒฃแƒœแƒ“แƒ˜แƒ—, แƒ แƒแƒ› แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ— Bash-แƒ˜แƒก แƒฃแƒแƒฎแƒšแƒ”แƒก แƒ•แƒ”แƒ แƒกแƒ˜แƒแƒก (แƒจแƒ”แƒแƒ›แƒแƒฌแƒ›แƒ”แƒ— แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ bash --version).

Bash-แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ“แƒ”แƒ‘แƒ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ— แƒ‘แƒแƒจ-แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒแƒกแƒ” แƒ แƒแƒ›, แƒฏแƒ”แƒ  แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ—.

แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ— bash-completion แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— Homebrew:

$ brew install bash-completion@2

แƒแƒฅ @2 แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก bash-completion แƒ•แƒ”แƒ แƒกแƒ˜แƒ 2. kubectl แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก bash-completion v2, แƒฎแƒแƒšแƒ bash-completion v2 แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒ›แƒ˜แƒœแƒ˜แƒ›แƒฃแƒ› Bash แƒ•แƒ”แƒ แƒกแƒ˜แƒแƒก 4.1.

แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ brew-install แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก Caveats แƒ’แƒแƒœแƒงแƒแƒคแƒ˜แƒšแƒ”แƒ‘แƒแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒก แƒ แƒ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒ”แƒ›แƒแƒขแƒแƒก แƒคแƒแƒ˜แƒšแƒก ~/.bash_profile:

export BASH_COMPLETION_COMPAT_DIR=/usr/local/etc/bash_completion.d
[[ -r "/usr/local/etc/profile.d/bash_completion.sh" ]] && . 
"/usr/local/etc/profile.d/bash_completion.sh"

แƒ—แƒฃแƒ›แƒชแƒ, แƒ’แƒ˜แƒ แƒฉแƒ”แƒ•แƒ—, แƒ”แƒก แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ”แƒ‘แƒ˜ แƒแƒ  แƒ“แƒแƒแƒ›แƒแƒขแƒแƒ— ~/.bash_profileแƒ“แƒ ~/.bashrc. แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒแƒ แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ›แƒ—แƒแƒ•แƒแƒ , แƒแƒ แƒแƒ›แƒ”แƒ“ แƒ‘แƒแƒ•แƒจแƒ•แƒ˜แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒญแƒฃแƒ แƒ•แƒ”แƒ‘แƒจแƒ˜แƒช.

แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒกแƒ˜แƒก แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒแƒ“แƒแƒกแƒขแƒฃแƒ แƒแƒ—, แƒ แƒแƒ› แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ แƒกแƒฌแƒแƒ แƒ˜แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—:

$ type _init_completion

แƒ—แƒฃ แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒจแƒ˜ แƒฎแƒ”แƒ“แƒแƒ•แƒ— แƒญแƒฃแƒ แƒ•แƒ˜แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒก, แƒ›แƒแƒจแƒ˜แƒœ แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒกแƒฌแƒแƒ แƒแƒ“ แƒแƒ แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜.

แƒแƒฎแƒšแƒ แƒฉแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒ•แƒ แƒฌแƒ›แƒฃแƒœแƒ“แƒ”แƒ—, แƒ แƒแƒ› kubectl แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒฉแƒแƒ แƒ—แƒฃแƒšแƒ˜แƒ แƒงแƒ•แƒ”แƒšแƒ แƒกแƒ”แƒกแƒ˜แƒแƒ–แƒ”.

แƒ”แƒ แƒ—แƒ˜ แƒ’แƒ–แƒ แƒแƒ แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒฎแƒแƒ–แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ ~/.bashrc:

source <(kubectl completion bash)

แƒ›แƒ”แƒแƒ แƒ” แƒ’แƒ–แƒ แƒแƒ แƒ˜แƒก แƒกแƒแƒฅแƒแƒฆแƒแƒšแƒ“แƒ”แƒจแƒ˜ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒจแƒ”แƒ•แƒกแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ /usr/local/etc/bash_completion.d:

$ kubectl completion bash
>/usr/local/etc/bash_completion.d/kubectl

แƒ”แƒก แƒ›แƒ”แƒ—แƒแƒ“แƒ˜ แƒ˜แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ˜แƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ— bash-completion Homebrew-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, bash-completion แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ•แƒก แƒงแƒ•แƒ”แƒšแƒ แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒก แƒแƒ› แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒ“แƒแƒœ.

แƒ—แƒฃ แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ— kubectl Homebrew-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒ›แƒแƒจแƒ˜แƒœ แƒแƒ  แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒฌแƒ˜แƒœแƒ แƒœแƒแƒ‘แƒ˜แƒฏแƒ˜แƒก แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ, แƒ แƒแƒ“แƒ’แƒแƒœ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒ’แƒแƒœแƒ—แƒแƒ•แƒกแƒ“แƒ”แƒ‘แƒ แƒกแƒแƒฅแƒแƒฆแƒแƒšแƒ“แƒ”แƒจแƒ˜ /usr/local/etc/bash_completion.d แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒก แƒ“แƒ แƒแƒก. แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, kubectl autocompletion แƒ“แƒแƒ˜แƒฌแƒงแƒ”แƒ‘แƒก แƒ›แƒฃแƒจแƒแƒแƒ‘แƒแƒก bash-completion-แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒแƒœแƒแƒ•แƒ”.

แƒจแƒ”แƒ“แƒ”แƒ’แƒแƒ“, แƒงแƒ•แƒ”แƒšแƒ แƒ”แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ แƒ”แƒฅแƒ•แƒ˜แƒ•แƒแƒšแƒ”แƒœแƒขแƒฃแƒ แƒ˜แƒ.

แƒ–แƒจ

Zsh-แƒ˜แƒก แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒจแƒ”แƒ•แƒกแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ”แƒ‘แƒ˜ แƒแƒ  แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒก แƒ แƒแƒ˜แƒ›แƒ” แƒ“แƒแƒ›แƒแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒฃแƒšแƒ”แƒ‘แƒแƒก. แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒ แƒแƒช แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒแƒ™แƒ”แƒ—แƒแƒ— แƒแƒ แƒ˜แƒก แƒ›แƒแƒ—แƒ˜ แƒฉแƒแƒ แƒ—แƒ•แƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒกแƒ˜แƒก แƒฉแƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒกแƒแƒก.

แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒฎแƒแƒ–แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— ~/.zshrc แƒคแƒแƒ˜แƒšแƒ˜:

source <(kubectl completion zsh)

แƒ—แƒฃ แƒจแƒ”แƒชแƒ“แƒแƒ›แƒแƒก แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ‘แƒ— not found: compdef แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ’แƒแƒ แƒกแƒ˜แƒก แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒฉแƒแƒ แƒ—แƒแƒ— แƒฉแƒแƒจแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ compdef. แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒฉแƒแƒ แƒ—แƒแƒ— แƒ˜แƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒ“แƒแƒกแƒแƒฌแƒงแƒ˜แƒกแƒจแƒ˜ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— ~/.zshrc แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜:

autoload -Uz compinit
compinit

2. แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒกแƒฌแƒ แƒแƒคแƒ˜ แƒœแƒแƒฎแƒ•แƒ

แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒฅแƒ›แƒœแƒ˜แƒ— YAML แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ”แƒ‘แƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ˜แƒชแƒแƒ“แƒ”แƒ— แƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ›แƒแƒ—แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒแƒ› แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒแƒ› แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ˜แƒก แƒ›แƒแƒกแƒแƒซแƒ”แƒ‘แƒœแƒแƒ“ แƒ”แƒ แƒ—แƒ˜ แƒแƒ“แƒ’แƒ˜แƒšแƒ˜แƒ API แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒกแƒ แƒฃแƒš แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒก.

แƒ—แƒฃแƒ›แƒชแƒ, แƒ•แƒ”แƒ‘ แƒ‘แƒ แƒแƒฃแƒ–แƒ”แƒ แƒ–แƒ” แƒ’แƒแƒ“แƒแƒ แƒ—แƒ•แƒ แƒงแƒแƒ•แƒ”แƒš แƒฏแƒ”แƒ แƒ–แƒ”, แƒ แƒแƒชแƒ แƒ แƒแƒ˜แƒ›แƒ”แƒก แƒซแƒ˜แƒ”แƒ‘แƒ แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ—, แƒ›แƒแƒฃแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ. แƒแƒ›แƒ˜แƒขแƒแƒ› kubectl แƒ˜แƒซแƒšแƒ”แƒ•แƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒแƒก kubectl explain, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒ›แƒแƒฎแƒแƒกแƒ˜แƒแƒ—แƒ”แƒ‘แƒšแƒ”แƒ‘แƒก แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒขแƒ”แƒ แƒ›แƒ˜แƒœแƒแƒšแƒจแƒ˜.

แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒคแƒแƒ แƒ›แƒแƒขแƒ˜ แƒแƒกแƒ”แƒ—แƒ˜แƒ:

$ kubectl explain resource[.field]...

แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒกแƒชแƒ”แƒ›แƒก แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒšแƒ˜ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒแƒœ แƒ•แƒ”แƒšแƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒแƒก. แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜ แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ แƒ˜แƒ“แƒ”แƒœแƒขแƒฃแƒ แƒ˜แƒ API แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒแƒจแƒ˜ แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜.

แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒฃแƒšแƒแƒ“ kubectl explain แƒ’แƒ•แƒ˜แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒ‘แƒฃแƒ“แƒแƒ‘แƒ˜แƒก แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒ“แƒแƒœแƒ”แƒก.

แƒœแƒแƒฎแƒ”แƒ—, แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ˜แƒงแƒฃแƒ แƒ”แƒ‘แƒ แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ—.

แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒแƒฉแƒ•แƒ”แƒœแƒแƒ— แƒ›แƒ—แƒ”แƒšแƒ˜ แƒฎแƒ”, แƒ—แƒฃ แƒ“แƒแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ— แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒก --recursive:

$ kubectl explain deployment.spec --recursive

แƒ—แƒฃ แƒแƒ  แƒ˜แƒชแƒ˜แƒ— แƒ–แƒฃแƒกแƒขแƒแƒ“ แƒ แƒแƒ›แƒ”แƒšแƒ˜ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒ แƒกแƒแƒญแƒ˜แƒ แƒ, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒแƒฉแƒ•แƒ”แƒœแƒแƒ— แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒ—:

$ kubectl api-resources

แƒ”แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒก แƒ›แƒ แƒแƒ•แƒšแƒแƒ‘แƒ˜แƒ—แƒ˜แƒก แƒกแƒแƒฎแƒ˜แƒ—, แƒ›แƒแƒ’. deployments แƒœแƒแƒชแƒ•แƒšแƒแƒ“ deployment. แƒ˜แƒก แƒแƒกแƒ”แƒ•แƒ” แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒ›แƒแƒ™แƒšแƒ” แƒกแƒแƒฎแƒ”แƒšแƒก, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“ deploy, แƒ˜แƒ› แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒกแƒแƒช แƒ”แƒก แƒแƒฅแƒ•แƒ—. แƒแƒ  แƒ˜แƒœแƒ”แƒ แƒ•แƒ˜แƒฃแƒšแƒแƒ— แƒแƒ› แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒ—. แƒ“แƒแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ”แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ แƒ”แƒฅแƒ•แƒ˜แƒ•แƒแƒšแƒ”แƒœแƒขแƒฃแƒ แƒ˜แƒ kubectl-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒแƒœแƒฃ, แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒ›แƒแƒ—แƒ’แƒแƒœแƒ˜ kubectl explain.

แƒงแƒ•แƒ”แƒšแƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒ”แƒฅแƒ•แƒ˜แƒ•แƒแƒšแƒ”แƒœแƒขแƒฃแƒ แƒ˜แƒ:

$ kubectl explain deployments.spec
# ะธะปะธ
$ kubectl explain deployment.spec
# ะธะปะธ        
$ kubectl explain deploy.spec

3. แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— แƒกแƒแƒ‘แƒแƒŸแƒ แƒกแƒ•แƒ”แƒขแƒ˜แƒก แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒคแƒแƒ แƒ›แƒแƒขแƒ˜

แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜ แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒคแƒแƒ แƒ›แƒแƒขแƒ˜ kubectl get:

$ kubectl get pods
NAME                     READY    STATUS    RESTARTS  AGE
engine-544b6b6467-22qr6   1/1     Running     0       78d
engine-544b6b6467-lw5t8   1/1     Running     0       78d
engine-544b6b6467-tvgmg   1/1     Running     0       78d
web-ui-6db964458-8pdw4    1/1     Running     0       78d

แƒ”แƒก แƒคแƒแƒ แƒ›แƒแƒขแƒ˜ แƒ›แƒแƒกแƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒจแƒ”แƒ–แƒฆแƒฃแƒ“แƒฃแƒšแƒ˜ แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ˜แƒก แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก. แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒกแƒ แƒฃแƒšแƒ˜ แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ˜แƒก แƒคแƒแƒ แƒ›แƒแƒขแƒ—แƒแƒœ แƒจแƒ”แƒ“แƒแƒ แƒ”แƒ‘แƒ˜แƒ—, แƒแƒฅ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ•แƒ”แƒšแƒ˜แƒ แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜.

แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒžแƒ”แƒ แƒกแƒแƒœแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒ•แƒ”แƒขแƒ˜แƒก แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒคแƒแƒ แƒ›แƒแƒขแƒ˜. แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ— แƒ แƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒขแƒแƒœแƒ. แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒแƒฉแƒ•แƒ”แƒœแƒแƒ— แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒ•แƒ”แƒšแƒ˜ แƒชแƒแƒšแƒ™แƒ” แƒกแƒ•แƒ”แƒขแƒแƒ“.

แƒ›แƒแƒ แƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒคแƒแƒ แƒ›แƒแƒขแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ’แƒแƒœแƒ˜แƒกแƒแƒ–แƒฆแƒ•แƒ แƒ”แƒ‘แƒ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—:

-o custom-columns=<header>:<jsonpath>[,<header>:<jsonpath>]...

แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ— แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒกแƒ•แƒ”แƒขแƒ˜, แƒ แƒแƒ’แƒแƒ แƒช แƒฌแƒงแƒ•แƒ˜แƒšแƒ˜ <header>:<jsonpath>แƒกแƒแƒ“ <header> แƒแƒ แƒ˜แƒก แƒกแƒ•แƒ”แƒขแƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒ“แƒ <jsonpath> - แƒ’แƒแƒ›แƒแƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒ•แƒ”แƒšแƒก.

แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒ›แƒแƒ แƒขแƒ˜แƒ• แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒก:

$ kubectl get pods -o custom-columns='NAME:metadata.name'

NAME
engine-544b6b6467-22qr6
engine-544b6b6467-lw5t8
engine-544b6b6467-tvgmg
web-ui-6db964458-8pdw4

แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ”แƒ แƒ— แƒกแƒ•แƒ”แƒขแƒก แƒฆแƒแƒ‘แƒ”แƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒ—.

แƒแƒคแƒชแƒ˜แƒแƒœแƒ˜แƒก แƒ’แƒแƒ›แƒแƒ—แƒฅแƒ›แƒ แƒ˜แƒ แƒฉแƒ”แƒ•แƒก แƒžแƒแƒ“แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒก แƒ•แƒ”แƒšแƒ˜แƒ“แƒแƒœ metadata.name. แƒ”แƒก แƒ˜แƒ›แƒ˜แƒขแƒแƒ› แƒฎแƒ“แƒ”แƒ‘แƒ, แƒ แƒแƒ› แƒžแƒแƒ“แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒฃแƒšแƒ˜แƒ แƒ‘แƒแƒ•แƒจแƒ•แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ˜แƒก แƒ•แƒ”แƒšแƒจแƒ˜ metadata แƒžแƒแƒ“แƒ˜แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒแƒฆแƒฌแƒ”แƒ แƒแƒจแƒ˜. แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒ“แƒ”แƒขแƒแƒšแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒฎแƒ˜แƒšแƒแƒ— API แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ แƒแƒœ แƒฉแƒแƒฌแƒ”แƒ แƒ”แƒ— แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ kubectl explain pod.metadata.name.

แƒแƒฎแƒšแƒ แƒ“แƒแƒ•แƒฃแƒจแƒ•แƒแƒ—, แƒ แƒแƒ› แƒ’แƒกแƒฃแƒ แƒ— แƒ“แƒแƒแƒ›แƒแƒขแƒแƒ— แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒกแƒ•แƒ”แƒขแƒ˜ แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ–แƒ”, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒแƒฉแƒ•แƒ”แƒœแƒแƒ— แƒ™แƒ•แƒแƒœแƒซแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ–แƒ”แƒช แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒžแƒแƒ“แƒ˜. แƒแƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒแƒ›แƒแƒขแƒแƒ— แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒ˜ แƒกแƒ•แƒ”แƒขแƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒ แƒกแƒแƒ‘แƒแƒŸแƒ แƒกแƒ•แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒจแƒ˜:

$ kubectl get pods 
  -o custom-columns='NAME:metadata.name,NODE:spec.nodeName'

NAME                       NODE
engine-544b6b6467-22qr6    ip-10-0-80-67.ec2.internal
engine-544b6b6467-lw5t8    ip-10-0-36-80.ec2.internal
engine-544b6b6467-tvgmg    ip-10-0-118-34.ec2.internal
web-ui-6db964458-8pdw4     ip-10-0-118-34.ec2.internal

แƒ’แƒแƒ›แƒแƒ—แƒฅแƒ›แƒ แƒ˜แƒ แƒฉแƒ”แƒ•แƒก แƒ™แƒ•แƒแƒœแƒซแƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒก spec.nodeName โ€” แƒ แƒแƒ“แƒ”แƒกแƒแƒช pod แƒ”แƒœแƒ˜แƒญแƒ”แƒ‘แƒ แƒ™แƒ•แƒแƒœแƒซแƒก, แƒ›แƒ˜แƒกแƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒ˜แƒฌแƒ”แƒ แƒ”แƒ‘แƒ แƒ•แƒ”แƒšแƒจแƒ˜ spec.nodeName pod แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒ. แƒฃแƒคแƒ แƒ แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒฎแƒ˜แƒšแƒแƒ— แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒจแƒ˜ kubectl explain pod.spec.nodeName.

แƒ’แƒ—แƒฎแƒแƒ•แƒ—, แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒแƒ—, แƒ แƒแƒ› Kubernetes-แƒ˜แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ แƒ”แƒ’แƒ˜แƒกแƒขแƒ แƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ.

แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒœแƒแƒฎแƒแƒ— แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒ•แƒ”แƒšแƒ˜ แƒกแƒ•แƒ”แƒขแƒ˜แƒก แƒกแƒแƒฎแƒ˜แƒ—. แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒ’แƒแƒ“แƒแƒฎแƒ”แƒ“แƒ”แƒ— แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒแƒก แƒ“แƒ แƒกแƒชแƒแƒ“แƒ”แƒ— แƒ˜แƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒ—แƒ•แƒ˜แƒก แƒกแƒแƒกแƒฃแƒ แƒ•แƒ”แƒšแƒ˜ แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒ•แƒ”แƒšแƒ˜แƒ—.

แƒ›แƒแƒ’แƒ แƒแƒ› แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒ แƒ˜แƒ’แƒจแƒ˜, แƒ›แƒแƒ“แƒ˜แƒ— แƒฃแƒคแƒ แƒ แƒแƒฎแƒšแƒแƒก แƒ›แƒ˜แƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒ•แƒ”แƒšแƒ˜แƒก แƒจแƒ”แƒ แƒฉแƒ”แƒ•แƒ˜แƒก แƒ’แƒแƒ›แƒแƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ”แƒ‘แƒก.

JSONPath แƒ’แƒแƒ›แƒแƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ”แƒ‘แƒ˜

แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒแƒ แƒฉแƒ”แƒ•แƒ˜แƒก แƒ’แƒแƒ›แƒแƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ”แƒ‘แƒ˜ แƒ”แƒคแƒฃแƒซแƒœแƒ”แƒ‘แƒ JSONPath.

JSONPath แƒแƒ แƒ˜แƒก แƒ”แƒœแƒ JSON แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒ”แƒ‘แƒ˜แƒ“แƒแƒœ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒกแƒแƒฆแƒ”แƒ‘แƒแƒ“. แƒ”แƒ แƒ—แƒ˜ แƒ•แƒ”แƒšแƒ˜แƒก แƒแƒ แƒฉแƒ”แƒ•แƒ JSONPath-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒฃแƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ”แƒกแƒ˜ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒ. แƒ›แƒแƒก แƒ‘แƒ”แƒ•แƒ แƒ˜ แƒแƒฅแƒ•แƒก แƒฃแƒคแƒ แƒ แƒ“แƒ˜แƒ“แƒ˜ แƒฎแƒ›แƒ, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒกแƒ”แƒšแƒ”แƒฅแƒขแƒแƒ แƒ”แƒ‘แƒ˜, แƒคแƒ˜แƒšแƒขแƒ แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ.แƒจ.

Kubectl แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ แƒ›แƒฎแƒแƒ แƒก แƒฃแƒญแƒ”แƒ แƒก JSONPath แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ–แƒฆแƒฃแƒ“แƒฃแƒš แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒแƒก. แƒ›แƒแƒ—แƒ˜ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜ แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜แƒ แƒฅแƒ•แƒ”แƒ›แƒแƒ—:

# ะ’ั‹ะฑั€ะฐั‚ัŒ ะฒัะต ัะปะตะผะตะฝั‚ั‹ ัะฟะธัะบะฐ
$ kubectl get pods -o custom-columns='DATA:spec.containers[*].image'
# ะ’ั‹ะฑั€ะฐั‚ัŒ ัะฟะตั†ะธั„ะธั‡ะตัะบะธะน ัะปะตะผะตะฝั‚ ัะฟะธัะบะฐ
$ kubectl get pods -o custom-columns='DATA:spec.containers[0].image'
# ะ’ั‹ะฑั€ะฐั‚ัŒ ัะปะตะผะตะฝั‚ั‹ ัะฟะธัะบะฐ, ะฟะพะฟะฐะดะฐัŽั‰ะธะต ะฟะพะด ั„ะธะปัŒั‚ั€
$ kubectl get pods -o custom-columns='DATA:spec.containers[?(@.image!="nginx")].image'
# ะ’ั‹ะฑั€ะฐั‚ัŒ ะฒัะต ะฟะพะปั ะฟะพ ัƒะบะฐะทะฐะฝะฝะพะผัƒ ะฟัƒั‚ะธ, ะฝะตะทะฐะฒะธัะธะผะพ ะพั‚ ะธั… ะธะผะตะฝะธ
$ kubectl get pods -o custom-columns='DATA:metadata.*'
# ะ’ั‹ะฑั€ะฐั‚ัŒ ะฒัะต ะฟะพะปั ั ัƒะบะฐะทะฐะฝะฝั‹ะผ ะธะผะตะฝะตะผ, ะฒะฝะต ะทะฐะฒะธัะธะผะพัั‚ะธ ะพั‚ ะธั… ั€ะฐัะฟะพะปะพะถะตะฝะธั
$ kubectl get pods -o custom-columns='DATA:..image'

แƒ’แƒแƒœแƒกแƒแƒ™แƒฃแƒ—แƒ แƒ”แƒ‘แƒ˜แƒ— แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜แƒ [] แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜. Kubernetes-แƒ˜แƒก แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒ•แƒ”แƒšแƒ˜ แƒแƒ แƒ˜แƒก แƒกแƒ˜แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ”แƒก แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜ แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒ˜แƒ แƒฉแƒ˜แƒแƒ— แƒแƒ› แƒกแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒฌแƒ”แƒ•แƒ แƒ”แƒ‘แƒ˜. แƒ˜แƒก แƒฎแƒจแƒ˜แƒ แƒแƒ“ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ•แƒ”แƒšแƒฃแƒ แƒ˜ แƒ‘แƒแƒ แƒแƒ—แƒ˜แƒ—, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ [*] แƒกแƒ˜แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ”แƒšแƒ”แƒ›แƒ”แƒœแƒขแƒ˜แƒก แƒจแƒ”แƒกแƒแƒ แƒฉแƒ”แƒ•แƒแƒ“.

แƒ’แƒแƒœแƒแƒชแƒฎแƒแƒ“แƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜

แƒžแƒ”แƒ แƒกแƒแƒœแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒ•แƒ”แƒขแƒ˜แƒก แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒคแƒแƒ แƒ›แƒแƒขแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜ แƒ’แƒแƒฃแƒ—แƒแƒ•แƒ”แƒ‘แƒ”แƒšแƒ˜แƒ, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒจแƒ˜ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒแƒฉแƒ•แƒ”แƒœแƒแƒ— แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒ•แƒ”แƒšแƒ˜ แƒแƒœ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒ›แƒ‘แƒ˜แƒœแƒแƒชแƒ˜แƒ. แƒแƒฅ แƒแƒ แƒ˜แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ˜แƒก แƒœแƒ˜แƒ›แƒฃแƒจแƒ˜, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ—แƒแƒ•แƒ˜แƒกแƒฃแƒคแƒšแƒแƒ“ แƒจแƒ”แƒ˜แƒกแƒฌแƒแƒ•แƒšแƒ”แƒ— แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ“แƒ แƒ˜แƒžแƒแƒ•แƒœแƒ”แƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒกแƒแƒคแƒ”แƒ แƒ˜แƒกแƒ˜ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜.

  1. แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒ”แƒ‘แƒ˜แƒก แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ แƒžแƒแƒ“แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก:
    $ kubectl get pods 
      -o custom-columns='NAME:metadata.name,IMAGES:spec.containers[*].image'
    
    NAME                        IMAGES
    engine-544b6b6467-22qr6     rabbitmq:3.7.8-management,nginx
    engine-544b6b6467-lw5t8     rabbitmq:3.7.8-management,nginx
    engine-544b6b6467-tvgmg     rabbitmq:3.7.8-management,nginx
    web-ui-6db964458-8pdw4      wordpress

    แƒ”แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒžแƒแƒ“แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

    แƒ’แƒแƒฎแƒกแƒแƒ•แƒ“แƒ”แƒ—, แƒ แƒแƒ› แƒžแƒแƒ“แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒ“แƒ”แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒก, แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ’แƒแƒ›แƒแƒฉแƒœแƒ“แƒ”แƒ‘แƒ แƒ”แƒ แƒ— แƒฎแƒแƒ–แƒ–แƒ”, แƒ’แƒแƒ›แƒแƒงแƒแƒคแƒ˜แƒšแƒ˜ แƒ›แƒซแƒ˜แƒ›แƒ”แƒ”แƒ‘แƒ˜แƒ—.

  2. แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒแƒ‘แƒ˜แƒก แƒ–แƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ:
    $ kubectl get nodes 
      -o 
    custom-columns='NAME:metadata.name,ZONE:metadata.labels.failure-domain.beta.kubernetes.io/zone'
    
    NAME                          ZONE
    ip-10-0-118-34.ec2.internal   us-east-1b
    ip-10-0-36-80.ec2.internal    us-east-1a
    ip-10-0-80-67.ec2.internal    us-east-1b

    แƒ”แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒกแƒแƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒแƒ, แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜ แƒ’แƒแƒœแƒ—แƒแƒ•แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒกแƒแƒฏแƒแƒ แƒ แƒฆแƒ แƒฃแƒ‘แƒ”แƒšแƒจแƒ˜. แƒ˜แƒก แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒแƒ‘แƒ˜แƒก แƒ–แƒแƒœแƒแƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ™แƒ•แƒแƒœแƒซแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

    แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒแƒ‘แƒ˜แƒก แƒ–แƒแƒœแƒ แƒแƒ แƒ˜แƒก แƒฆแƒ แƒฃแƒ‘แƒšแƒ˜แƒก แƒ™แƒแƒœแƒชแƒ”แƒคแƒชแƒ˜แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ–แƒฆแƒฃแƒ“แƒแƒ•แƒก แƒ แƒ”แƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ˜แƒก แƒ–แƒแƒœแƒแƒก แƒ’แƒ”แƒแƒ’แƒ แƒแƒคแƒ˜แƒฃแƒš แƒ แƒ”แƒ’แƒ˜แƒแƒœแƒจแƒ˜.

    แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ™แƒ•แƒแƒœแƒซแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒแƒ‘แƒ˜แƒก แƒ–แƒแƒœแƒ”แƒ‘แƒ˜ แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ‘แƒ แƒกแƒžแƒ”แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒ”แƒขแƒ˜แƒ™แƒ”แƒขแƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ— - failure-domain.beta.kubernetes.io/zone. แƒ—แƒฃ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒกแƒแƒฏแƒแƒ แƒ แƒฆแƒ แƒฃแƒ‘แƒ”แƒšแƒจแƒ˜, แƒ”แƒก แƒšแƒ”แƒ˜แƒ‘แƒšแƒ˜ แƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒ“แƒ แƒ˜แƒ•แƒกแƒ”แƒ‘แƒ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒแƒ‘แƒ˜แƒก แƒ–แƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒ— แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ™แƒ•แƒแƒœแƒซแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

    แƒšแƒ”แƒ˜แƒ‘แƒšแƒ”แƒ‘แƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒก Kubernetes-แƒ˜แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒ˜แƒก แƒœแƒแƒฌแƒ˜แƒšแƒ˜, แƒแƒกแƒ” แƒ แƒแƒ› แƒ—แƒฅแƒ•แƒ”แƒœ แƒ•แƒ”แƒ  แƒ˜แƒžแƒแƒ•แƒ˜แƒ— แƒ›แƒแƒ— แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก API แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ. แƒ—แƒฃแƒ›แƒชแƒ, แƒ›แƒแƒ—แƒ˜ แƒœแƒแƒฎแƒ•แƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ (แƒ แƒแƒ’แƒแƒ แƒช แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒกแƒฎแƒ•แƒ แƒšแƒ”แƒ˜แƒ‘แƒšแƒ˜), แƒ—แƒฃ แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒ— แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ YAML แƒแƒœ JSON แƒคแƒแƒ แƒ›แƒแƒขแƒจแƒ˜:

    $ kubectl get nodes -o yaml
    # ะธะปะธ
    $ kubectl get nodes -o json

    แƒ”แƒก แƒจแƒ”แƒกแƒแƒœแƒ˜แƒจแƒœแƒแƒ•แƒ˜ แƒ’แƒ–แƒแƒ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒ›แƒ”แƒขแƒ˜แƒก แƒ’แƒแƒกแƒแƒ’แƒ”แƒ‘แƒแƒ“, แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒฌแƒแƒ•แƒšแƒ˜แƒก แƒ’แƒแƒ แƒ“แƒ.

4. แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒแƒ“ แƒ’แƒแƒ“แƒแƒ แƒ—แƒ”แƒ— แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ”แƒ‘แƒกแƒ แƒ“แƒ แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ”แƒ”แƒ‘แƒก โ€‹โ€‹แƒจแƒแƒ แƒ˜แƒก

แƒ แƒแƒ“แƒ”แƒกแƒแƒช kubectl แƒฃแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒก แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒแƒก Kubernetes API-แƒก, แƒ˜แƒก แƒฏแƒ”แƒ  แƒ™แƒ˜แƒ—แƒฎแƒฃแƒšแƒแƒ‘แƒก kubeconfig แƒคแƒแƒ˜แƒšแƒก, แƒ แƒแƒ—แƒ แƒ›แƒ˜แƒ˜แƒฆแƒแƒก แƒงแƒ•แƒ”แƒšแƒ แƒกแƒแƒญแƒ˜แƒ แƒ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒแƒ“ แƒแƒ แƒ˜แƒก kubeconfig แƒคแƒแƒ˜แƒšแƒ˜ ~/.kube/config. แƒ แƒแƒ’แƒแƒ แƒช แƒฌแƒ”แƒกแƒ˜, แƒ”แƒก แƒคแƒแƒ˜แƒšแƒ˜ แƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ แƒแƒœ แƒ’แƒแƒœแƒแƒฎแƒšแƒ“แƒ”แƒ‘แƒ แƒกแƒžแƒ”แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒ—.

แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ— แƒ›แƒ แƒแƒ•แƒแƒš แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ—แƒแƒœ, แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ kubeconfig แƒคแƒแƒ˜แƒšแƒ˜ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒก แƒงแƒ•แƒ”แƒšแƒ แƒแƒ› แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ—แƒแƒœ แƒ“แƒแƒกแƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒšแƒแƒ“. แƒ—แƒฅแƒ•แƒ”แƒœ แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒ’แƒ–แƒ, แƒ แƒแƒ› แƒฃแƒ—แƒฎแƒ แƒแƒ— kubectl แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒแƒก, แƒ แƒแƒ›แƒ”แƒš แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ—.

แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒจแƒ˜ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ” - แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒขแƒ˜แƒžแƒ˜ แƒคแƒ˜แƒ–แƒ˜แƒ™แƒฃแƒ  แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒจแƒ˜. Kubectl แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒก แƒ แƒแƒ›แƒ”แƒšแƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ” แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒก kubeconfig แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒกแƒแƒคแƒฃแƒซแƒ•แƒ”แƒšแƒ–แƒ”. แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒ’แƒ–แƒ, แƒ แƒแƒ› แƒฃแƒ—แƒฎแƒ แƒแƒ— kubectl แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒแƒก, แƒ แƒแƒ›แƒ”แƒš แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ”แƒจแƒ˜ แƒ˜แƒ›แƒฃแƒจแƒแƒแƒ—.

แƒแƒ› แƒ—แƒแƒ•แƒจแƒ˜ แƒฉแƒ•แƒ”แƒœ แƒ’แƒแƒœแƒ•แƒ›แƒแƒ แƒขแƒแƒ•แƒ—, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ•แƒแƒฃแƒ›แƒฏแƒแƒ‘แƒ”แƒกแƒแƒ— แƒ˜แƒก แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“.

แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒฅแƒแƒœแƒ“แƒ”แƒ— แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” kubeconfig แƒคแƒแƒ˜แƒšแƒ˜ แƒฉแƒแƒ›แƒแƒ—แƒ•แƒšแƒ˜แƒšแƒ˜ KUBECONFIG แƒ’แƒแƒ แƒ”แƒ›แƒแƒก แƒชแƒ•แƒšแƒแƒ“แƒจแƒ˜. แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒงแƒ•แƒ”แƒšแƒ แƒ”แƒก แƒคแƒแƒ˜แƒšแƒ˜ แƒ’แƒแƒ”แƒ แƒ—แƒ˜แƒแƒœแƒ“แƒ”แƒ‘แƒ แƒ”แƒ แƒ— แƒกแƒแƒ”แƒ แƒ—แƒ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒแƒจแƒ˜ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒก. แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒชแƒ•แƒแƒšแƒแƒ— แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜ kubeconfig แƒคแƒแƒ˜แƒšแƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒ— kubectl-แƒ˜แƒ— --kubeconfig. แƒจแƒ”แƒฎแƒ”แƒ“แƒ” แƒแƒคแƒ˜แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ.

kubeconfig แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜

แƒ•แƒœแƒแƒฎแƒแƒ—, แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒแƒ“ แƒ แƒแƒก แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก kubeconfig แƒคแƒแƒ˜แƒšแƒ˜:

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ
แƒ แƒแƒ’แƒแƒ แƒช แƒฎแƒ”แƒ“แƒแƒ•แƒ—, kubeconfig แƒคแƒแƒ˜แƒšแƒ˜ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒ›แƒžแƒšแƒ”แƒฅแƒขแƒก. แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜ แƒจแƒ”แƒ“แƒ’แƒ”แƒ‘แƒ แƒกแƒแƒ›แƒ˜ แƒ”แƒšแƒ”แƒ›แƒ”แƒœแƒขแƒ˜แƒกแƒ’แƒแƒœ:

  • แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜ โ€” แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒฃแƒšแƒ˜ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒก API URL.
  • แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒ˜ - แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒแƒ•แƒขแƒแƒ แƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒก แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ”แƒ‘แƒ˜ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒจแƒ˜.
  • แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ” - แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ”, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ—แƒแƒœ แƒจแƒ”แƒ”แƒ แƒ—แƒ”แƒ‘แƒ˜แƒกแƒแƒก.

แƒžแƒ แƒแƒฅแƒขแƒ˜แƒ™แƒแƒจแƒ˜, แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒฎแƒจแƒ˜แƒ แƒแƒ“ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ”แƒœ แƒ”แƒ แƒ— แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒก แƒ—แƒ˜แƒ—แƒ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒจแƒ˜ แƒ—แƒแƒ•แƒ˜แƒแƒœแƒ— kubeconfig-แƒจแƒ˜. แƒ—แƒฃแƒ›แƒชแƒ, แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒฅแƒแƒœแƒ“แƒ”แƒ— แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜ แƒ—แƒ˜แƒ—แƒ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ–แƒ”, แƒ“แƒ˜แƒคแƒ”แƒ แƒ”แƒœแƒชแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒแƒœ แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ•แƒ แƒชแƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—. แƒ—แƒฃแƒ›แƒชแƒ, แƒ”แƒก แƒ›แƒ แƒแƒ•แƒแƒšแƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒฃแƒ แƒ˜ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ แƒ˜แƒจแƒ•แƒ˜แƒแƒ—แƒ˜แƒ, แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒ แƒแƒ’แƒแƒ แƒช แƒฌแƒ”แƒกแƒ˜, แƒฎแƒ“แƒ”แƒ‘แƒ แƒ”แƒ แƒ—แƒ˜-แƒ”แƒ แƒ—แƒ–แƒ” แƒ“แƒแƒฎแƒแƒขแƒ•แƒ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ”แƒ‘แƒกแƒ แƒ“แƒ แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ”แƒ‘แƒก แƒจแƒแƒ แƒ˜แƒก.

แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ  แƒ“แƒ แƒแƒก, แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜ แƒแƒฅแƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜แƒ:

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ
แƒ แƒแƒ“แƒ”แƒกแƒแƒช kubectl แƒ™แƒ˜แƒ—แƒฎแƒฃแƒšแƒแƒ‘แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒก, แƒ˜แƒก แƒงแƒแƒ•แƒ”แƒšแƒ—แƒ•แƒ˜แƒก แƒ˜แƒฆแƒ”แƒ‘แƒก แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜แƒ“แƒแƒœ. แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒงแƒ•แƒแƒœแƒ˜แƒš แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒจแƒ˜ kubectl แƒ“แƒแƒฃแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ™แƒฃแƒ แƒ“แƒฆแƒšแƒ˜แƒก แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒก.

แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒแƒ“, แƒกแƒฎแƒ•แƒ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ–แƒ” แƒ’แƒแƒ“แƒแƒกแƒแƒกแƒ•แƒšแƒ”แƒšแƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒชแƒ•แƒแƒšแƒแƒ— แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜ kubeconfig แƒคแƒแƒ˜แƒšแƒจแƒ˜:

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ
แƒแƒฎแƒšแƒ kubectl แƒ“แƒแƒฃแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ Fox แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒก.

แƒ˜แƒ›แƒแƒ•แƒ” แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒจแƒ˜ แƒกแƒฎแƒ•แƒ แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ”แƒ–แƒ” แƒ’แƒแƒ“แƒแƒกแƒแƒ แƒ—แƒแƒ•แƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒชแƒ•แƒแƒšแƒแƒ— แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ˜แƒก แƒ”แƒšแƒ”แƒ›แƒ”แƒœแƒขแƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒจแƒ˜:

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ
แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒงแƒ•แƒแƒœแƒ˜แƒš แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒจแƒ˜, kubectl แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก Fox แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก Prod แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ”แƒก (แƒแƒ“แƒ แƒ” แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒงแƒ แƒกแƒแƒขแƒ”แƒกแƒขแƒ แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ•แƒ แƒชแƒ”).

แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› kubectl แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒ—แƒแƒ•แƒแƒ–แƒแƒ‘แƒ— แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒก --cluster, --user, --namespace ะธ --context, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ’แƒแƒ“แƒแƒฌแƒ”แƒ แƒแƒ— แƒชแƒแƒšแƒ™แƒ”แƒฃแƒšแƒ˜ แƒ”แƒšแƒ”แƒ›แƒ”แƒœแƒขแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ—แƒแƒ•แƒแƒ“ แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜, แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ—แƒฃ แƒ แƒ แƒแƒ แƒ˜แƒก แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜ kubeconfig-แƒจแƒ˜. แƒจแƒ”แƒฎแƒ”แƒ“แƒ” kubectl options.

แƒ—แƒ”แƒแƒ แƒ˜แƒฃแƒšแƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒฎแƒ”แƒšแƒ˜แƒ— แƒจแƒ”แƒชแƒ•แƒแƒšแƒแƒ— แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜ kubeconfig-แƒจแƒ˜. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒแƒฃแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ. แƒแƒ› แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒกแƒแƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ”แƒ‘แƒšแƒแƒ“, แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒ™แƒแƒ›แƒฃแƒœแƒแƒšแƒฃแƒ แƒ˜ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒจแƒ”แƒชแƒ•แƒแƒšแƒแƒ— แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜.

แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— kubectx

แƒซแƒแƒšแƒ˜แƒแƒœ แƒžแƒแƒžแƒฃแƒšแƒแƒ แƒฃแƒšแƒ˜ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ”แƒ‘แƒกแƒ แƒ“แƒ แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ”แƒ”แƒ‘แƒก โ€‹โ€‹แƒจแƒแƒ แƒ˜แƒก แƒ’แƒแƒ“แƒแƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒก kubectx ะธ kubens แƒจแƒ”แƒชแƒ•แƒแƒšแƒแƒก แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜ แƒ“แƒ แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ”, แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒแƒ“.

แƒ แƒแƒ’แƒแƒ แƒช แƒแƒฆแƒ•แƒœแƒ˜แƒจแƒœแƒ”แƒ—, แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒแƒก, แƒ—แƒฃ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒจแƒ˜ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ”แƒ แƒ—แƒ˜ แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜ แƒ’แƒแƒฅแƒ•แƒ—.

แƒแƒฅ แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜แƒ แƒแƒ› แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜:

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ
แƒแƒ แƒกแƒ”แƒ‘แƒ˜แƒ—แƒแƒ“, แƒ”แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒแƒ แƒ”แƒ“แƒแƒฅแƒขแƒ˜แƒ แƒ”แƒ‘แƒ”แƒœ kubeconfig แƒคแƒแƒ˜แƒšแƒก, แƒ แƒแƒ’แƒแƒ แƒช แƒ–แƒ”แƒ›แƒแƒ— แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜.

แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ kubectx, แƒ›แƒ˜แƒฐแƒงแƒ”แƒ•แƒ˜แƒ— แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒแƒก แƒ’แƒ˜แƒ—แƒฃแƒ‘แƒ˜.

แƒแƒ แƒ˜แƒ•แƒ” แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒ›แƒฎแƒแƒ แƒก แƒฃแƒญแƒ”แƒ แƒก แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜แƒก แƒ“แƒ แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ•แƒ แƒชแƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ  แƒจแƒ”แƒ•แƒกแƒ”แƒ‘แƒแƒก, แƒ แƒแƒช แƒ’แƒแƒ›แƒแƒ แƒ˜แƒชแƒฎแƒแƒ•แƒก แƒ›แƒแƒ— แƒกแƒ แƒฃแƒšแƒแƒ“ แƒแƒ™แƒ แƒ”แƒคแƒ˜แƒก แƒแƒฃแƒชแƒ˜แƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒแƒก. แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒแƒฅ.

แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ”แƒ แƒ—แƒ˜ แƒกแƒแƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒ แƒ—แƒ•แƒ˜แƒกแƒ”แƒ‘แƒ kubectx แƒแƒ แƒ˜แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒแƒฅแƒขแƒ˜แƒฃแƒšแƒ˜ แƒ แƒ”แƒŸแƒ˜แƒ›แƒ˜. แƒ˜แƒก แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ™แƒแƒ›แƒฃแƒœแƒแƒšแƒฃแƒ แƒ—แƒแƒœ แƒ”แƒ แƒ—แƒแƒ“ fzf, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒชแƒแƒšแƒ™แƒ” แƒฃแƒœแƒ“แƒ แƒ“แƒแƒ›แƒแƒœแƒขแƒแƒŸแƒ“แƒ”แƒก. fzf-แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒฎแƒ“แƒ˜แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒแƒฅแƒขแƒ˜แƒฃแƒš แƒ แƒ”แƒŸแƒ˜แƒ›แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒก kubectx. แƒ˜แƒœแƒขแƒ”แƒ แƒแƒฅแƒขแƒ˜แƒฃแƒšแƒแƒ“, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒแƒ˜แƒ แƒฉแƒ˜แƒแƒ— แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜ แƒ“แƒ แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ” fzf-แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ  แƒ›แƒแƒฌแƒแƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒœแƒขแƒ”แƒ แƒแƒฅแƒขแƒ˜แƒฃแƒšแƒ˜ แƒฃแƒคแƒแƒกแƒ แƒกแƒแƒซแƒ˜แƒ”แƒ‘แƒ แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—.

แƒญแƒฃแƒ แƒ•แƒ˜แƒก แƒคแƒกแƒ”แƒ•แƒ“แƒแƒœแƒ˜แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ

แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒ  แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒชแƒแƒšแƒ™แƒ”แƒฃแƒšแƒ˜ แƒฎแƒ”แƒšแƒกแƒแƒฌแƒงแƒแƒ”แƒ‘แƒ˜ แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜แƒกแƒ แƒ“แƒ แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ•แƒ แƒชแƒ˜แƒก แƒจแƒ”แƒกแƒแƒชแƒ•แƒšแƒ”แƒšแƒแƒ“, แƒ แƒแƒ“แƒ’แƒแƒœ kubectl แƒแƒกแƒ”แƒ•แƒ” แƒ˜แƒซแƒšแƒ”แƒ•แƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒก แƒแƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก. แƒ“แƒ˜แƒแƒฎ, แƒ’แƒฃแƒœแƒ“แƒ˜ kubectl config แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒฅแƒ•แƒ”แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒก kubeconfig แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ แƒ”แƒ“แƒแƒฅแƒขแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒแƒฅ แƒแƒ แƒ˜แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ›แƒแƒ—แƒ’แƒแƒœแƒ˜:

  • kubectl config get-contexts: แƒงแƒ•แƒ”แƒšแƒ แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜แƒก แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ;
  • kubectl config current-context: แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ— แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜;
  • kubectl config use-context: แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ;
  • kubectl config set-context: แƒจแƒ”แƒชแƒ•แƒแƒšแƒ”แƒ— แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒฃแƒ แƒ˜ แƒ”แƒšแƒ”แƒ›แƒ”แƒœแƒขแƒ˜.

แƒ—แƒฃแƒ›แƒชแƒ, แƒแƒ› แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒแƒ  แƒแƒ แƒ˜แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒ›แƒแƒกแƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ’แƒ แƒซแƒ”แƒšแƒ˜แƒ. แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒญแƒฃแƒ แƒ•แƒ˜แƒก แƒคแƒกแƒ”แƒ•แƒ“แƒแƒœแƒ˜แƒ›แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒ“แƒ•แƒ˜แƒšแƒแƒ“ แƒจแƒ”แƒกแƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ.

แƒ›แƒ” แƒจแƒ”แƒ•แƒฅแƒ›แƒ”แƒœแƒ˜ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒœแƒแƒ™แƒ แƒ”แƒ‘แƒ˜ แƒแƒ› แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒคแƒฃแƒซแƒ•แƒ”แƒšแƒ–แƒ”, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ”แƒœ kubectx-แƒ˜แƒก แƒ›แƒกแƒ’แƒแƒ•แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒก. แƒแƒฅ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒœแƒแƒฎแƒแƒ— แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒแƒจแƒ˜:

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ
แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ”แƒœ fzf-แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒแƒฅแƒขแƒ˜แƒฃแƒšแƒ˜ แƒฃแƒคแƒแƒกแƒ แƒกแƒแƒซแƒ˜แƒ”แƒ‘แƒ แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜แƒก แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒกแƒแƒงแƒแƒคแƒแƒ“ (แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, kubectx-แƒ˜แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒแƒฅแƒขแƒ˜แƒฃแƒšแƒ˜ แƒ แƒ”แƒŸแƒ˜แƒ›แƒ˜). แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ” fzfแƒแƒ› แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“.

แƒแƒฅ แƒแƒ แƒ˜แƒก แƒ—แƒแƒ•แƒแƒ“ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ”แƒ‘แƒ˜:

# ะŸะพะปัƒั‡ะธั‚ัŒ ั‚ะตะบัƒั‰ะธะน ะบะพะฝั‚ะตะบัั‚
alias krc='kubectl config current-context'
# ะกะฟะธัะพะบ ะฒัะตั… ะบะพะฝั‚ะตะบัั‚ะพะฒ
alias klc='kubectl config get-contexts -o name | sed "s/^/  /;|^  $(krc)$|s/ /*/"'
# ะ˜ะทะผะตะฝะธั‚ัŒ ั‚ะตะบัƒั‰ะธะน ะบะพะฝั‚ะตะบัั‚
alias kcc='kubectl config use-context "$(klc | fzf -e | sed "s/^..//")"'

# ะŸะพะปัƒั‡ะธั‚ัŒ ั‚ะตะบัƒั‰ะตะต ะฟั€ะพัั‚ั€ะฐะฝัั‚ะฒะพ ะธะผะตะฝ
alias krn='kubectl config get-contexts --no-headers "$(krc)" | awk "{print $5}" | sed "s/^$/default/"'
# ะกะฟะธัะพะบ ะฒัะตั… ะฟั€ะพัั‚ั€ะฐะฝัั‚ะฒ ะธะผะตะฝ
alias kln='kubectl get -o name ns | sed "s|^.*/|  |;|^  $(krn)$|s/ /*/"'
# ะ˜ะทะผะตะฝะธั‚ัŒ ั‚ะตะบัƒั‰ะตะต ะฟั€ะพัั‚ั€ะฐะฝัั‚ะฒะพ ะธะผะตะฝ
alias kcn='kubectl config set-context --current --namespace "$(kln | fzf -e | sed "s/^..//")"'

แƒแƒ› แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ›แƒแƒขแƒแƒ— แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜ แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒคแƒแƒ˜แƒšแƒก ~/.bashrc แƒแƒœ ~/.zshrc แƒ“แƒ แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ”แƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ’แƒแƒ แƒกแƒ˜.

แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ

Kubectl แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒฉแƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ— แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ˜แƒกแƒ”แƒ•แƒ”, แƒ แƒแƒ’แƒแƒ แƒช แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜. แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ—, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ— kubectl-foo แƒ›แƒแƒ“แƒฃแƒšแƒ˜ แƒ“แƒ แƒ’แƒแƒฃแƒจแƒ•แƒแƒ— แƒ˜แƒ’แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒ— kubectl foo.

แƒ›แƒแƒกแƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒแƒ“แƒ แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜แƒก แƒ“แƒ แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ•แƒ แƒชแƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ แƒแƒ› แƒ’แƒ–แƒ˜แƒ—, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒ— kubectl ctx แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ แƒ“แƒ kubectl ns แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ˜แƒก แƒจแƒ”แƒกแƒแƒชแƒ•แƒšแƒ”แƒšแƒแƒ“.

แƒ›แƒ” แƒ“แƒแƒ•แƒฌแƒ”แƒ แƒ” แƒแƒ แƒ˜ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒ›แƒแƒก แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ”แƒœ:

แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ แƒ”แƒคแƒฃแƒซแƒœแƒ”แƒ‘แƒ แƒฌแƒ˜แƒœแƒ แƒ’แƒแƒœแƒงแƒแƒคแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒก.

แƒแƒ˜, แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ”แƒœ แƒ˜แƒกแƒ˜แƒœแƒ˜:

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ
แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ”แƒœ fzf-แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒแƒฅแƒขแƒ˜แƒฃแƒšแƒ˜ แƒฃแƒคแƒแƒกแƒ แƒกแƒแƒซแƒ˜แƒ”แƒ‘แƒ แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜แƒก แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒกแƒแƒงแƒแƒคแƒแƒ“ (แƒ แƒแƒ’แƒแƒ แƒช kubectx-แƒ˜แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒแƒฅแƒขแƒ˜แƒฃแƒšแƒ˜ แƒ แƒ”แƒŸแƒ˜แƒ›แƒ˜). แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ” fzfแƒแƒ› แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“.

แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ— แƒ“แƒแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒฃแƒšแƒ˜ shell แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ”แƒ‘แƒ˜ kubectl-ctx ะธ kubectl-ns แƒ—แƒฅแƒ•แƒ”แƒœแƒก PATH แƒชแƒ•แƒšแƒแƒ“แƒ˜แƒก แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ  แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜ แƒ“แƒ แƒ’แƒแƒฎแƒแƒ“แƒ”แƒ— แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒ“แƒ˜ แƒ›แƒแƒ’. chmod +x. แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ“แƒแƒฃแƒงแƒแƒ•แƒœแƒ”แƒ‘แƒšแƒ˜แƒ• แƒจแƒ”แƒซแƒšแƒ”แƒ‘แƒ— แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒก kubectl ctx ะธ kubectl ns.

5. แƒจแƒ”แƒแƒ›แƒชแƒ˜แƒ แƒ”แƒ— แƒจแƒ”แƒงแƒ•แƒแƒœแƒ แƒแƒ•แƒขแƒแƒแƒšแƒ˜แƒแƒ–แƒ”แƒ‘แƒ˜แƒ—

Shell แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ™แƒแƒ แƒ’แƒ˜ แƒ’แƒ–แƒแƒ แƒจแƒ”แƒงแƒ•แƒแƒœแƒ˜แƒก แƒ“แƒแƒกแƒแƒฉแƒฅแƒแƒ แƒ”แƒ‘แƒšแƒแƒ“. แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜ kubectl-แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ“แƒแƒแƒฎแƒšแƒแƒ”แƒ‘แƒ˜แƒ— 800 แƒ›แƒแƒšแƒกแƒแƒฎแƒ›แƒแƒ‘แƒแƒก แƒ™แƒฃแƒ‘แƒ”แƒฅแƒขแƒšแƒ˜แƒก แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒแƒšแƒ‘แƒแƒ— แƒ’แƒแƒ˜แƒœแƒขแƒ”แƒ แƒ”แƒกแƒ”แƒ‘แƒ— - แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒฎแƒกแƒแƒ•แƒ— 800 แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜? แƒ›แƒแƒ’แƒ แƒแƒ› แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒ  แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒ›แƒแƒ—แƒ˜ แƒ“แƒแƒ›แƒแƒฎแƒกแƒแƒ•แƒ แƒ”แƒ‘แƒ, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒแƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒกแƒฅแƒ”แƒ›แƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜แƒ แƒฅแƒ•แƒ”แƒ›แƒแƒ—:

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— kubectl แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“: แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ
แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“:

  1. kgpooyaml - kubectl แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ— pods oyaml
  2. ksysgsvcw โ€” kubectl -n kube-system แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ— svc w
  3. ksysrmcm -kubectl -n kube-system rm cm
  4. kgdepallsl - kubectl แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ— แƒ’แƒแƒœแƒšแƒแƒ’แƒ”แƒ‘แƒ แƒงแƒ•แƒ”แƒšแƒ sl

แƒ แƒแƒ’แƒแƒ แƒช แƒฎแƒ”แƒ“แƒแƒ•แƒ—, แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ“แƒ’แƒ”แƒ‘แƒ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ, แƒ แƒแƒ›แƒ”แƒšแƒ—แƒแƒ’แƒแƒœ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒฌแƒแƒ แƒ›แƒแƒแƒ“แƒ’แƒ”แƒœแƒก kubectl แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒš แƒ”แƒšแƒ”แƒ›แƒ”แƒœแƒขแƒก. แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒแƒšแƒ˜แƒแƒกแƒก แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒฐแƒฅแƒแƒœแƒ“แƒ”แƒก แƒ”แƒ แƒ—แƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜ แƒกแƒแƒ‘แƒแƒ–แƒ˜แƒกแƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ˜แƒกแƒ แƒ“แƒ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ โ€žแƒ“แƒแƒแƒกแƒแƒฎแƒšแƒ”แƒ‘แƒ—โ€œ แƒแƒ› แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ”แƒ‘แƒก แƒ›แƒแƒ แƒชแƒฎแƒœแƒ˜แƒ“แƒแƒœ แƒ›แƒแƒ แƒฏแƒ•แƒœแƒ˜แƒ• แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜ แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—.

แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ แƒแƒ แƒ˜แƒก GitHub. แƒ˜แƒฅแƒแƒช แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒžแƒแƒ•แƒแƒ— แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ แƒฃแƒšแƒ˜ แƒกแƒ˜แƒ.

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜ kgpooyamlall แƒแƒ แƒ˜แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ”แƒฅแƒ•แƒ˜แƒ•แƒแƒšแƒ”แƒœแƒขแƒ˜ kubectl get pods -o yaml --all-namespaces.

แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ“แƒแƒ แƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒ—แƒแƒœแƒ›แƒ˜แƒ›แƒ“แƒ”แƒ•แƒ แƒแƒ‘แƒ แƒแƒ  แƒแƒ แƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜: แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ kgpooyamlall แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒขแƒแƒšแƒคแƒแƒกแƒ˜แƒ kgpoalloyaml.

แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒ  แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒงแƒ•แƒ”แƒšแƒ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜แƒก แƒคแƒกแƒ”แƒ•แƒ“แƒแƒœแƒ˜แƒ›แƒแƒ“ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ. แฒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“ k, kg, klo, ksys, kgpo แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒ˜แƒฅแƒœแƒแƒก. แƒ’แƒแƒ แƒ“แƒ แƒแƒ›แƒ˜แƒกแƒ, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒแƒ— แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ แƒ”แƒ’แƒฃแƒšแƒแƒ แƒฃแƒšแƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒแƒœ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ–แƒ”:

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“:

  1. แƒœแƒแƒชแƒ•แƒšแƒแƒ“ kubectl proxy แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒฌแƒ”แƒ แƒแƒ— k proxy.
  2. แƒœแƒแƒชแƒ•แƒšแƒแƒ“ kubectl get roles แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒฌแƒ”แƒ แƒแƒ— kg roles (แƒแƒ›แƒŸแƒแƒ›แƒแƒ“ แƒแƒ  แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒ แƒแƒšแƒ”แƒ‘แƒ˜แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒก แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜).
  3. แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒžแƒแƒ“แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒกแƒแƒฆแƒ”แƒ‘แƒแƒ“, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ kgpo my-pod โ€” kubectl get pod my-pod.

แƒ’แƒ—แƒฎแƒแƒ•แƒ— แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒแƒ—, แƒ แƒแƒ› แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ—แƒ˜ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒฎแƒแƒ–แƒ˜แƒก แƒแƒ แƒ’แƒฃแƒ›แƒ”แƒœแƒขแƒก. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜ kgpol แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก kubectl get pods -l. แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ -l แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒแƒ แƒ’แƒฃแƒ›แƒ”แƒœแƒขแƒก - แƒ”แƒขแƒ˜แƒ™แƒ”แƒขแƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒแƒก. แƒ—แƒฃ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ— แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒก, แƒ˜แƒก แƒแƒกแƒ” แƒ’แƒแƒ›แƒแƒ˜แƒงแƒฃแƒ แƒ”แƒ‘แƒ kgpol app=ui.

แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒ, แƒ แƒแƒ› แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ—แƒ˜ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒแƒ แƒ’แƒฃแƒ›แƒ”แƒœแƒขแƒ”แƒ‘แƒก, แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜ a, f แƒ“แƒ l แƒฃแƒœแƒ“แƒ แƒ˜แƒฅแƒœแƒแƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ‘แƒแƒšแƒแƒก.

แƒ–แƒแƒ’แƒแƒ“แƒแƒ“, แƒแƒ› แƒกแƒฅแƒ”แƒ›แƒ˜แƒก แƒ’แƒแƒ—แƒ˜แƒจแƒ•แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒœแƒขแƒฃแƒ˜แƒชแƒ˜แƒฃแƒ แƒแƒ“ แƒ’แƒแƒ›แƒแƒ˜แƒขแƒแƒœแƒแƒ— แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ˜แƒ› แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒ“แƒแƒœ, แƒ แƒแƒ›แƒ”แƒšแƒ—แƒ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒช แƒ’แƒกแƒฃแƒ แƒ— แƒ“แƒ แƒ“แƒแƒ–แƒแƒ’แƒแƒ— แƒแƒ™แƒ แƒ”แƒคแƒ˜แƒก แƒ“แƒ˜แƒ“แƒ˜ แƒ“แƒ แƒ.

แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ

kubectl-aliases-แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ— แƒคแƒแƒ˜แƒšแƒ˜ .kubectl_aliases GitHub-แƒ“แƒแƒœ แƒ“แƒ แƒฉแƒแƒ แƒ—แƒ”แƒ— แƒคแƒแƒ˜แƒšแƒจแƒ˜ ~/.bashrc แƒแƒœ ~/.zshrc:

source ~/.kubectl_aliases

แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ

แƒ แƒแƒ’แƒแƒ แƒช แƒฃแƒ™แƒ•แƒ” แƒ•แƒ—แƒฅแƒ•แƒ˜แƒ—, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฎแƒจแƒ˜แƒ แƒแƒ“ แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ— แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— แƒกแƒ˜แƒขแƒงแƒ•แƒ”แƒ‘แƒก แƒแƒšแƒ˜แƒแƒกแƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ–แƒ”. แฒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“:

$ kgpooyaml test-pod-d4b77b989

แƒ—แƒฃ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ— kubectl แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒšแƒ‘แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒกแƒ”แƒ—แƒ˜ แƒ แƒแƒ›แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜. แƒ›แƒแƒ’แƒ แƒแƒ› แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ—แƒฃ แƒแƒ แƒ แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜?

แƒ”แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ แƒ™แƒ˜แƒ—แƒฎแƒ•แƒแƒ, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ—แƒฃ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒแƒ  แƒ˜แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒ“แƒแƒ™แƒแƒ แƒ’แƒแƒ•แƒ— แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒฃแƒžแƒ˜แƒ แƒแƒขแƒ”แƒกแƒแƒ‘แƒ”แƒ‘แƒก.

แƒžแƒแƒกแƒฃแƒฎแƒ˜ แƒ“แƒแƒ›แƒแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ˜แƒ›แƒแƒ–แƒ”, แƒ—แƒฃ แƒ แƒแƒ›แƒ”แƒš แƒ’แƒแƒ แƒกแƒก แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ—:

  1. Zsh-แƒกแƒ—แƒ•แƒ˜แƒก, แƒแƒšแƒ˜แƒแƒกแƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒฃแƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒแƒ“ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก.
  2. Bash-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒกแƒแƒ›แƒฌแƒฃแƒฎแƒแƒ แƒแƒ“, แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒ˜ แƒกแƒแƒ›แƒฃแƒจแƒแƒแƒ แƒกแƒแƒญแƒ˜แƒ แƒ แƒ˜แƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ›แƒฃแƒจแƒแƒแƒก.

Bash-แƒจแƒ˜ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒจแƒ”แƒ•แƒกแƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒ แƒ—แƒ•แƒ

Bash-แƒ˜แƒก แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ แƒ˜แƒก แƒแƒ แƒ˜แƒก, แƒ แƒแƒ› แƒ˜แƒก แƒชแƒ“แƒ˜แƒšแƒแƒ‘แƒก แƒจแƒ”แƒแƒ•แƒกแƒแƒก (แƒงแƒแƒ•แƒ”แƒš แƒฏแƒ”แƒ แƒ–แƒ”, แƒ แƒแƒชแƒ Tab-แƒก แƒ“แƒแƒแƒญแƒ”แƒ แƒ—) แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒ“แƒ แƒแƒ แƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒแƒšแƒ˜แƒแƒกแƒ˜ แƒ”แƒฎแƒ”แƒ‘แƒ (แƒ แƒแƒ’แƒแƒ แƒช แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒก Zsh, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“). แƒ•แƒ˜แƒœแƒแƒ˜แƒ“แƒแƒœ 800-แƒ•แƒ” แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ”แƒ‘แƒ˜ แƒแƒ  แƒ’แƒแƒฅแƒ•แƒ—, แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก.

แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜ แƒกแƒ แƒฃแƒšแƒ˜-แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒ—แƒแƒ•แƒแƒ–แƒแƒ‘แƒ— แƒแƒ› แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ˜แƒก แƒ–แƒแƒ’แƒแƒ“ แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒแƒก. แƒ˜แƒก แƒฃแƒ”แƒ แƒ—แƒ“แƒ”แƒ‘แƒ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ”แƒฅแƒแƒœแƒ˜แƒ–แƒ›แƒก, แƒจแƒ˜แƒœแƒแƒ’แƒแƒœแƒแƒ“ แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒก แƒแƒšแƒ˜แƒแƒกแƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒแƒ–แƒ” แƒ“แƒ แƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒคแƒกแƒ”แƒ•แƒ“แƒแƒœแƒ˜แƒ›แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก padding แƒ˜แƒฅแƒชแƒ”แƒ•แƒ แƒ–แƒฃแƒกแƒขแƒแƒ“ แƒ˜แƒกแƒ”แƒ•แƒ”, แƒ แƒแƒ’แƒแƒ แƒช แƒกแƒ แƒฃแƒšแƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒจแƒ˜ แƒฏแƒ”แƒ  แƒแƒ’แƒ˜แƒฎแƒกแƒœแƒ˜แƒ—, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ— แƒกแƒ แƒฃแƒšแƒ˜ แƒแƒšแƒ˜แƒแƒกแƒ˜ แƒ“แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ แƒแƒ’แƒแƒ  แƒ“แƒแƒ•แƒแƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒ˜แƒ แƒแƒ— แƒ˜แƒก, แƒ แƒแƒ› แƒฉแƒแƒ แƒ—แƒแƒ— แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒงแƒ•แƒ”แƒšแƒ kubectl แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒกแƒ แƒฃแƒšแƒ˜ แƒแƒšแƒ˜แƒแƒกแƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ

แƒฃแƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ”แƒก แƒงแƒแƒ•แƒšแƒ˜แƒกแƒ, แƒกแƒ แƒฃแƒšแƒ˜ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒ“แƒแƒ›แƒแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ‘แƒแƒจ-แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ. แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒกแƒ แƒฃแƒšแƒ˜ แƒแƒšแƒ˜แƒแƒกแƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒ›แƒ“แƒ”, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒ แƒฌแƒ›แƒฃแƒœแƒ“แƒ”แƒ—, แƒ แƒแƒ› bash-completion แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ. แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜ แƒแƒ“แƒ แƒ” แƒ˜แƒงแƒ แƒ›แƒแƒฌแƒแƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜ Linux-แƒ˜แƒกแƒ แƒ“แƒ MacOS-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ แƒจแƒ”แƒœแƒ˜แƒจแƒ•แƒœแƒ MacOS แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก: แƒ˜แƒกแƒ”แƒ•แƒ” แƒ แƒแƒ’แƒแƒ แƒช kubectl แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒจแƒ”แƒ•แƒกแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜, แƒกแƒ แƒฃแƒšแƒ˜ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก Bash 3.2-แƒ—แƒแƒœ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜แƒ MacOS-แƒ–แƒ”. แƒ™แƒ”แƒ แƒซแƒแƒ“, แƒกแƒ แƒฃแƒšแƒ˜ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒ“แƒแƒ›แƒแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ bash-completion v2 (brew install bash-completion@2), แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒ›แƒ˜แƒœแƒ˜แƒ›แƒฃแƒ› Bash 4.1. แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› MacOS-แƒ–แƒ” แƒกแƒ แƒฃแƒšแƒ˜ แƒแƒšแƒ˜แƒแƒกแƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ— Bash-แƒ˜แƒก แƒฃแƒคแƒ แƒ แƒแƒฎแƒแƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ.

แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ— แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒ‘แƒแƒจ_แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ.แƒจ แƒกแƒแƒฅแƒแƒ แƒ—แƒ•แƒ”แƒšแƒแƒก GitHub แƒกแƒแƒชแƒแƒ•แƒ˜ แƒ“แƒ แƒจแƒ”แƒ˜แƒขแƒแƒœแƒ”แƒ— แƒ˜แƒ’แƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒคแƒแƒ˜แƒšแƒจแƒ˜ ~/.bashrc:

source ~/bash_completion.sh

แƒญแƒฃแƒ แƒ•แƒ˜แƒก แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒกแƒ แƒฃแƒšแƒ˜ แƒแƒšแƒ˜แƒแƒกแƒ˜ แƒกแƒ แƒฃแƒšแƒแƒ“ แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ.

แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒ แƒ—แƒ•แƒ kubectl แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก

แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒฃแƒ แƒแƒ“ แƒกแƒ แƒฃแƒšแƒ˜ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก wrapper แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒก _complete_alias. แƒ”แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ แƒแƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒก แƒแƒšแƒ˜แƒแƒกแƒก แƒ“แƒ แƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒก แƒแƒšแƒ˜แƒแƒกแƒ˜แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒœแƒ˜แƒจแƒœแƒ”แƒ‘แƒ”แƒ‘แƒก.

แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ˜แƒก แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒš แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ—แƒแƒœ แƒ“แƒแƒกแƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒšแƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒฉแƒแƒจแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ Bash แƒ›แƒ”แƒฅแƒแƒœแƒ˜แƒ–แƒ›แƒ˜ แƒ“แƒแƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒก, แƒ“แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“ _complete_alias แƒ แƒแƒ’แƒแƒ แƒช แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ.

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒแƒ•แƒ˜แƒฆแƒแƒ— แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜ k, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก kubectl แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒแƒก. แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ— _complete_alias แƒ แƒแƒ’แƒแƒ แƒช แƒแƒ› แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜แƒก แƒจแƒ”แƒ›แƒแƒ•แƒกแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒแƒฌแƒแƒ แƒ›แƒแƒแƒ— แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ:

$ complete -F _complete_alias k

แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜ แƒ˜แƒก แƒแƒ แƒ˜แƒก, แƒ แƒแƒ› แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒแƒ•แƒกแƒ”แƒ‘แƒ— alias k-แƒก, แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ แƒ’แƒแƒ›แƒแƒ˜แƒซแƒแƒฎแƒ”แƒ‘แƒ _complete_alias, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒก แƒแƒšแƒ˜แƒแƒกแƒก แƒ“แƒ แƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒœแƒ˜แƒจแƒœแƒ”แƒ‘แƒ”แƒ‘แƒก kubectl.

แƒ แƒแƒ’แƒแƒ แƒช แƒ›แƒ”แƒแƒ แƒ” แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜, แƒแƒ•แƒ˜แƒฆแƒแƒ— แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜ kg, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒฆแƒœแƒ˜แƒจแƒœแƒแƒ•แƒก kubectl get:

$ complete -F _complete_alias kg

แƒ˜แƒกแƒ”แƒ•แƒ”, แƒ แƒแƒ’แƒแƒ แƒช แƒฌแƒ˜แƒœแƒ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒจแƒ˜, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒแƒ•แƒกแƒ”แƒ‘แƒ— แƒ™แƒ’-แƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ˜แƒ’แƒ˜แƒ•แƒ” แƒ›แƒ˜แƒœแƒ˜แƒจแƒœแƒ”แƒ‘แƒ”แƒ‘แƒก, แƒ แƒแƒกแƒแƒช แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ‘แƒ“แƒ˜แƒ— kubectl get.

แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒกแƒ แƒฃแƒšแƒ˜ แƒแƒšแƒ˜แƒแƒกแƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜ แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒงแƒ•แƒ”แƒšแƒ kubectl แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜แƒก แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒจแƒ”แƒ•แƒกแƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒกแƒแƒ แƒ—แƒแƒ•แƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒแƒกแƒ แƒฃแƒšแƒแƒ— แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ›แƒแƒ—แƒ’แƒแƒœแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒคแƒ แƒแƒ’แƒ›แƒ”แƒœแƒขแƒ˜ แƒ–แƒฃแƒกแƒขแƒแƒ“ แƒแƒ›แƒแƒก แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒก, แƒ˜แƒ› แƒžแƒ˜แƒ แƒแƒ‘แƒ˜แƒ—, แƒ แƒแƒ› แƒ—แƒฅแƒ•แƒ”แƒœ แƒ“แƒแƒแƒงแƒ”แƒœแƒ”แƒ— kubectl-แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ˜ ~/.kubectl-aliases:

for _a in $(sed '/^alias /!d;s/^alias //;s/=.*$//' ~/.kubectl_aliases); 
do
  complete -F _complete_alias "$_a"
done

แƒ™แƒแƒ“แƒ˜แƒก แƒ”แƒก แƒœแƒแƒฌแƒ˜แƒšแƒ˜ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒœแƒ—แƒแƒ•แƒกแƒ“แƒ”แƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒก ~/.bashrc, แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ”แƒ— แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒกแƒ˜ แƒ“แƒ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜ แƒ’แƒแƒฎแƒ“แƒ”แƒ‘แƒ แƒงแƒ•แƒ”แƒšแƒ 800 kubectl แƒ›แƒ”แƒขแƒกแƒแƒฎแƒ”แƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

6. Kubectl-แƒ˜แƒก แƒ’แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—

แƒ“แƒแƒฌแƒงแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ 1.12, kubectl แƒ›แƒฎแƒแƒ แƒก แƒฃแƒญแƒ”แƒ แƒก แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ˜แƒก แƒ›แƒ”แƒฅแƒแƒœแƒ˜แƒ–แƒ›แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ’แƒแƒแƒคแƒแƒ แƒ—แƒแƒ•แƒแƒ— แƒ›แƒ˜แƒกแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒ—.

แƒ—แƒฃ แƒ˜แƒชแƒœแƒแƒ‘แƒ— Git แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ˜แƒก แƒ›แƒ”แƒฅแƒแƒœแƒ˜แƒ–แƒ›แƒ”แƒ‘แƒ˜, แƒ›แƒแƒจแƒ˜แƒœ kubectl แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ แƒแƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ˜แƒ›แƒแƒ•แƒ” แƒžแƒ แƒ˜แƒœแƒชแƒ˜แƒžแƒ˜แƒ—.

แƒแƒ› แƒ—แƒแƒ•แƒจแƒ˜ แƒ’แƒแƒœแƒ•แƒ˜แƒฎแƒ˜แƒšแƒแƒ•แƒ—, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ— แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜, แƒกแƒแƒ“ แƒ•แƒ˜แƒžแƒแƒ•แƒแƒ— แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒกแƒแƒ™แƒฃแƒ—แƒแƒ แƒ˜ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜.

แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ

Kubectl แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ แƒœแƒแƒฌแƒ˜แƒšแƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒ“แƒ˜ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ˜แƒ—, แƒ›แƒกแƒ’แƒแƒ•แƒกแƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ˜แƒ— kubectl-x. แƒžแƒ แƒ”แƒคแƒ˜แƒฅแƒกแƒ˜ kubectl- แƒกแƒแƒญแƒ˜แƒ แƒแƒ, แƒ แƒแƒกแƒแƒช แƒ›แƒแƒฐแƒงแƒ•แƒ”แƒ‘แƒ แƒแƒฎแƒแƒšแƒ˜ kubectl แƒฅแƒ•แƒ”แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ“แƒแƒ แƒ”แƒ™แƒแƒ— แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ˜.

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, hello แƒ›แƒแƒ“แƒฃแƒšแƒ˜ แƒ’แƒแƒ•แƒ แƒชแƒ”แƒšแƒ“แƒ”แƒ‘แƒ แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒกแƒแƒฎแƒ˜แƒ—, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒ”แƒฌแƒแƒ“แƒ”แƒ‘แƒ kubectl-hello.

แƒ›แƒแƒ“แƒฃแƒšแƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒ™แƒแƒžแƒ˜แƒ แƒ”แƒ‘แƒ kubectl-x แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ  แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒก PATH-แƒจแƒ˜ แƒ“แƒ แƒ’แƒแƒฎแƒแƒ“แƒ”แƒ— แƒ˜แƒ’แƒ˜ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒ“แƒ˜, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“ chmod +x. แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ“แƒแƒฃแƒงแƒแƒ•แƒœแƒ”แƒ‘แƒšแƒ˜แƒ• แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒ แƒ”แƒ™แƒแƒ— แƒ›แƒแƒ“แƒฃแƒšแƒ˜ kubectl x.

แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ, แƒ แƒแƒ› แƒฉแƒแƒ›แƒแƒ—แƒ•แƒแƒšแƒแƒ— แƒงแƒ•แƒ”แƒšแƒ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ›แƒŸแƒแƒ›แƒแƒ“ แƒแƒ แƒ˜แƒก แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜:

$ kubectl plugin list

แƒ”แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒแƒกแƒ”แƒ•แƒ” แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒ’แƒแƒคแƒ แƒ—แƒฎแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒก, แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒ’แƒแƒฅแƒ•แƒ— แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ˜ แƒ”แƒ แƒ—แƒ˜ แƒ“แƒ แƒ˜แƒ’แƒ˜แƒ•แƒ” แƒกแƒแƒฎแƒ”แƒšแƒ˜แƒ—, แƒแƒœ แƒ—แƒฃ แƒแƒ แƒ˜แƒก แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ˜แƒก แƒคแƒแƒ˜แƒšแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ  แƒแƒ แƒ˜แƒก แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒ“แƒ˜.

แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒžแƒแƒ•แƒœแƒ แƒ“แƒ แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ Krew-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—

Kubectl แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒงแƒแƒก แƒ’แƒแƒ–แƒ˜แƒแƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒœ แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜, แƒ แƒแƒ’แƒแƒ แƒช แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜. แƒ›แƒแƒ’แƒ แƒแƒ› แƒกแƒแƒ“ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒžแƒแƒ•แƒแƒ— แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒกแƒฎแƒ•แƒ”แƒ‘แƒ›แƒ แƒ’แƒแƒแƒ–แƒ˜แƒแƒ แƒ”แƒก?

แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜ Krew แƒ›แƒ˜แƒ–แƒœแƒแƒ“ แƒ˜แƒกแƒแƒฎแƒแƒ•แƒก แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒก แƒ”แƒ แƒ—แƒ˜แƒแƒœแƒ˜ แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒ kubectl แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ–แƒ˜แƒแƒ แƒ”แƒ‘แƒ˜แƒก, แƒซแƒ˜แƒ”แƒ‘แƒ˜แƒก, แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒกแƒ แƒ“แƒ แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜ แƒกแƒแƒ™แƒฃแƒ—แƒแƒ  แƒ—แƒแƒ•แƒก แƒฃแƒฌแƒแƒ“แƒ”แƒ‘แƒก "แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ›แƒ”แƒœแƒ”แƒฏแƒ”แƒ แƒก kubectl แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก" (Krew แƒ›แƒกแƒ’แƒแƒ•แƒกแƒ˜แƒ Brew).

Krew แƒแƒ แƒ˜แƒก kubectl แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒแƒ˜แƒ แƒฉแƒ˜แƒแƒ— แƒ“แƒ แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ—. แƒแƒ›แƒแƒ•แƒ“แƒ แƒแƒฃแƒšแƒแƒ“, Krew แƒแƒกแƒ”แƒ•แƒ” แƒแƒ แƒ˜แƒก kubectl-แƒ˜แƒก แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ˜.

แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› Krew-แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ แƒแƒ แƒกแƒ”แƒ‘แƒ˜แƒ—แƒแƒ“ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ แƒแƒ’แƒแƒ แƒช แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒกแƒฎแƒ•แƒ kubectl แƒ›แƒแƒ“แƒฃแƒšแƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ. แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒฎแƒ˜แƒšแƒแƒ— แƒแƒฅ GitHub แƒ’แƒ•แƒ”แƒ แƒ“แƒ˜.

แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ Krew แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒ:

# ะŸะพะธัะบ ะฒ ัะฟะธัะบะต ะฟะปะฐะณะธะฝะพะฒ
$ kubectl krew search [<query>]
# ะŸะพัะผะพั‚ั€ะตั‚ัŒ ะธะฝั„ะพั€ะผะฐั†ะธัŽ ะพ ะฟะปะฐะณะธะฝะต
$ kubectl krew info <plugin>
# ะฃัั‚ะฐะฝะพะฒะธั‚ัŒ ะฟะปะฐะณะธะฝ
$ kubectl krew install <plugin>
# ะžะฑะฝะพะฒะธั‚ัŒ ะฒัะต ะฟะปะฐะณะธะฝั‹ ะดะพ ะฟะพัะปะตะดะฝะตะน ะฒะตั€ัะธะธ
$ kubectl krew upgrade
# ะŸะพัะผะพั‚ั€ะตั‚ัŒ ะฒัะต ะฟะปะฐะณะธะฝั‹, ัƒัั‚ะฐะฝะพะฒะปะตะฝะฝั‹ะต ั‡ะตั€ะตะท Krew
$ kubectl krew list
# ะ”ะตะธะฝัั‚ะฐะปะปะธั€ะพะฒะฐั‚ัŒ ะฟะปะฐะณะธะฝ
$ kubectl krew remove <plugin>

แƒ’แƒ—แƒฎแƒแƒ•แƒ— แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒแƒ—, แƒ แƒแƒ› แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ Krew-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒแƒ  แƒ”แƒ แƒ”แƒ•แƒ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒก แƒ–แƒ”แƒ›แƒแƒ— แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜ แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒฃแƒšแƒ˜ แƒ›แƒ”แƒ—แƒแƒ“แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—.

แƒ’แƒ—แƒฎแƒแƒ•แƒ— แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒแƒ—, แƒ แƒแƒ› แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ kubectl krew list แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒงแƒ Krew-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒฎแƒแƒšแƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ kubectl plugin list แƒฉแƒแƒ›แƒแƒ—แƒ•แƒšแƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒก, แƒแƒœแƒฃ Krew-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ“แƒ แƒกแƒฎแƒ•แƒ แƒ›แƒ”แƒ—แƒแƒ“แƒ”แƒ‘แƒ˜แƒ— แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜.

แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒžแƒแƒ•แƒœแƒ แƒกแƒฎแƒ•แƒแƒ’แƒแƒœ

Krew แƒแƒ แƒ˜แƒก แƒแƒฎแƒแƒšแƒ’แƒแƒ–แƒ แƒ“แƒ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ›แƒŸแƒแƒ›แƒแƒ“ แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ”แƒแƒ‘แƒก แƒกแƒ˜แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ“แƒแƒแƒฎแƒšแƒแƒ”แƒ‘แƒ˜แƒ— 30 แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ˜. แƒ—แƒฃ แƒ•แƒ”แƒ  แƒžแƒแƒฃแƒšแƒแƒ‘แƒ— แƒ˜แƒ›แƒแƒก, แƒ แƒแƒช แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ—, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒžแƒแƒ•แƒแƒ— แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ แƒกแƒฎแƒ•แƒแƒ’แƒแƒœ, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ GitHub.

แƒ’แƒ˜แƒ แƒฉแƒ”แƒ•แƒ— แƒ’แƒแƒ“แƒแƒฎแƒ”แƒ“แƒแƒ— GitHub แƒ’แƒแƒœแƒงแƒแƒคแƒ˜แƒšแƒ”แƒ‘แƒแƒก kubectl-แƒžแƒšแƒแƒ’แƒ˜แƒœแƒ”แƒ‘แƒ˜. แƒแƒฅ แƒœแƒแƒฎแƒแƒ•แƒ— แƒแƒ—แƒแƒ‘แƒ˜แƒ— แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ› แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ—แƒ แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒแƒช แƒฆแƒ˜แƒ แƒก.

แƒกแƒแƒ™แƒฃแƒ—แƒแƒ แƒ˜ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒฌแƒ”แƒ แƒ

แƒจแƒ”แƒœ แƒ—แƒ•แƒ˜แƒ—แƒแƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒ แƒจแƒ”แƒฅแƒ›แƒ”แƒœแƒ˜แƒ— แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ - แƒแƒ  แƒแƒ แƒ˜แƒก แƒ แƒ—แƒฃแƒšแƒ˜. แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒ“แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒก แƒ˜แƒ›แƒแƒก, แƒ แƒแƒช แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ—, แƒ“แƒแƒแƒ แƒฅแƒ•แƒ˜แƒ— แƒกแƒแƒฎแƒ”แƒšแƒ˜ kubectl-x แƒ“แƒ แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ—, แƒ แƒแƒ’แƒแƒ แƒช แƒ–แƒ”แƒ›แƒแƒ— แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜.

แƒคแƒแƒ˜แƒšแƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒงแƒแƒก bash แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜, แƒžแƒ˜แƒ—แƒแƒœแƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒแƒœ แƒจแƒ”แƒ“แƒ’แƒ”แƒœแƒ˜แƒšแƒ˜ GO แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ - แƒแƒ  แƒแƒฅแƒ•แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ. แƒ”แƒ แƒ—แƒแƒ“แƒ”แƒ แƒ—แƒ˜ แƒžแƒ˜แƒ แƒแƒ‘แƒ แƒ˜แƒก แƒแƒ แƒ˜แƒก, แƒ แƒแƒ› แƒ˜แƒก แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ“แƒ”แƒก แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒฃแƒš แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜.

แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒฅแƒ›แƒœแƒแƒ— แƒ›แƒแƒ“แƒฃแƒšแƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ แƒแƒฎแƒšแƒแƒ•แƒ”. แƒฌแƒ˜แƒœแƒ แƒ’แƒแƒœแƒงแƒแƒคแƒ˜แƒšแƒ”แƒ‘แƒแƒจแƒ˜, แƒ—แƒฅแƒ•แƒ”แƒœ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ“แƒ˜แƒ— kubectl แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒแƒก, แƒ แƒแƒ—แƒ แƒฉแƒแƒ›แƒแƒ—แƒ•แƒแƒšแƒแƒ— แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒ”แƒ‘แƒ˜ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒžแƒแƒ“แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒแƒ“แƒ•แƒ˜แƒšแƒ˜แƒ แƒแƒ› แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ“แƒแƒฅแƒชแƒ”แƒ•แƒ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒแƒ“, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒ แƒ”แƒ™แƒแƒ— แƒ›แƒแƒ’. kubectl img.

แƒจแƒ”แƒฅแƒ›แƒ”แƒœแƒ˜แƒ— แƒคแƒแƒ˜แƒšแƒ˜ kubectl-img แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒจแƒ˜แƒœแƒแƒแƒ แƒกแƒ˜:

#!/bin/bash
kubectl get pods -o custom-columns='NAME:metadata.name,IMAGES:spec.containers[*].image'

แƒแƒฎแƒšแƒ แƒ’แƒแƒแƒ™แƒ”แƒ—แƒ”แƒ— แƒคแƒแƒ˜แƒšแƒ˜ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒ“แƒ˜ chmod +x kubectl-img แƒ“แƒ แƒ’แƒแƒ“แƒแƒ˜แƒขแƒแƒœแƒ”แƒ— แƒ˜แƒ’แƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒก PATH-แƒ˜แƒก แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ  แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜. แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ“แƒแƒฃแƒงแƒแƒ•แƒœแƒ”แƒ‘แƒšแƒ˜แƒ• แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ›แƒแƒ“แƒฃแƒšแƒ˜ kubectl img.

แƒ แƒแƒ’แƒแƒ แƒช แƒแƒฆแƒ•แƒœแƒ˜แƒจแƒœแƒ”แƒ—, kubectl แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ“แƒแƒ˜แƒฌแƒ”แƒ แƒแƒก แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ  แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒแƒœ แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒแƒ–แƒ”. แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ— shell แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ”แƒ‘แƒก, แƒฃแƒžแƒ˜แƒ แƒแƒขแƒ”แƒกแƒแƒ‘แƒ แƒ˜แƒก แƒแƒ แƒ˜แƒก, แƒ แƒแƒ› แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒแƒ“ แƒ“แƒแƒ แƒ”แƒ™แƒแƒ— kubectl แƒ›แƒแƒ“แƒฃแƒšแƒ˜แƒก แƒจแƒ˜แƒ’แƒœแƒ˜แƒ“แƒแƒœ. แƒ—แƒฃแƒ›แƒชแƒ, แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒฌแƒ”แƒ แƒแƒ— แƒฃแƒคแƒ แƒ แƒ แƒ—แƒฃแƒšแƒ˜ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ แƒ แƒ”แƒแƒšแƒฃแƒ  แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ”แƒ‘แƒ–แƒ” Kubernetes แƒ™แƒšแƒ˜แƒ”แƒœแƒขแƒ˜แƒก แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ. แƒ—แƒฃ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ— Go-แƒก, แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— cli-runtime แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒžแƒ”แƒชแƒ˜แƒแƒšแƒฃแƒ แƒแƒ“ แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก kubectl แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒฌแƒ”แƒ แƒแƒ“.

แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒแƒ–แƒ˜แƒแƒ แƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜

แƒ—แƒฃ แƒคแƒ˜แƒฅแƒ แƒแƒ‘แƒ—, แƒ แƒแƒ› แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒกแƒแƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒ แƒ˜แƒงแƒแƒก แƒกแƒฎแƒ•แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒแƒ’แƒ”แƒ แƒ˜แƒ“แƒ”แƒ‘แƒแƒ— แƒ’แƒแƒแƒ–แƒ˜แƒแƒ แƒแƒ— แƒ˜แƒ’แƒ˜ GitHub-แƒ–แƒ”. แƒแƒฃแƒชแƒ˜แƒšแƒ”แƒ‘แƒšแƒแƒ“ แƒ“แƒแƒแƒ›แƒแƒขแƒ”แƒ— แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ—แƒ”แƒ›แƒแƒก kubectl-แƒžแƒšแƒแƒ’แƒ˜แƒœแƒ”แƒ‘แƒ˜.

แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ›แƒแƒ“แƒฃแƒšแƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ แƒ™แƒ แƒ”แƒฃแƒก แƒกแƒ˜แƒ. แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ’แƒแƒ•แƒแƒ™แƒ”แƒ—แƒแƒ— แƒ”แƒก, แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜แƒ GitHub แƒกแƒแƒชแƒแƒ•แƒ˜.

แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ

แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ แƒแƒ›แƒŸแƒแƒ›แƒแƒ“ แƒแƒ  แƒฃแƒญแƒ”แƒ แƒก แƒ›แƒฎแƒแƒ แƒก แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ  แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒก. แƒแƒœแƒฃ, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒ˜แƒงแƒ•แƒแƒœแƒแƒ— แƒ›แƒแƒ“แƒฃแƒšแƒ˜แƒก แƒกแƒ แƒฃแƒšแƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒ“แƒ แƒแƒ แƒ’แƒฃแƒ›แƒ”แƒœแƒขแƒ”แƒ‘แƒ˜แƒก แƒกแƒ แƒฃแƒšแƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜.

แƒแƒฅแƒ•แƒก GitHub kubectl แƒกแƒแƒชแƒแƒ•แƒ˜ แƒแƒ› แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒฆแƒ˜แƒ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ. แƒแƒกแƒ” แƒ แƒแƒ›, แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ, แƒ แƒแƒ› แƒ”แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ แƒแƒ“แƒ”แƒกแƒ›แƒ” แƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒจแƒ˜ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ“แƒ”แƒก.

แฒฌแƒแƒ แƒ›แƒแƒขแƒ”แƒ‘แƒ”แƒ‘แƒ˜!!!

แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ แƒ แƒฌแƒแƒ•แƒ˜แƒ™แƒ˜แƒ—แƒฎแƒแƒ— แƒ—แƒ”แƒ›แƒแƒ–แƒ”:

  1. แƒแƒ•แƒขแƒแƒกแƒ™แƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒ›แƒ˜ แƒ“แƒแƒœแƒ” Kubernetes-แƒจแƒ˜ แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ“.
  2. Kubernetes แƒ›แƒ”แƒ™แƒแƒ‘แƒ แƒ”แƒแƒ‘แƒ˜แƒก แƒกแƒฃแƒšแƒ˜แƒกแƒ™แƒ•แƒ”แƒ—แƒ”แƒ‘แƒ˜แƒ— แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒแƒ‘แƒšแƒแƒœแƒ˜แƒ—.
  3. แƒฉแƒ•แƒ”แƒœแƒ˜ แƒแƒ แƒฎแƒ˜ Kubernetes-แƒ˜แƒก แƒ’แƒแƒ แƒจแƒ”แƒ›แƒ Telegram-แƒจแƒ˜.

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒจแƒ”แƒ˜แƒซแƒ˜แƒœแƒ”แƒ— แƒกแƒแƒ˜แƒ›แƒ”แƒ“แƒ แƒฐแƒแƒกแƒขแƒ˜แƒœแƒ’แƒ˜ DDoS แƒ“แƒแƒชแƒ•แƒ˜แƒก แƒ›แƒฅแƒแƒœแƒ” แƒกแƒแƒ˜แƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, VPS VDS แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก ๐Ÿ”ฅ แƒจแƒ”แƒ˜แƒซแƒ˜แƒœแƒ”แƒ— แƒกแƒแƒ˜แƒ›แƒ”แƒ“แƒ แƒ•แƒ”แƒ‘แƒกแƒแƒ˜แƒขแƒ˜แƒก แƒฐแƒแƒกแƒขแƒ˜แƒœแƒ’แƒ˜ DDoS แƒ“แƒแƒชแƒ•แƒ˜แƒ—, VPS VDS แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ”แƒ‘แƒ˜ | ProHoster