管理命名空間資源 |
查找命名空間
kubectl get namespace
kubectl get ns
查詢某個命名空間的資源
kubectl get all -n default
創建命名空間
kubectl create namespace testapp
kubectl create ns testapp
刪除命名空間
kubectl delete namespace testapp
kubectl delete ns testapp
Pod管理 |
創建Pod
kubectl run demo1-mvcone --image=192.168.0.101:10080/eshop/demo1.mvcone:v1.0.1 --port=801
查看Pod
kubectl get pod
kubectl get pod -o wide
查看pod詳細信息
kubectl describe pod demo1-mvcone
查看pod日志
kubectl logs pod名稱
kubectl logs demo1-mvcone-nbs
查看pod日志(實行更新)
kubectl logs pod名稱 -f
kubectl logs demo1-mvcone-nbs -f
查看pod創建狀態
kubectl rollout status pod demo1-mvcone
進入某個pod,(像nginx, mediasoup這類可執行文件才可以)
kubectl exec -ti 容器名稱 /bin/bash
kubectl exec -ti demo1-mvcone-nbs /bin/bash
也可以在docker里用 docker exec
管理DaemonSet資源 |
創建DaemonSet(默認命名空間)
kubectl create daemonset demo1-mvcone --image=192.168.0.101:10080/eshop/demo1.mvcone:v1.0.1
創建DaemonSet(創建到指定命名空間)
kubectl create daemonset demo1-mvcone --image=192.168.0.101:10080/eshop/demo1.mvcone:v1.0.1 -n kube-public
查看默認命名空間下的DaemonSet
kubectl get daemonset -o wide
查看指定命名空間下的DaemonSet
kubectl get daemonset -n kube-public -o wide
查看詳細 DaemonSet 信息
kubectl describe daemonset demo1-mvcone
查看daemonset創建狀態
kubectl rollout status daemonset demo1-mvcone
管理Deployment |
創建deployment(默認命名空間)
kubectl create deployment demo1-mvcone --image=192.168.0.101:10080/eshop/demo1.mvcone:v1.0.1
創建deployment(創建到指定命名空間)
kubectl create deployment demo1-mvcone --image=192.168.0.101:10080/eshop/demo1.mvcone:v1.0.1 -n kube-public
查看默認命名空間下的deployment
kubectl get deploy -o wide
kubectl get deploy
查看指定命名空間下的deployment
kubectl get deploy -n kube-public -o wide
kubectl get deploy -n kube-public
查看詳細 Deployment 信息
kubectl describe deployment demo1-mvcone
查看deploy創建狀態
kubectl rollout status deploy demo1-mvcone
deployment擴容與縮容
kubectl scale deployment demo1-mvcone --replicas=2
--replicas=n比以前大就是擴容,比以前小就是縮容。
更新deployment鏡像(鏡像升級,從v1.0.1版本升級到v1.0.2版本)
kubectl set image deploy deploy名稱 容器名稱=鏡像:版本
kubectl set image deploy demo1-mvcone demo1-mvcone-s7scb=192.168.0.101:10080/eshop/demo1.mvcone:v1.0.2
查看歷史升級記錄
kubectl rollout history deploy demo1-mvcone
查看某個版本的升級明細
kubectl rollout history deploy demo1-mvcone --revision=2
回滾到上一個版本
kubectl rollout undo deploy demo1-mvcone
回滾到指定版本
kubectl rollout undo deploy demo1-mvcone --to-revision=2
修改deployment可以使用的cpu、內存資源
kubectl set resources deploy demo1-mvcone -c=demo1-mvc-nbc --limits=cpu=200m,memory=512Mi
kubectl set resources deploy deployment名稱 -c=容器名稱 --limits=cpu=200m,memory=512Mi
監控某個命令的事件變化
先在【工作節點1】上執行:watch -n 1 "kubectl describe deployment demo1-mvcone | grep -C 5 Event"
然后在【工作節點2】上執行刪除pod的命令,kubectl delete pods demo1-mvcone-5dfc739593-hpk9m
那么在【工作節點1】的watch輸出信息會即時發生變化'
管理Service資源 |
創建deployment
kubectl create deployment demo1-mvcone --image=192.168.0.101:10080/eshop/demo1.mvcone:v1.0.1
創建service
只有deployment才可以被創建成service 。
kubectl expose deployment demo1-mvcone --type="NodePort" --port=3001 --target-port=3001
--port 服務端口
--target-port 容器端口
注意:創建出來的service暴露出來的ip:192.168.131.114是虛擬ip,外部不能訪問,但集群內部可以訪問,包括運算節點也可以訪問。
注意:不能給DaemonSet創建service。
查看service
kubectl get service -o wide
通過yaml配置文件增加與修改資源 |
創建資源
kubectl create -f yaml配置文件名.yaml
kubectl create -f /opt/kubernetes/server/startup/demo1-mvcone-pod.yaml #通過yaml文件創建pod
kubectl create -f /opt/kubernetes/server/startup/demo1-mvcone-deploy.yaml #通過yaml文件創建Deployment
kubectl create -f /opt/kubernetes/server/startup/demo1-mvcone-daemon.yaml #通過yaml文件創建DaemonSet
創建資源的類型寫在yaml文件里面
修改已存在的資源
kubectl apply -f yaml配置文件名.yaml
kubectl apply -f /opt/kubernetes/server/startup/demo1-mvcone-pod.yaml #通過yaml文件修改pod
kubectl apply -f /opt/kubernetes/server/startup/demo1-mvcone-deploy.yaml #通過yaml文件修改Deployment
kubectl apply -f /opt/kubernetes/server/startup/demo1-mvcone-daemon.yaml #通過yaml文件修改DaemonSet
查看資源配置清單 |
用yaml格式查看資源配置清單
kubectl get service demo1-mvcibe -o yaml #查看service
kubectl get deployment demo1-mvcibe -o yaml #查看deployment
kubectl get daemonset demo1-mvcibe -o yaml #查看daemonset
kubectl get pod demo1-mvcibe-dfedf4-sf56 -o yaml #查看pod
用json格式查看資源配置清單
kubectl get service demo1-mvcibe -o json #查看service
kubectl get deployment demo1-mvcibe -o json #查看deployment
kubectl get daemonset demo1-mvcibe -o json #查看daemonset
kubectl get pod demo1-mvcibe-dfedf4-sf56 -o json #查看pod
用wide表格方式查看資源配置清單
kubectl get service demo1-mvcibe -o wide #查看service
kubectl get deployment demo1-mvcibe -o wide #查看deployment
kubectl get daemonset demo1-mvcibe -o wide #查看daemonset
kubectl get pod demo1-mvcibe-dfedf4-sf56 -o wide #查看pod
用yaml配置文件刪除資源 |
刪除資源
kubectl delete -f yaml配置文件名.yaml
kubectl delete -f /opt/kubernetes/server/startup/demo1-mvcone-pod.yaml #通過yaml文件刪除pod
kubectl delete -f /opt/kubernetes/server/startup/demo1-mvcone-deploy.yaml #通過yaml文件刪除Deployment
kubectl delete -f /opt/kubernetes/server/startup/demo1-mvcone-daemon.yaml #通過yaml文件刪除DaemonSet
文件內容就是創建資源的內容。