zoukankan      html  css  js  c++  java
  • k8s 常用命令总结

    1.使用yaml文件创建Deployment

    kubectl create -f docs/user-guide/nginx-deployment.yaml --record
    # 创建成功后会输出:deployment "nginx-deployment" created
    

    2.创建

    # 通过命令行创建
    kubectl create namespace xxx    # 创建命名空间
    kubectl create -f ./pod.json  --namespace=xxx    # 通过json文件创建pod
    
    
    # 通过文件创建,my-namespace.yaml
    apiVersion: V1
    kind: Namespace
    metadata:
         name: new-namespace
    
    kubectl create -f my-namespace.yaml
    

    3.删除命名空间

    kubectl delete namespace xxx
    # default和kube-system不可删
    

    4.查看命名空间

    kubectl get namespace
    

    5.在指定命名空间创建各种对象

    kubectl create -f https://k8s.io/docs/tasks/administer-cluster/quota-pod.yaml --namespace=xxx  #  创建ResourceQuota对象
    kubectl get resourcequota pod-demo --namespace=xxx --output=yaml     # 查看ResourceQuota对象的详细信息
    kubectl create -f https://k8s.io/docs/tasks/administer-cluster/quota-pod-deployment.yaml --namespace=xxx    # 尝试在命名空间创建Deployment      
    kubectl get deployment pod-quota-demo --namespace=xxx --output=yaml   # 查看Deployment的详细信息
    kubectl get all --namespace    # 列出所有不同的资源对象
    
    

    5.列出所有运行的pod信息

    kubectl get pods --namespace=xxx     # --namespace指定命名空间
    kubectl get pods -o wide     # 列出pod以及运行pod节点信息
    kubectl get -o json pod web-pod-xxx      # 以json格式输出一个pod信息
    kubectl get -f pod.yaml -o json             # 以pod.yaml文件中指定的资源对象和名称输出json格式的Pod信息
    
    

    6. 列出所有replication controllers和service信息

    kubectl get rc,services
    

    7. 列出所有不同的资源对象

    kubectl  get  all
    

    8.创建一个名称为yyy的deployment,运行xxx镜像

    kubectl  create deployment  yyy  --image=xxx
    

    9.创建并运行一个或多个容器镜像

    kubectl run nginx  --image=nginx      # 启动nginx实例
    kubectl  run hazelcast  --image=hazecast  --port=5701   # 启动hazelcast实例,暴露容器端口5701
    kubectl run hazelcast --image=hazelcast --env="DNS_DOMAIN=cluster" --env="POD_NAMESPACE=default"   # 在容器中设置环境变量“DNS_DOMAIN = cluster”和“POD_NAMESPACE = default”
    kubectl run nginx --image=nginx --replicas=5     # 启动nginx实例,设置副本数5
    

    10. 查看节点labels信息

    kubectl get note --show-labels
    

    11. 查看节点详细信息

    kubectl describe node master(节点名)
    

    12. 修复pod问题

    kubectl get deploy shutao -n fst-test  -o yaml > shutao.yaml    # 将pod生成yaml文件,修改故障
    kubectl  apply -f shutao.yaml  # 使用这个命令更新pod
    kubectl  replace -f  shutao.yaml     # 也可以使用这个命令更新
    kubectl  patch pod xxxxx -p '{"metadata":{"labels":{"app":"nginx-3"}}}'    # 在容器运行时,直接对容器进行修改,此命令修改了label参数
    
    

    13. 两种方式查看pod的详细信息

    kubectl get po xxxxx -o yaml -n nnnnn
    
    kubectl describe po xxxxxxx -n nnnnn
    

    14. 使用scale修改副本数

    kubectl scale rc rc-nginx-3    --replicas=4   # 使用scale修改副本数为4, 此命令仅限于非deployment下的pod
    kubectl autoscale rc rc-nginx-3 --min=1 --max=4    # 使用autoscale根据负载自动在制定范围内进行扩容或缩容,此命令为设置副本范围在1~4个之间
    

    15. 使用selector决定了请求会被发送给集群里的哪些 pod


    这里的定义是所有包含「app: k8s-demo」这个标签的 pod。可以使用以下命令查看创建的pod所有的标签
    kubectl describe pods | grep Labels

  • 相关阅读:
    献给初学者:谈谈如何学习Linux操作系统
    Spring MVC 教程,快速入门,深入分析
    缓存、缓存算法和缓存框架简介
    计算机科学中最重要的32个算法
    12岁的少年教你用Python做小游戏
    当你输入一个网址的时候,实际会发生什么?
    java程序员从笨鸟到菜鸟之(七)一—java数据库操作
    java中的类修饰符、成员变量修饰符、方法修饰符。
    Java内存分配全面浅析
    Java知多少(19)访问修饰符(访问控制符)
  • 原文地址:https://www.cnblogs.com/pyweb/p/14592843.html
Copyright © 2011-2022 走看看