10分钟掌握Kubernetes核心操作:kubectl命令速查指南
10分钟掌握Kubernetes核心操作:kubectl命令速查指南
【免费下载链接】cheat-sheetsThis is my personal knowledge-base. Here you'll find code-snippets, technical documentation, and command reference for various tools, and technologies.项目地址: https://gitcode.com/gh_mirrors/ch/cheat-sheets
Kubernetes(简称K8s)作为容器编排领域的事实标准,已成为云原生技术栈的核心组件。而kubectl作为Kubernetes的命令行工具,是管理集群、部署应用和排查问题的必备技能。本文将通过精选自cheat-sheets项目的kubectl命令速查表,帮助你快速掌握日常操作的关键命令,提升Kubernetes管理效率。
一、环境配置与上下文管理 ⚙️
kubectl的高效使用始于正确的环境配置。通过kubeconfig文件,你可以轻松切换不同集群和命名空间:
| 命令 | 功能描述 |
|---|---|
kubectl config view | 查看当前kubeconfig配置 |
kubectl config get-contexts | 列出所有可用集群上下文 |
kubectl config use-context <context> | 切换到指定集群上下文 |
kubectl config set-context <context> --namespace=<ns> | 为上下文设置默认命名空间 |
提示:使用
kubectl config current-context可随时查看当前操作的集群环境,避免在多集群管理时操作错误。
二、集群资源监控 👀
实时掌握集群状态是运维工作的基础,这些命令帮助你快速获取核心资源信息:
| 命令 | 功能描述 |
|---|---|
kubectl cluster-info | 显示集群控制平面和服务地址 |
kubectl get nodes | 列出所有节点及其状态 |
kubectl get pods -A | 查看所有命名空间的Pod运行情况 |
kubectl get services | 显示服务暴露的端口和访问地址 |
kubectl top pod | 监控Pod资源使用情况 |
三、Pod管理实战 🚢
Pod作为Kubernetes的最小部署单元,其生命周期管理是日常操作的重点:
| 命令 | 功能描述 |
|---|---|
kubectl run <name> --image=<image> | 快速创建测试Pod |
kubectl logs <pod-name> | 获取Pod日志(添加-f参数实时跟踪) |
kubectl exec -it <pod-name> -- /bin/bash | 进入Pod容器终端 |
kubectl describe pod <pod-name> | 查看Pod详细状态和事件 |
kubectl cp <pod>:<source> <local-path> | 在Pod与本地间复制文件 |
四、 Deployment编排管理 🚀
Deployment控制器提供了声明式的应用管理能力,这些命令覆盖了完整的部署生命周期:
| 命令 | 功能描述 |
|---|---|
kubectl create deployment <name> --image=<image> | 创建基础部署 |
kubectl scale deployment <name> --replicas=3 | 调整副本数量实现水平扩展 |
kubectl rollout status deployment/<name> | 查看部署滚动更新进度 |
kubectl rollout history deployment/<name> | 查看部署历史版本 |
kubectl rollout undo deployment/<name> | 回滚到上一版本部署 |
五、服务暴露与访问 🌐
将应用正确暴露是实现外部访问的关键步骤:
| 命令 | 功能描述 |
|---|---|
kubectl expose pod <name> --port=80 --target-port=8080 | 将Pod暴露为Service |
kubectl get ingress | 查看Ingress规则配置 |
kubectl describe service <name> | 检查服务端点和转发规则 |
六、高效运维技巧 💡
掌握这些进阶技巧能显著提升工作效率:
- 资源筛选:使用
-l参数按标签筛选资源,如kubectl get pods -l app=nginx - 输出格式化:通过
-o参数获取JSON/CSV格式输出,如kubectl get pods -o json - 命名空间隔离:使用
--namespace参数或配置默认命名空间,避免资源混乱 - 配置导出:通过
kubectl get <resource> <name> -o yaml > file.yaml备份资源配置
七、学习资源推荐 📚
- 完整命令参考:tools/kubectl.md
- Kubernetes官方文档:Kubernetes文档
- 集群管理实践:infra/目录下的相关配置示例
通过系统学习和频繁实践这些kubectl命令,你将能够轻松应对Kubernetes日常管理任务。建议将本文收藏为速查手册,在实际操作中逐步熟悉各命令的使用场景和参数组合,最终形成肌肉记忆,成为高效的Kubernetes管理员。
【免费下载链接】cheat-sheetsThis is my personal knowledge-base. Here you'll find code-snippets, technical documentation, and command reference for various tools, and technologies.项目地址: https://gitcode.com/gh_mirrors/ch/cheat-sheets
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
