3.kubectl 常用命令
1.基础使用
- kubectl --help #查看帮助
- kubectl api-versions # 查看API版本
- kubectl cluster-info # 查看集群信息
2.资源的创建和运行
- kubectl run NAME --image=image [params...] # 创建并运行一个指定的镜像
Example:- kubectl run nginx --image=nginx # 创建并运行一个名字为nginx的Pod
- kubectl create RESOURCE # 根据YAML配置文件或者标准输入创建资源
Example:- kubectl create -f nginx.yaml # 根据nginx.yaml配置文件创建资源
- kubectl create -f https://k8s.io/examples/application/deployment.yaml # 根据URL创建资源
- kubectl create -f ./dir # 根据目录下的所有配置文件创建资源
- kubectl apply -f (-k DIRECTORY | -f FILENAME | stdin) # 通过文件名或标准输入配置资源
Example:- kubectl apply -f nginx.yaml # 根据nginx.yaml配置文件创建资源
3.查看资源信息
- kubectl get RESOURCE # 查看集群中某一类型的资源
其中,RESOURCE可以是以下类型:- kubectl get pods / po # 查看Pod
- kubectl get svc # 查看Service
- kubectl get deploy # 查看Deployment
- kubectl get rs # 查看ReplicaSet
- kubectl get cm # 查看ConfigMap
- kubectl get secret # 查看Secret
- kubectl get ing # 查看Ingress
- kubectl get pv # 查看PersistentVolume
- kubectl get pvc # 查看PersistentVolumeClaim
- kubectl get ns # 查看Namespace
- kubectl get node # 查看Node
- kubectl get all # 查看所有资源
- kubectl get pods -o wide # 后面还可以加上 -o wide 参数来查看更多信息
- kubectl describe RESOURCE NAME # 查看某一类型资源的详细信息
Example:- kubectl describe pod nginx # 查看名字为nginx的Pod的详细信息
4.资源的修改、删除和清理
- kubectl label RESOURCE NAME KEY_1=VALUE_1 ... KEY_N=VALUE_N # 更新某个资源的标签
Example:- kubectl label pod nginx app=nginx # 更新名字为nginx的Pod的标签
- kubectl delete RESOURCE NAME # 删除某个资源
- kubectl delete pod nginx # Example: 删除名字为nginx的Pod
- kubectl delete RESOURCE --all # 删除某个资源的所有实例
Example:- kubectl delete pod --all # 删除所有Pod
- kubectl delete -f FILENAME # 根据YAML配置文件删除资源
Example:- kubectl delete -f nginx.yaml # 根据nginx.yaml配置文件删除资源
- kubectl scale --replicas=COUNT RESOURCE NAME # 设置某个资源的副本数
Example:- kubectl scale --replicas=3 deployment/nginx # 设置名字为nginx的Deployment的副本数为3
- kubectl replace -f FILENAME # 根据配置文件或者标准输入替换某个资源
Example:- kubectl replace -f nginx.yaml # 根据nginx.yaml配置文件替换名字为nginx的Deployment
5.调试和交互
- kubectl exec [-it] POD [-c CONTAINER] -- COMMAND [args...] # 进入某个Pod的容器中
Example:- kubectl exec -it nginx -- /bin/bash # 进入名字为nginx的Pod的容器中,并执行/bin/bash命令
- kubectl logs [-f] [-p] [-c CONTAINER] POD [-n NAMESPACE] # 查看某个Pod的日志
Example:- kubectl logs nginx # 查看名字为nginx的Pod的日志
- kubectl port-forward POD [LOCAL_PORT:]REMOTE_PORT [...[LOCAL_PORT_N:]REMOTE_PORT_N] # 将某个Pod的端口转发到本地
Example:- kubectl port-forward nginx 8080:80 # 将名字为nginx的Pod的80端口转发到本地的8080端口
- kubectl attach POD -c CONTAINER # 连接到现有的某个Pod(将某个Pod的标准输入输出转发到本地)
Example:- kubectl attach nginx # 将名字为nginx的Pod的标准输入输出转发到本地
- kubectl run NAME --image=image -- COMMAND [args...] # 运行某个Pod的命令
Example:- kubectl run nginx --image=nginx -- /bin/bash # 运行名字为nginx的Pod
分类:
Kubernetes
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现