K8S相关命令

  1. 查看节点详细信息:
    kubectl describe node notec.silence.com
  2. 查看版本信息:
    kubectl version
  3. 查看集群信息:
    kubectl cluster-info
  4. 创建一个pod:
    kubectl run nginx-deploy --image=nignx:1.14-alpine --port=80 --replicas=1 --dry-run=true
    k8s相关命令
  5. 正式创建一个Pod
    kubectl run nginx-deploy --image=nginx:1.14-alpine --port=80 --replicas=1
    k8s相关命令
  6. 查看当前项目
    kubectl get deployment
    k8s相关命令
  7. 查看创建的pod
    kubectl get pods
    k8s相关命令
  8. 查看pod运行在哪个节点上及IP地下
    kubectl get pods -o wide
    k8s相关命令
    a) 测试访问该IP:
    curl http://10.244.2.2
    k8s相关命令_第1张图片
  9. 查看Pod名称
    kubectl get pods
    k8s相关命令
  10. 删除Pod
    kubectl delete pods nginx-deploy-66ff98548d-kz8ws
    a) 查看pod是否重新自动生成
    kubectl get pods
    k8s相关命令
  11. 创建service提供外部定点访问:
    kubectl expose deployment nginx-deploy --name=nginx --port=80 --target-port=80 --protocol=TCP
    k8s相关命令
    a) 查看服务service:
    kubectl get service/svc
    k8s相关命令
    b) 测试访问,只限于集群内部访问(pod客户端):
  12. 查看Kubelet的DNS
    kubectl get pods -n kube-system -o wide
    k8s相关命令_第2张图片
    kubectl get svc -n kube-system
    k8s相关命令
  13. 创建测试用的pod
    kubectl run client --image=busybox --replicas=1 -it --restart=Never
    a) 测试访问pod内部资源:
    wget -O - -q http://nginx:80/
    k8s相关命令_第3张图片
  14. 查看所有服务serivce
    kubectl get service/svc
    k8s相关命令
  15. 查看某个服务servcie的详细信息
    kubectl describe svc nginx
    k8s相关命令_第4张图片
  16. 查看pod并显示对应标签
    kubectl get pods --show-labels
    k8s相关命令
  17. 查看控制器的详细信息
    kubectl describe deployment nginx-deploy
    k8s相关命令_第5张图片
  18. 监控控制器状态:
    kubectl get deployment -w
  19. 修改pod的副本数量,实现动态扩容或纵容:
    kubectl scale --replicas=3 deployment nginx-deploy
    k8s相关命令
    a) 查看复本是否有增加:
    kubectl get pods
    k8s相关命令
    b) 持续监控pod,查看副本切换:
    while true; do wget -O - -q nginx; sleep 1;done
  20. 在线升级pod的镜像:
    a) 查看pod中各副本所使用的镜像版本:
    kubectl get pods
    kubectl describe pods nginx-deploy-66ff98548d-2vqch
    k8s相关命令_第6张图片
    k8s相关命令
    升级控制器-容器名
    kubectl set image deployment nginx-deploy nginx-deploy=nginx:1.14.1-alpine
    k8s相关命令
    查看更新过程
    kubectl rollout status deployment nginx-deploy
    k8s相关命令
    查看更新后的pod名称是否有改,改则为正常
    升级前
    k8s相关命令
    升级后
    k8s相关命令_第7张图片
    查看升级后的镜像版本
    kubectl describe pods nginx-deploy-b8867d47f-2s5qk
    k8s相关命令
    升级回滚操作
    kubectl rollout undo deployment nginx-deploy
    k8s相关命令
    kubectl get pods
    k8s相关命令
    kubectl describe pods nginx-deploy-66ff98548d-5clp4
    k8s相关命令
  21. 修改服务service类型,实现集群外访问
    kubectl get service
    k8s相关命令
    kubectl edit service nginx
    type: ClusterIP改成
    type: NodePort
    k8s相关命令
    kubectl get service
    k8s相关命令
    节点外访问
    http://10.206.35.236:32349/
    k8s相关命令_第8张图片

  22. 显示带有对应标签的pod
    kubectl get pods -l app
  23. 给pod加上标签
    kubectl label pods pod-demo release=stable
    k8s相关命令
  24. 给pod修改标签
    kubectl label pods pod-demo release=canary --overwrite
    k8s相关命令
  25. 查看有两种标签的pod
    kubectl get pods -l release,app
    kubectl get pods -l release=canary,app
    kubectl get pods -l release!=canary