k8s學習——常用命令操作
阿新 • • 發佈:2020-11-05
建立資源物件:
直接通過kubectl命令及相關的選項建立資源物件的方式:
kubectl run nginx-deploy --image=nginx:1.12 --replicas=2 # 建立名為nginx-deploy的Deployment控制器資源物件 kubectl expose deployment/nginx --name=nginx-svc --port=80 # 建立名為nginx-svc的Service資源物件
根據資源清單建立資源物件:
kubectl create -f nginx-deploy.yaml -f nginx-svc.yaml
將建立交由kubectl自行確定:
kubectl apply -f nginx-deploy.yaml -f nginx-svc.yaml
檢視資源物件:
kubectl get namespaces # 系統上所有的Namespaces資源物件 kubectl get pods,services -o wide # 列出預設名稱空間內的所有pod和service物件 kubectl get pods -l k8s-app -n kube-system # 列出kube-namespaces名稱空間中擁有k8s-app標籤名稱的所有pod物件
列印資源物件的詳細資訊:
kubectl get pods -l component=kube-apiserver -o yaml -n kube-system # 檢視kube-system名稱空間中擁有標籤component=kube-apiserver的pod物件的資源配置清單及當前的狀態資訊,並輸出為yaml格式 kubectl describe pods -l component=kube-apiserver -n kube-system # 檢視kube-system名稱空間中擁有標籤component=kube-apiserver的pod物件的詳細描述資訊
列印容器中的日誌資訊:
kubectl logs [-f] [-p] (POD|TYPE/NAME) [-c CONTAINER] [options]
kubectl logs kube-apiserver-master.ilinux.io -n kube-system # 檢視名稱空間kube-system中僅有一個容器的pod物件kube-apiserver-master.ilinux.io的日誌 使用-f相當於使用tail -f持續監控
在容器中執行命令:
kubectl exec kube-apiserver-master.ilinux.io -n kube-system -- ps # 在kube-system名稱空間中的Pod物件kube-apiserver-master.ilinux.io上的唯一容器中執行ps命令
刪除資源物件:
kubectl delete services nginx-svc # 刪除預設名稱空間中名為nginx-svc的Service資源物件 kubectl delete pods -l app=monitor -n kube-system # 刪除kube-system名稱空間中擁有標籤“k8s-app=kube-proxy”的所有pod物件 kubectl delete pods --all -n kube-public # 刪除kube-public名稱空間中的所有pod物件