mcpField
K
kubectl-basics

kubectl-basics

github.com/chaterm云与 DevOps5956 次安装34 周前更新
代码仓库

关于 kubectl-basics

面向 Kubernetes 日常运维的 kubectl 技能,帮助用户查看集群与资源、修改部署、调试 Pod,并提供常见故障排查命令。

主要功能

  1. 01查看集群和节点信息
  2. 02查看资源及多种输出格式
  3. 03创建、编辑和删除资源
  4. 04调整 Deployment 副本数
  5. 05查看日志并进入容器调试
  6. 06执行滚动更新与回滚

适用场景

  1. 01检查 Pod 状态、事件和日志
  2. 02应用清单创建或删除资源
  3. 03调整 Deployment 副本数
  4. 04发布镜像更新并在需要时回滚

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/chaterm/terminal-skills --skill kubectl-basics

安装后在 Claude Code 中输入/kubectl-basics确认已加载。

详细介绍

来自项目 README

kubectl 基础操作

概述

kubectl 是 Kubernetes 的命令行工具,用于与集群进行交互。本 skill 涵盖日常运维中最常用的命令。

集群信息

# 集群信息
kubectl cluster-info
kubectl version

# 节点信息
kubectl get nodes
kubectl describe node <node-name>

# 上下文切换
kubectl config get-contexts
kubectl config use-context <context-name>

资源查看

常用资源
# Pod
kubectl get pods
kubectl get pods -o wide
kubectl get pods -A                    # 所有命名空间

# Deployment
kubectl get deployments
kubectl get deploy -o yaml

# Service
kubectl get services
kubectl get svc

# 所有资源
kubectl get all
kubectl get all -n <namespace>
输出格式
kubectl get pods -o wide               # 详细信息
kubectl get pods -o yaml               # YAML 格式
kubectl get pods -o json               # JSON 格式
kubectl get pods -o jsonpath='{.items[*].metadata.name}'

资源操作

创建与删除
# 从文件创建
kubectl apply -f manifest.yaml
kubectl create -f manifest.yaml

# 删除资源
kubectl delete -f manifest.yaml
kubectl delete pod <pod-name>
kubectl delete pod <pod-name> --force --grace-period=0
编辑与更新
# 编辑资源
kubectl edit deployment <name>

# 打补丁
kubectl patch deployment <name> -p '{"spec":{"replicas":3}}'

# 扩缩容
kubectl scale deployment <name> --replicas=5

Pod 调试

# 查看日志
kubectl logs <pod-name>
kubectl logs <pod-name> -c <container>
kubectl logs <pod-name> -f              # 实时跟踪
kubectl logs <pod-name> --previous      # 上一个容器

# 进入容器
kubectl exec -it <pod-name> -- /bin/bash
kubectl exec -it <pod-name> -c <container> -- sh

# 端口转发
kubectl port-forward <pod-name> 8080:80
kubectl port-forward svc/<service> 8080:80

常见场景

场景 1:快速排查 Pod 问题
# 1. 查看 Pod 状态
kubectl get pod <name> -o wide

# 2. 查看事件
kubectl describe pod <name> | grep -A 20 Events

# 3. 查看日志
kubectl logs <name> --tail=100
场景 2:滚动更新
# 更新镜像
kubectl set image deployment/<name> container=image:tag

# 查看更新状态
kubectl rollout status deployment/<name>

# 回滚
kubectl rollout undo deployment/<name>
kubectl rollout history deployment/<name>

快捷别名

# 推荐添加到 ~/.bashrc 或 ~/.zshrc
alias k='kubectl'
alias kgp='kubectl get pods'
alias kgs='kubectl get svc'
alias kgd='kubectl get deploy'
alias kd='kubectl describe'
alias kl='kubectl logs'
alias ke='kubectl exec -it'

故障排查

状态可能原因排查命令
Pending资源不足/调度问题kubectl describe pod
CrashLoopBackOff应用崩溃kubectl logs --previous
ImagePullBackOff镜像拉取失败kubectl describe pod
OOMKilled内存超限检查 resources.limits

评论

支持 Markdown