差異處
這裏顯示兩個版本的差異處。
| 兩邊的前次修訂版 前次修改 下次修改 | 前次修改 | ||
| tech:kubectl [2021/01/23 17:58] – [Kubctl 語法整理] jonathan | tech:kubectl [2025/12/06 11:57] (目前版本) – [檢查 K8s Cluster 的健康狀態] jonathan | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| ====== Kubectl 語法整理 ====== | ====== Kubectl 語法整理 ====== | ||
| - | ===== 顯示 | + | ===== 指定特別 kubeconf 檔方式 ===== |
| + | * Exp. kubeconf 檔案存放在 / | ||
| + | * < | ||
| + | |||
| + | ===== 檢查 K8s Cluster 的健康狀態 ===== | ||
| + | * 檢查 API server< | ||
| + | kubectl get --raw='/ | ||
| + | </ | ||
| + | * ++看實際執行結果|< | ||
| + | jonathan@k3s-master-171: | ||
| + | [+]ping ok | ||
| + | [+]log ok | ||
| + | [+]etcd ok | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | [+]autoregister-completion ok | ||
| + | [+]poststarthook/ | ||
| + | [+]poststarthook/ | ||
| + | healthz check passed | ||
| + | </ | ||
| + | * 檢查 etcd< | ||
| + | kubectl get --raw='/ | ||
| + | </ | ||
| + | * ++看實際執行結果|< | ||
| + | jonathan@k3s-master-171: | ||
| + | ok | ||
| + | </ | ||
| + | * 檢查 kube-system < | ||
| + | kubectl get pods -n kube-system | ||
| + | </ | ||
| + | * ++看實際執行結果|< | ||
| + | jonathan@k3s-master-171: | ||
| + | NAME READY | ||
| + | coredns-64fd4b4794-28wrz | ||
| + | local-path-provisioner-774c6665dc-t8g2l | ||
| + | metrics-server-7bfffcd44-5mkbj | ||
| + | </ | ||
| + | |||
| + | ===== 讀取 K8s Cluster Name 的方式 ===== | ||
| + | * 參考 - https:// | ||
| + | * 方法1 < | ||
| + | rkeuser@devops2: | ||
| + | iiidevops-k8s | ||
| + | </ | ||
| + | * 方法2 < | ||
| + | rkeuser@devops2: | ||
| + | apiVersion: v1 | ||
| + | clusters: | ||
| + | - cluster: | ||
| + | certificate-authority-data: | ||
| + | server: https:// | ||
| + | name: iiidevops-k8s | ||
| + | contexts: | ||
| + | - context: | ||
| + | cluster: iiidevops-k8s | ||
| + | user: kube-admin-iiidevops-k8s | ||
| + | name: iiidevops-k8s | ||
| + | current-context: | ||
| + | kind: Config | ||
| + | preferences: | ||
| + | users: | ||
| + | - name: kube-admin-iiidevops-k8s | ||
| + | user: | ||
| + | client-certificate-data: | ||
| + | client-key-data: | ||
| + | </ | ||
| + | |||
| + | ===== 顯示 | ||
| * < | * < | ||
| localadmin@iiidevops-73: | localadmin@iiidevops-73: | ||
| 行 12: | 行 103: | ||
| sonarqube-server-6ccbf4c54f-vksmp | sonarqube-server-6ccbf4c54f-vksmp | ||
| </ | </ | ||
| + | * 加上 -n 參數 指定所要查詢的 namespace 內 pod 清單 < | ||
| + | $ kubectl get pod -n kube-system | ||
| + | NAME READY | ||
| + | calico-kube-controllers-c955d588c-kcm7r | ||
| + | calico-node-sghsm | ||
| + | : | ||
| + | rke-metrics-addon-deploy-job-dhjbl | ||
| + | rke-network-plugin-deploy-job-6vzqh | ||
| + | </ | ||
| + | |||
| * 加上 -A 參數可呈現所有 namespace 的 pod 清單 < | * 加上 -A 參數可呈現所有 namespace 的 pod 清單 < | ||
| localadmin@iiidevops-hv-2: | localadmin@iiidevops-hv-2: | ||
| 行 25: | 行 126: | ||
| </ | </ | ||
| - | + | ===== 顯示 | |
| - | ===== 顯示 | + | |
| * < | * < | ||
| localadmin@iiidevops-73: | localadmin@iiidevops-73: | ||
| 行 52: | 行 152: | ||
| </ | </ | ||
| - | ===== 顯示 | + | ===== 顯示 |
| * < | * < | ||
| localadmin@iiidevops-71: | localadmin@iiidevops-71: | ||
| 行 91: | 行 191: | ||
| </ | </ | ||
| - | ===== 顯示 | + | ===== 顯示 |
| - | * <cli>kubctl | + | * <cli>kubectl |
| localadmin@iiidevops-73: | localadmin@iiidevops-73: | ||
| NAME | NAME | ||
| 行 103: | 行 203: | ||
| </ | </ | ||
| - | ===== 移除 | + | ===== 移除 |
| * < | * < | ||
| localadmin@iiidevops-73: | localadmin@iiidevops-73: | ||
| 行 111: | 行 211: | ||
| </ | </ | ||
| - | {{tag> | + | ===== 顯示 K8s 內的 namespace 清單 ===== |
| + | * < | ||
| + | iiidevops@iiidevops1: | ||
| + | NAME | ||
| + | account | ||
| + | cattle-pipeline | ||
| + | cattle-system | ||
| + | default | ||
| + | iii-devops-toolchain | ||
| + | ingress-nginx | ||
| + | kube-node-lease | ||
| + | kube-public | ||
| + | kube-system | ||
| + | p-pdx2d-pipeline | ||
| + | security-scan | ||
| + | </ | ||
| + | |||
| + | ===== 移除 K8s 內的 namespace deploy pod ===== | ||
| + | * < | ||
| + | iiidevops@iiidevops1: | ||
| + | namespace " | ||
| + | </ | ||
| + | |||
| + | ===== 讀取 Secret 的內容 ===== | ||
| + | * < | ||
| + | rkeuser@dev4-86: | ||
| + | NAME TYPE DATA AGE | ||
| + | default-token-pssx6 | ||
| + | gitlab | ||
| + | harbor | ||
| + | harbor-harbor-clair | ||
| + | harbor-harbor-clair-internal-tls | ||
| + | harbor-harbor-core | ||
| + | : | ||
| + | </ | ||
| + | * 顯示 secret 的內容, 有定義那些 key< | ||
| + | rkeuser@dev4-86: | ||
| + | Name: | ||
| + | Namespace: | ||
| + | Labels: | ||
| + | Annotations: | ||
| + | field.cattle.io/ | ||
| + | lifecycle.cattle.io/ | ||
| + | secret.user.cattle.io/ | ||
| + | |||
| + | Type: Opaque | ||
| + | |||
| + | Data | ||
| + | ==== | ||
| + | harbor-local: | ||
| + | </ | ||
| + | * 顯示 secret key 的 value 編碼內容< | ||
| + | kubectl get secrets/< | ||
| + | </ | ||
| + | kubectl get secrets/ | ||
| + | </ | ||
| + | <WRAP center round tip 60%> | ||
| + | ** 如果要直接解碼可使用 base64 -d 的方式處理** Exp. < | ||
| + | kubectl get secrets/ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ===== 讀取 kubelet 內的 pod 目錄編號 ===== | ||
| + | * 實際 pod 的檔案存在 node 內的 / | ||
| + | kubectl get pods -A -o custom-columns=NodeName: | ||
| + | </ | ||
| + | * ++看實際範例|< | ||
| + | rkeuser@demo-77: | ||
| + | NodeName | ||
| + | 10.20.0.79 | ||
| + | 10.20.0.79 | ||
| + | 10.20.0.79 | ||
| + | 10.20.0.78 | ||
| + | 10.20.0.78 | ||
| + | 10.20.0.77 | ||
| + | 10.20.0.79 | ||
| + | 10.20.0.78 | ||
| + | 10.20.0.77 | ||
| + | : | ||
| + | </ | ||
| + | rkeuser@demo-77: | ||
| + | / | ||
| + | total 16 | ||
| + | -rw-r--r-- 1 root root 241 Jan 7 09:04 etc-hosts | ||
| + | drwxr-x--- 3 root root 4096 Jun 25 2022 containers | ||
| + | drwxr-x--- 3 root root 4096 Jun 25 2022 plugins | ||
| + | drwxr-x--- 3 root root 4096 Jun 25 2022 volumes | ||
| + | |||
| + | / | ||
| + | total 4 | ||
| + | drwxr-x--- 2 root root 4096 Jan 7 09:04 mariadb-gui | ||
| + | |||
| + | / | ||
| + | total 0 | ||
| + | -rw-rw-rw- 1 root root 0 Jan 7 09:04 832a851d | ||
| + | -rw-rw-rw- 1 root root 0 Nov 19 09:26 d65ebd13 | ||
| + | -rw-rw-rw- 1 root root 0 Oct 15 06:39 d516d827 | ||
| + | -rw-rw-rw- 1 root root 0 Oct 14 19:16 ea72f4fc | ||
| + | -rw-rw-rw- 1 root root 0 Sep 17 11:11 94285167 | ||
| + | -rw-rw-rw- 1 root root 0 Aug 28 18:14 edc19f39 | ||
| + | -rw-rw-rw- 1 root root 0 Jul 30 2022 cbf94e15 | ||
| + | -rw-rw-rw- 1 root root 0 Jul 14 2022 f3f9f859 | ||
| + | -rw-rw-rw- 1 root root 0 Jun 25 2022 46143b63 | ||
| + | |||
| + | / | ||
| + | total 4 | ||
| + | drwxr-x--- 2 root root 4096 Jan 30 07:48 kubernetes.io~empty-dir | ||
| + | |||
| + | / | ||
| + | total 0 | ||
| + | |||
| + | / | ||
| + | total 4 | ||
| + | drwxr-xr-x 2 root root 4096 Jan 30 07:48 kubernetes.io~secret | ||
| + | |||
| + | / | ||
| + | total 0 | ||
| + | rkeuser@demo-77: | ||
| + | </ | ||
| + | |||
| + | ===== 刪除 PVC 後一直在 Terminating 狀態 | ||
| + | * 查看卡住的 PVC< | ||
| + | kubectl get pvc -n < | ||
| + | </ | ||
| + | * 移除 finalizer 強制刪除< | ||
| + | kubectl patch pvc < | ||
| + | </ | ||
| + | * ++看實際處理訊息|< | ||
| + | jonathan@k3s-master-171: | ||
| + | librenms-frontend-data | ||
| + | jonathan@k3s-master-171: | ||
| + | persistentvolumeclaim/ | ||
| + | </ | ||
| + | |||
| + | {{tag> | ||