K8S集群管理常用命令

创建资源

  • 通过资源文件创建资源
bash 复制代码
kubectl create -f <资源文件>
  • 通过资源文件(目录)创建或更新资源,文件后缀为".yaml 、.yml、.json"
bash 复制代码
kubectl apply -f <资源文件>
kubectl apply -f <文件目录>
  • 创建一个pod
bash 复制代码
kubectl run <pod名称> --image=<镜像名称或镜像地址:tag>
  • 创建一个deployment
bash 复制代码
kubectl create deployment <名称> --image=<镜像名称或镜像地址:tag> --replicas=<pod副本数>
  • 为deployment创建service
bash 复制代码
kubectl expose deployment <deployment名称> --port=<服务端口> --target-port=<容器端口> --type=<服务类型> --name=<service 名称>
  • 为指定pod创建service
bash 复制代码
kubectl expose pod <pod名称> --port=<服务端口> --target-port=<容器端口> --type=<服务类型> --name=<service 名称>
  • 创建一个Service
bash 复制代码
kubectl create service <服务类型> <名称> --tcp=<服务端口>:<容器端口>

查看资源

  • 查看当前命名空间中所有资源对象
bash 复制代码
kubectl get all
  • 查看所有命名空间中的pod对象
bash 复制代码
kubectl get pods -A
  • 查看默认命名空间中的pod对象
bash 复制代码
kubectl get pods (-n default)
  • 查看指定命名空间中的pod对象
bash 复制代码
kubectl get pods -n kube-system
  • 查看多个资源类型的对象列表
bash 复制代码
kubectl get pods,deployment,services
  • 查看指定pod对象的详细信息
bash 复制代码
kubectl describe pod <pod名称>
  • 查看指定deployment对象的详细信息
bash 复制代码
kubectl describe deployment <deployment名称>
  • 查看指定service对象的详细信息
bash 复制代码
kubectl describe service <service名称>
  • 查看资源对象标签
bash 复制代码
kubectl get <资源类型> --show-labels
  • 根据标签过滤资源对象
bash 复制代码
kubectl get <资源类型> -l <标签键>=<标签值> 

更新修改资源

  • 更新deployment镜像地址
bash 复制代码
kubectl set image deployment <名称> <容器名称>=<镜像地址> 
  • 增加或减少deployment的副本数
bash 复制代码
kubectl scale deployment <名称> --replicas=<pod副本数>
  • 添加或修改Service标签选择器,多个以逗号分割
bash 复制代码
kubectl set selector service <名称> <标签键>=<标签值> 
  • 添加或修改资源的标签
bash 复制代码
kubectl label <资源类型> <资源名称> <标签键>=<标签值> 

删除资源

  • 通过资源文件删除资源
bash 复制代码
kubectl delete -f <资源文件>
  • 删除deployment对象,多个名称以逗号分割
bash 复制代码
kubectl delete deployment <名称>
  • 删除service对象,多个名称以逗号分割
bash 复制代码
kubectl delete service <名称>
  • 删除deployment,service对象
bash 复制代码
kubectl delete deployment/<名称> service/<名称>
  • 删除pod对象
bash 复制代码
kubectl delete pod <名称>
  • 删除默认(default)命名空间下所有pod对象
bash 复制代码
kubectl delete pod --all (-n default)
  • 删除默认(default)命名空间下所有deployment对象
bash 复制代码
kubectl delete deployment --all (-n default)
相关推荐
q***58193 分钟前
基础篇:Linux安装redis教程(详细)
linux·运维·redis
小二·5 分钟前
Linux 高频面试题(50道 + 详细答案)
linux·运维·服务器
FLPGYH35 分钟前
BMC 深度解析:服务器带外管理的核心技术架构与实践
linux·服务器·c++·驱动开发
史丹利复合田1 小时前
在openEuler上安装Atune并成功运行
linux
q***44921 小时前
如何在 Ubuntu 22.04 上安装 MySQL
linux·mysql·ubuntu
夏鹏今天学习了吗1 小时前
【LeetCode热题100(69/100)】字符串解码
linux·算法·leetcode
清静诗意2 小时前
Ubuntu Redis 安装与配置指南
linux·redis·ubuntu
HalvmånEver2 小时前
Linux:基础开发工具(六)
linux·运维·服务器
百***48072 小时前
Linux下MySQL的简单使用
linux·mysql·adb
不会写代码的ys3 小时前
仿RabbitMQ实现消息队列(三)--muduo介绍与使用
linux·分布式·rabbitmq