• kubenetes v1.5.2 常用命令


    查看版本

    [root@master ~]# kubectl version  

    查看pods (缩写pod、po 只要唯一即可)

    [root@master ~]# kubectl  get pods

    查看pod建立在哪个node上  (node 缩写no 只要唯一即可)

    [root@master ~]# kubectl get pods -o wide 
    
    [root@master ~]# kubectl get pods -o wide --all-namespaces

    查看deployment状态 (deployment 缩写 deploy 只要唯一即可)

    [root@master ~]# kubectl get deployment

    上一条命令出现No resources found.时 用下面这条命令加上--all-namespaces参数,不加就只显示default的namespaces

    [root@master ~]# kubectl get deployment --all-namespaces

    查看服务(service 缩写 svc 只要唯一即可)

    [root@master ~]# kubectl get service
    

      service全部显示也要加--all-namespaces

    [root@master ~]# kubectl get svc --all-namespaces

    describe查看Pod、node等详细信息(一般排错时用) ,要跟上pod的全部名字

    [root@master ~]# kubectl describe pod mysql-2261771434-28hjp
    [root@master ~]# kubectl describe node node1
    

    查看pod里容器的log

    [root@master ~]# kubectl get pod #先查看pod的名字
    [root@master ~]# kubectl log  mysql-2261771434-28hjp #用查到的pod名字去查看

    查看具体的pod错误

    [root@master ~]# kubectl get pods -o wide --all-namespaces
    NAMESPACE     NAME                                           READY     STATUS             RESTARTS   AGE       IP            NODE
    kube-system   kubernetes-dashboard-latest-4008409309-srxl8   0/1       ImagePullBackOff   0          24m       10.255.86.2   node1
    [root@master ~]# kubectl log -f kubernetes-dashboard-latest-4008409309-srxl8 -n kube-system

    查看Log,Attach实时显示消息,log是列出已有的内容。(比Log命令更新详细)

    [root@master ~]# kubectl get pod #先查看容器name
    [root@master ~]# kubectl attach mysql-2261771434-28hjp
    

      

    在pod容器中执行一条命令 

    [root@master ~]# kubectl get pod #先查看容器name
    [root@master ~]# kubectl exec mysql-2261771434-28hjp ls /etc #查看容器的/etc目录
    

    进入Pod的交互模式

    [root@master ~]# kubectl get pod #先查看容器name
    [root@master ~]# kubectl exec -it mysql-2261771434-28hjp /bin/bash  #进入到bash交互模式
    

    从Pod容器内拷入 、拷出文件

    [root@master ~]# kubectl cp mysql-2261771434-28hjp:/tmp/hosts hosts  #将远程hosts文件拷到本地(本地文件名必须要写)
    [root@master ~]# kubectl cp  hosts mysql-2261771434-28hjp:/tmp/  #将本地的hosts文件拷入到容器中

     注意:cp命令需要tar命令支持,否则cp时会报错:error: unexpected EOF,点击查看cp报错解决方法

    (events 缩写ev 只要唯一即可)

    (replicasets 缩写rs 只要唯一即可)

    (replicationcontrollers 缩写 rc 只要唯一即可)

    (namespaces缩写ns  只要唯一即可)

    删除一个名字为nginx3的pods 

    [root@master ~]# kubectl delete deployment nginx3

    删除一个名为node31的node 

    [root@master ~]# kubectl delete node node31  

    删除一个非默认的deployment ,删除时要指出name 和-n namespace

    [root@master ~]# kubectl get deployment --all-namespaces
        NAMESPACE     NAME                          DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
        kube-system   kubernetes-dashboard-latest   1         1         1            0           45m
    [root@master ~]# kubectl delete deployment  kubernetes-dashboard-latest -n kube-system  
        deployment "kubernetes-dashboard-latest" deleted
    

    删除一个已经存在的service服务

    [root@master ~]# kubectl delete -f dashboard-service.yaml
    

      

    新创建一个pod:

    [root@master ~]# kubectl run nginx3 --image=docker.io/nginx --replicas=1 --port=9003 
    

     注意 nginx3和port,再创建其他Pod时不能重复

         --image 指定创建的镜像

         --replicas 指定此pod里的容器数量

         --port pod对外通信端口

     

    新创建yaml配置文件启动:

    [root@master ~]# kubectl create -f mysql-deployment.yaml 
    

    新创建yaml批量文件启动:文件放一个目录下,直接指定该目录

    [root@master ~]# kubectl create -f yamls/
    

      

     

  • 相关阅读:
    算法题
    AIO和NIO的理解
    Redis面试考点
    对MVVM的理解
    Vuex状态管理模式
    vue 的computed 和 watch 两者的区别
    vue之组件通信
    vue生命周期钩子函数
    angularjs 运行时报错ERROR in node_modules/rxjs/internal/types.d.ts(81,44): error TS1005: ';' expected. node_modules/rxjs/internal/types.d.ts(81,74): error TS1005: ';' expected. node_modules/rxjs/internal/t
    浅入不深出--vuex的简单使用
  • 原文地址:https://www.cnblogs.com/wutou/p/14305360.html
Copyright © 2020-2023  润新知