kubernetes系列:kubectl常用命令

499 阅读2分钟

「这是我参与2022首次更文挑战的第3天,活动详情查看:2022首次更文挑战」。

查看节点信息

  • kubectl get nodes
  • kubectl get nodes -o wide
  • nodes :节点
  • O wide :表示打印更多的信息出来

查看命名空间

  • kubectl get ns
  • ns :命名空间

查看默认命名空间的pods

  • kubectl get pods -o wide
  • 打印pods的信息

查看指定名称空间的pods

  • kubectl get pods -n kube-system
  • 指定打印命名空间为kube-system的pods有哪些

查看所有名称空间的pods

  • kubectl get pods --all-namespaces
  • 打印所有命名空间下的pods

监控pod进度

  • watch kubectl get pod -n kube-system -o wide
  • 监控命名空间kube-system下的pod进度

部署一个tomcat

  • kubectl create deployment tomcat6 --image=tomcat:6.0.53-jre8
  • 部署一个tomcat:6.0.53-jre8类型的镜像,名称为:tomcat6

暴露nginx访问

kubectl expose deployment tomcat6 --port=80 --target-port=8080 --type=NodePort

  • 在master上执行
  • --type=NodePort :为service随机分配端口映射到pod的80,pod的80再映射到容器tomcat的8080

查看服务

  • kubectl get svc -o wide
  • svc:查看服务,为缩写

查看所有的资源:

  • kubectl get all

  • kubectl get all -o wide

  • 查看所有资源情况

查看部署

  • kubectl get deployment
  • 查看所有部署情况

查看pod运行日志

  • kubectl describe pods -n ingress-nginx nginx-ingress-controller-bdhw2
  • 查看命名空间ingress-nginx下的pod名为nginx-ingress-controller-bdhw2信息

扩容到3个服务:

  • kubectl scale --replicas=3 deployment tomcat6
  • 把部署扩容到3份

删除部署

  • kubectl delete deployment.apps/tomcat6
  • 删除deployment部署信息会自动删除replicaset和pod,只留下service

删除服务

  • kubectl delete service/tomcat6
  • 删除service/tomcat6这个服务

只生成部署文件yml

  • kubectl create deployment tomcat6 --image=tomcat:6.0.53-jre8 --dry-run -o yaml > tomcat6.yml
  • 创建一个镜像为tomcat:6.0.53-jre8的部署文件

只生成暴露文件(service文件)yml

  • kubectl expose deployment tomcat6 --port=80 --target-port=8080 --type=NodePort --dry-run -o yaml > tomcat6--expose.yml
  • 使用expose创建一个暴露的service。

查看某个pod的具体定义信息以yaml格式输出

  • kubectl get pods tomcat6-5f7ccf4cb9-gkqjr -o yaml
  • 输出某个pods为yaml文件

应用部署文件

  • kubectl apply -f tomcat6.yaml
  • 运行该文件

写在最后

  • 👍🏻:有收获的,点赞鼓励!
  • ❤️:收藏文章,方便回看!
  • 💬:评论交流,互相进步!