kubernetes常用命令 k8s指令大全

以下是 Kubernetes 常用命令的整理,涵盖集群管理、资源操作、调试排错等场景,帮助您快速掌握核心操作:

一、集群管理

命令 说明
kubectl cluster-info 查看集群信息
kubectl config get-contexts 列出所有上下文(集群配置)
kubectl config use-context 切换集群或命名空间
kubectl get componentstatuses 检查集群组件状态(如 scheduler、controller-manager)

二、资源管理

通用操作
命令 说明
kubectl get 查看资源列表(如 pods, deployments, services
kubectl describe 查看资源详细信息(事件、状态等)
kubectl create -f 通过 YAML 文件创建资源
kubectl apply -f 应用/更新资源配置
kubectl delete -f 删除 YAML 中定义的资源
kubectl delete 删除指定资源(如 pod/my-pod
kubectl edit 直接编辑资源配置(实时生效)
常用资源别名
  • po: Pods
  • deploy: Deployments
  • svc: Services
  • ns: Namespaces
  • pv: PersistentVolumes
  • pvc: PersistentVolumeClaims

三、部署与扩缩容

命令 说明
kubectl scale deploy/ --replicas=3 扩展 Deployment 的副本数
kubectl rollout status deploy/ 查看部署状态(如滚动更新进度)
kubectl rollout history deploy/ 查看部署历史版本
kubectl rollout undo deploy/ 回滚到上一个版本
kubectl set image deploy/ = 更新容器镜像(触发滚动更新)

四、调试与日志

命令 说明
kubectl logs 查看 Pod 日志
kubectl logs -f 实时跟踪日志(类似 tail -f
kubectl exec -it -- /bin/sh 进入 Pod 的 Shell 环境
kubectl port-forward 8080:80 将 Pod 端口转发到本地(如访问服务)
kubectl top pod 查看 Pod 资源使用(需安装 metrics-server)
kubectl get events --sort-by=.metadata.creationTimestamp 查看集群事件(按时间排序)

五、网络与服务

命令 说明
kubectl expose deploy/ --port=80 --type=NodePort 创建 Service 暴露 Deployment
kubectl get endpoints 查看 Service 关联的 Pod IP
kubectl get ingress 查看 Ingress 配置

六、配置与存储

命令 说明
kubectl get configmaps 查看所有 ConfigMap
kubectl get secrets 查看所有 Secret
kubectl create secret generic --from-file== 创建 Secret

七、高级操作

命令 说明
kubectl patch -p '{"spec": {"replicas": 2}}' 部分更新资源配置
kubectl label key=value 添加/修改标签
kubectl annotate key=value 添加/修改注解
kubectl get -o yaml > file.yaml 导出资源配置到 YAML 文件
kubectl delete pod --force --grace-period=0 强制删除 Pod(慎用)

八、插件与工具

命令 说明
kubectl krew install 使用 Krew 安装插件(如 ctx, ns
kubectl helm install 通过 Helm 安装应用(需安装 Helm)

常用示例场景

  1. 快速创建 Pod

    kubectl run nginx --image=nginx --port=80
    
  2. 查看所有命名空间的 Pod

    kubectl get pods -A
    
  3. 查看特定标签的 Pod

    kubectl get pods -l app=web
    
  4. 调试启动失败的 Pod

    kubectl describe pod/  # 查看错误原因
    kubectl logs  -c   # 查看指定容器日志
    

你可能感兴趣的:(Kubernetes,kubernetes,linux,容器)