昨天跟各位介紹完 Kubelet 之後,相信大家對它已經有一定的瞭解了。
那今天要跟各位介紹的這個工具,可以說是只要需要操作到 K8s 的指令,都可以看到它的存在。
那廢話不多說,我們開始介紹今天的主角, Kubectl 吧!
那什麼是 kubectl 呢?
簡單來說,他就很像是 kubernetes 的 Command Line 工具,而我們就是透過這個工具去對 Kubernetes Cluster 做操作,所以幾乎每個操作指令都包含 Kubectl 這個工具,以下就讓我來為你們做一些簡單的範例:
#指令
kubectl get <資源名稱> <物件名稱>
如果沒有給物件名稱的話,將會把所有資源顯示出來。
# 範例
kubectl get pod test
NAME READY STATUS RESTARTS AGE
test 1/1 Running 0 22h
==========================================
kubectl get pod
NAME READY STATUS RESTARTS AGE
test 1/1 Running 0 22h
test2 1/1 Running 0 23h
test3 1/1 Running 0 23h
test4 1/1 Running 0 22h
而如果我們在指令後面加上 -o wide 的話,可以看到關於這個資源更詳細的資訊。
kubectl get pod test -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
test 1/1 Running 0 24h 10.244.0.7 ubuntu-pve <none> <none>
# 指令
## 新增
kubectl apply -f test.yaml
## 更新
kubectl edit <資源名稱> <物件名稱>
## 刪除
kubectl delete <資源名稱> <物件名稱>
or
kubectl delete -f test.yaml
# 指令
kubectl exec -ti <物件名稱> -- /bin/bash
# 範例
kubectl exec -ti test -- /bin/bash
當看到你的命令列從原本的
ubuntu@ubuntu:~$
轉變成
root@test:/app#
那就代表你已經成功了!
今天跟各位介紹的這幾個指令是比較常用的幾個指令,大家先了解這些指令之後,後面幾天教的實作會相對的比較好上手一點!
到時候我將會為各位示範幾個 Resource 的實作!
那我們今天就先介紹到這邊吧~大家掰掰!