• ​k8s常用命令 ​


    生命周期管理

    1. 创建

    1. 创建资源

    • kubectl run

      • 创建并运行一个或多个容器镜像。
      • *创建一个deployment或job来管理容器*

    语法kubectl run NAME --image=image [--env="key=value"] [--port=port] [--replicas=replicas] [--dry-run=bool] [--overrides=inline-json] [--command] -- [COMMAND] [args...]

    kubectl run nginx --replicas=3 --labels="app-nginx-example" --image=nginx:1.10 --port=80
    
    • kubectl create
    1. kubectl create deployment nginx --image=nginx
    2. # 根据yaml配置文件创建资源对象
    3. kubectl create -f zookeeper.yaml
    4. # 根据yaml配置文件一次创建Service和RC
    5. kubectl create -f my-service.yaml -f my-rc.yaml
    6. # 创建名称空间
    7. kubectl create namespace bigdata
    • kubectl apply
    1. kubectl apply deployment nginx --image=nginx
    2. # 使用yaml文件创建资源
    3. kubectl apply -f zookeeper.yaml

    2. 标签操作

    • 查询标签
    kubectl get nodes --show-labels
    
    • 添加****标签
    1. # 为指定节点添加标签
    2. kubectl label nodes nodeName labelName=value
    3. # 为指定Pod添加标签
    4. kubectl label pod podName -n nsName labelName=value
    • 修改****标签
    1. # 修改节点标签值
    2. kubectl label nodes nodeName
    3. # 修改Pod标签值(需要overwrite参数)
    4. kubectl label pod podName -n nsName labelName=value --overwrite
    • 删除****标签
    1. # 为指定节点删除标签
    2. kubectl label nodes nodeName labelName-
    3. # 删除Pod标签
    4. kubectl label pod podName -n nsName labelName-

    2. 查看

    1. # 查看集群状态
    2. kubectl get cs
    3. # 查看Pod
    4. kubectl get pods
    5. kubectl get pod
    6. kubectl get po
    7. # 查看指定名称Pod
    8. kubectl get pod mynginx
    9. kubectl get pod/mynginx
    10. # 同时查看多个资源
    11. kubectl get deploy,pods
    12. # 查看Pod端口信息
    13. kubectl get pod,svc
    14. # 特定命名空间资源查看
    15. kubectl get pods -n bigdata
    16. # 查看所有命名空间下的pod信息
    17. kubectl get pod --all-namespaces
    18. kubectl get pods --A
    19. # 获取Pod运行在哪个节点上的信息
    20. kubectl get pod -o wide
    21. # 显示Pod标签信息
    22. kubectl get pods --show-labels
    23. # 查看特定标签的Pod
    24. kubectl get pods -l app=example
    25. # 以JSON格式显示Pod的详细信息
    26. kubectl get pod podName -o json
    27. # 查看RS
    28. kubectl get replicasets -o wide
    29. # 查看Deployments
    30. kubectl get deployments -o wide
    31. # 查看ip和端口,也叫端点
    32. kubectl get ep
    33. # 查看事件
    34. kubectl get ev
    • yaml方式
    1. # 以yaml格式显示Pod的详细信息
    2. kubectl get pod podName -o yaml
    3. kubectl get pod -f pod.yaml
    4. kubectl get pod -f pod1.yaml -f pod2.yaml
    5. # 用get生成yaml文件
    6. kubectl get deploy/nginx --export -o yaml > my-deploy2.yaml
    7. # 查看资源子节点详情
    8. kubectl explain pods.spec.containers
    9. # 用run命令生成yaml文件,dry-run尝试运行,但不会生成,可用于检查语法错误
    10. kubectl run nginx --image=nginx:latest --port=80 --replicas=3 --dry-run
    11. # 尝试运行,并生成yaml文件
    12. kubectl run nginx --image=nginx:latest --port=80 --replicas=3 --dry-run -o yaml > my-deploy.yaml

    3. 发布

    1. # 暴露端口
    2. kubectl expose deployment nginx --port=80 --type=NodePort
    3. kubectl expose deployment nginx --port=80 --type=NodePort --target-port=80 --name=nginx-service
    4. # 输出为yaml文件(推荐)
    5. kubectl expose deployment nginx --port=80 --type=NodePort --target-port=80 --name=web1 -o yaml > web1.yaml
    6. kub
  • 相关阅读:
    【Linux操作系统】--多线程(二)--条件变量
    JNI查漏补缺
    软考高级信息系统项目管理师系列论文三:论信息系统项目的进度管理
    智能文件改名:高效复制并删除冗余,简化文件管理“
    systemverilog学习 ---- 进程
    查看docker中的mysql版本,查看docker中容器,查看mysql版本
    2021最新中高级Java面试题目,Java面试题汇总
    客户流失场景预测,看这两大“明星”算法模型如何实现
    MindManager21简体中文永久版思维导图
    redis哨兵机制
  • 原文地址:https://blog.csdn.net/xy8310292/article/details/126927739