kubernetes常用命令使用方法

管理命名空间资源

查找命名空间

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

 文件内容就是创建资源的内容。

原文地址:https://www.cnblogs.com/yyee/p/13258419.html