Pradumnasaraf/DevOps项目中的Kubernetes常用命令指南
前言
Kubernetes作为当今最流行的容器编排平台,掌握其命令行操作是每个DevOps工程师和云原生开发者的必备技能。本文将基于Pradumnasaraf/DevOps项目中整理的Kubernetes命令集,结合实践经验,为读者提供一份全面且实用的Kubernetes操作指南。
基础环境检查命令
在开始操作Kubernetes集群前,首先需要了解当前环境的基本信息。
版本检查
kubectl version # 显示客户端和服务端版本
kubectl version --output=yaml # 以YAML格式输出详细版本信息
集群配置查看
kubectl config view # 显示当前kubeconfig配置
上下文和命名空间检查
kubectl config get-contexts # 查看可用上下文
kubectl config set-context --current --namespace=<namespace> # 设置默认命名空间
资源管理命令
Pod操作
- 运行Pod
kubectl run <pod-name> --image <image-name> # 直接运行Pod
kubectl run mynginx --image nginx # 示例
- 查看Pod状态
kubectl get pods # 查看所有Pod
kubectl get pods -o wide # 显示更详细信息
kubectl get pods -w # 实时监控Pod变化
kubectl describe pod <pod-name> # 查看Pod详细状态
- Pod交互
kubectl exec -it <pod-name> -- sh # 进入Pod的shell
kubectl logs <pod-name> # 查看Pod日志
- 删除Pod
kubectl delete pod <pod-name> # 删除指定Pod
kubectl delete pods --all # 删除所有Pod
kubectl delete pod --field-selector="status.phase==Failed" # 删除失败状态的Pod
Deployment操作
- 创建Deployment
kubectl create deployment <name> --image <image-name>
kubectl create deployment mynginx --image nginx
- 扩缩容
kubectl scale deployment <deployment-name> --replicas <number>
kubectl scale deployment mynginx --replicas 2
- 编辑Deployment
kubectl edit deployment <deployment-name>
- 删除Deployment
kubectl delete deployment <deployment-name>
命名空间管理
- 查看命名空间
kubectl get namespaces
- 创建命名空间
kubectl create namespace <name>
kubectl create namespace dev # 示例
kubectl create namespace test-name --dry-run=client -oyaml # 生成YAML而不实际创建
- 命名空间内操作
kubectl get all -n <namespace> # 查看特定命名空间内所有资源
kubectl apply -f <config-file> --namespace=<namespace> # 在特定命名空间应用配置
高级资源操作
持久化存储管理
kubectl get pv # 查看PersistentVolume
kubectl get pvc # 查看PersistentVolumeClaim
资源监控
kubectl get all # 查看所有资源
kubectl get replicaset # 查看副本集
kubectl get services # 查看服务
kubectl get nodes # 查看节点
kubectl api-resources # 查看所有API资源
实用技巧
- 多容器Pod操作
kubectl exec -it <pod-name> -c <container-name> -- <command>
kubectl logs <pod-name> -c <container-name>
- YAML生成
kubectl create <resource> <name> --dry-run=client -oyaml
- 跨命名空间操作
kubectl get all -A # 查看所有命名空间的资源
kubectl get pods -A -owide # 查看所有命名空间的Pod详细信息
总结
本文基于Pradumnasaraf/DevOps项目中的Kubernetes命令集,结合实际使用经验,系统性地整理了Kubernetes的常用操作命令。从基础的环境检查到复杂的资源管理,这些命令覆盖了日常Kubernetes运维的大部分场景。建议读者在实际工作中多加练习,逐步掌握这些命令的使用技巧,提升Kubernetes集群的管理效率。
记住,熟练使用kubectl命令是Kubernetes管理的基础,但理解每个命令背后的原理和Kubernetes的工作机制同样重要。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考