Kubectl的常用命令
1. 获取资源信息类:
- 查看集群节点信息:
kubectl get nodes
- 查看所有运行中的Pod:
kubectl get pods
- 查看指定命名空间下的Pod:
kubectl get pods -n <namespace>
- 查看服务列表:
kubectl get services
2. 创建和管理资源类:
- 创建一个Deployment:
kubectl create deployment <deployment-name> --image=<image-name>
- 缩放Deployment的副本数量:
kubectl scale deployment <deployment-name> --replicas=<replica-count>
- 暂停/恢复Deployment的更新:
kubectl rollout pause/resume deployment <deployment-name>
- 删除一个Deployment:
kubectl delete deployment <deployment-name>
3. 更新和回滚资源类:
- 检查Deployment的滚动更新状态:
kubectl rollout status deployment <deployment-name>
- 更新Deployment的镜像版本:
kubectl set image deployment/<deployment-name> <container-name>=<new-image>
- 回滚Deployment到指定版本:
kubectl rollout undo deployment/<deployment-name>
4. 日志和调试类:
- 查看Pod日志:
kubectl logs <pod-name>
- 进入Pod的交互式终端:
kubectl exec -it <pod-name> -- /bin/bash
- 执行Pod中的命令:
kubectl exec <pod-name> -- <command>
5. 命名空间管理类:
- 创建一个命名空间:
kubectl create namespace <namespace-name>
- 删除一个命名空间:
kubectl delete namespace <namespace-name>
6. 配置和信息管理类:
-
查看集群信息:
kubectl cluster-info
-
查看当前上下文:
kubectl config current-context
-
切换上下文:
kubectl config use-context <context-name>
-
查看配置文件内容:
kubectl config view
7. 标签和注解管理类:
-
给资源打标签:
kubectl label <resource-type> <resource-name> <label-key>=<label-value>
-
删除资源的标签:
kubectl label <resource-type> <resource-name> <label-key>-
-
查看资源的注解:
kubectl annotate <resource-type> <resource-name>
-
更新资源的注解:
kubectl annotate <resource-type> <resource-name> <annotation-key>=<annotation-value>
8.密钥和认证管理类:
-
创建一个密钥:
kubectl create secret generic <secret-name> --from-literal=<key>=<value>
-
查看密钥信息:
kubectl get secrets
-
创建一个ServiceAccount:
kubectl create serviceaccount <service-account-name>
-
授权ServiceAccount访问资源:
kubectl create rolebinding <role-binding-name> --clusterrole=<cluster-role> --serviceaccount=<namespace>:<service-account>
9.扩展和插件管理类:
-
安装插件:
kubectl krew install <plugin-name>
-
列出已安装的插件:
kubectl krew list
-
更新插件:
kubectl krew update
-
卸载插件:
kubectl krew uninstall <plugin-name>