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)
相关推荐
mzhan01719 小时前
[Linux] vdso 32bit vs 64bit
linux·运维·服务器
旖旎夜光19 小时前
Linux(13)(上)
linux·网络
忧郁的橙子.19 小时前
26期_01_Pyhton linux基本命令
linux·运维·服务器
郝学胜-神的一滴19 小时前
深入解析Linux网络编程之bind函数:从基础到实践的艺术
linux·服务器·网络·c++·websocket·程序人生
西京刀客19 小时前
macOS 打出来的 tar 包,Linux 常见告警(tar 包里带了 macOS 的扩展属性(xattr))
linux·运维·macos
mango_mangojuice19 小时前
Linux学习笔记(角色,权限管理)1.21
linux·笔记·学习
遇见火星20 小时前
Linux综合性能监控工具dstat命令详解
linux·服务器·php·dstat
咕噜咕噜啦啦21 小时前
ROS入门
linux·vscode·python
杭州杭州杭州21 小时前
Docker
运维·docker·容器
Yana.nice21 小时前
证书格式的适用场景与核心对比
java·linux