Skip to content
Skillv1.0.0

kubectl-basics

kubectl 基础操作与常用命令

by chaterm(0) 0 installs
Free
Sign in to install

Free account. Installing gives you the manifest plus copy-paste snippets.

See reviews

About

Imported from chaterm/terminal-skills (kubernetes/kubectl-basics/SKILL.md). Install upstream with npx skills add chaterm/terminal-skills --skill kubectl-basics. Copyright stays with the author.

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

Use it

Copy one of these into your project. Installing also returns the manifest and these snippets.

yaml
targets:
  - https://api.opensmartroute.ai/api/v1/registry/chaterm-terminal-skills-kubectl-basics/manifest   # or paste the manifest below

Manifest

An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.

chaterm-terminal-skills-kubectl-basics.ocm.jsonjson
{
  "ocm": "1",
  "id": "chaterm-terminal-skills-kubectl-basics",
  "kind": "skill",
  "name": "kubectl-basics",
  "description": "kubectl 基础操作与常用命令",
  "publisher": "chaterm",
  "version": "1.0.0",
  "capabilities": {
    "domains": [
      "general"
    ],
    "tags": [
      "skill-md",
      "kubernetes",
      "kubectl",
      "k8s",
      "container",
      "skills-sh"
    ],
    "languages": [
      "en"
    ]
  },
  "quality_prior": 0.6,
  "examples": [
    "kubectl 基础操作与常用命令"
  ],
  "primary": false,
  "metadata": {
    "source": {
      "provider": "skills.sh",
      "repository": "https://github.com/chaterm/terminal-skills",
      "path": "kubernetes/kubectl-basics/SKILL.md",
      "ref": "HEAD",
      "url": "https://github.com/chaterm/terminal-skills/blob/HEAD/kubernetes/kubectl-basics/SKILL.md",
      "key": "chaterm/terminal-skills/kubernetes/kubectl-basics/SKILL.md"
    }
  },
  "instructions": "# kubectl 基础操作\n\n## 概述\nkubectl 是 Kubernetes 的命令行工具,用于与集群进行交互。本 skill 涵盖日常运维中最常用的命令。\n\n## 集群信息\n\n```bash\n# 集群信息\nkubectl cluster-info\nkubectl version\n\n# 节点信息\nkubectl get nodes\nkubectl describe node <node-name>\n\n# 上下文切换\nkubectl config get-contexts\nkubectl config use-context <context-name>\n```\n\n## 资源查看\n\n### 常用资源\n```bash\n# Pod\nkubectl get pods\nkubectl get pods -o wide\nkubectl get pods -A                    # 所有命名空间\n\n# Deployment\nkubectl get deployments\nkubectl get deploy -o yaml\n\n# Service\nkubectl get services\nkubectl get svc\n\n# 所有资源\nkubectl get all\nkubectl get all -n <namespace>\n```\n\n### 输出格式\n```bash",
  "cost": {
    "context_tokens": 628
  }
}

Fetch it by URL: GET /api/v1/registry/chaterm-terminal-skills-kubectl-basics/manifest?version=1.0.0

Reviews

Star ratings from people who tried it. One review per account; edit yours any time.

No reviews yet. Install it, try it, and be the first to rate it.