K3S 基础命令集Pod查看 Pod查看所有Pod查看详情查看Pod 日志查看 IP查看yaml编辑配置删除Pod强制删除进入容器PVC查看所有PVC查看详情查看PVC YAML创建 PVC编辑 PVC删除 PVCService查看 Service查看 Service 详情查看 Service YAML创建 Service编辑 Service删除 Servicedepoly查看 Deployment查看 Deployment 详情查看 Deployment YAML创建 Deployment编辑 Deployment删除 DeploymentIngress查看Ingress查看Ingress 详情查看 Ingress YAML创建 Ingress编辑 Ingress删除 Ingressimages查看所有镜像其他命令核心工作负载资源网络与服务资源存储资源配置与密钥资源身份与权限资源RBAC监控与扩展资源滚动更新与回滚Pod查看 Podkubectl get pods指定namespacekubectl get pods -n namespace查看所有Podkubectl get pod -A查看详情查看某个 Pod 的详细状态、事件和配置信息是排查启动失败等问题的常用命令。kubectl describe pod pod-namekubectl describe pod test-extractor2-6b755d8c56-zrtbx -n zemu-app查看Pod 日志kubectl logs test-extractor2 -n namespace查看 IPkubectl get pod -o wide -n zemu-ops该命令用于查看指定命名空间namespace下所有 Pod 的详细信息。相比普通的kubectl get pod加上-o wide参数后输出结果会额外展示每个 Pod 所在的节点NODE、Pod 的 IP 地址IP等关键信息便于快速定位 Pod 的运行位置和网络地址。其中各参数含义如下kubectl get pod查询 Pod 资源的基础命令-o wide以更宽的格式输出额外显示 Pod IP 和所在节点-n zemu-ops指定命名空间为zemu-ops仅查询该命名空间下的 Pod。执行后输出结果大致如下NAME READY STATUS RESTARTS AGE IP NODE nginx-7c7d9f6b4f-abc121/1 Running05d10.244.1.23 k8s-node-01其中IP列即为 Pod 的集群内网 IP 地址NODE列则标明该 Pod 被调度到了哪台工作节点上。若需进一步查看某个 Pod 的详细描述可配合kubectl describe pod pod-name -n zemu-ops使用。查看yaml以 YAML 格式输出 Pod 的完整定义用于查看或备份配置。kubectl get pod test-extractor2-6b755d8c56-zrtbx -n zemu-app -o yaml编辑配置直接编辑正在运行的 Pod 的配置。注意直接修改的 Pod 配置在 Pod 重建后可能丢失建议修改其控制器如 Deployment的配置。kubectl edit pod test-extractor2-6b755d8c56-zrtbx -n zemu-app与 vim 编辑类似。 wq 保存、 q 退出删除Pod删除 Pod。如果 Pod 受 Deployment 等控制器管理控制器会自动重建一个新的 Pod。kubectl delete pod test-extractor2-6b755d8c56-s68zs -n zemu-app强制删除当 Pod 卡在 Terminating 状态如“幽灵 Pod”且无法正常删除时可尝试强制删除。kubectl delete pod pod-name --force --grace-period0kubectl delete pod test-extractor3-867c67f76f-kfdlt -n zemu-app --force --grace-period0进入容器进入 Pod 内的容器终端用于调试。如果容器内是 sh则将 /bin/bash 替换为 /bin/shkubectl exec -it test-extractor2-6b755d8c56-s68zs -n zemu-app -- /bin/bash不进入容器执行命令kubectl exec -it test-extractor2-6b755d8c56-s68zs -n zemu-app -- lsPVC查看所有PVC查看当前命名空间下的 PVC加 -n 指定命名空间-A 查看所有kubectl get pvc -A查看详情查看 PVC 的详细状态、事件和绑定情况kubectl describe pvc />查看PVC YAML以 YAML 格式查看 PVC 完整定义kubectl get pvc />创建 PVC通过 YAML 文件创建 PVCkubectl apply -f pvc.yaml编辑 PVC在线编辑 PVC 配置部分字段不可修改kubectl edit pvc pvc-name删除 PVC删除 PVC注意会同时删除绑定的 PV 数据除非 PV 的回收策略是 Retainkubectl delete pvc pvc-nameService查看 Service查看当前命名空间下的 Service加 -n 指定命名空间-A 查看所有kubectl get svc -A查看 Service 详情查看 Service 的详细配置、Endpoints 和事件kubectl describe svc svc-namekubectl describe svc traefik -n zemu-ingress查看 Service YAML以 YAML 格式查看 Service 完整定义kubectl get svc svc-name -o yamlkubectl get svc traefik -n zemu-ingress -o yaml创建 Service通过 YAML 文件创建 Servicekubectl apply -f svc.yaml编辑 Service在线编辑 Service 配置kubectl edit svc svc-name删除 Servicekubectl delete svc svc-namedepoly查看 Deployment查看当前命名空间下的 Deployment加 -n 指定命名空间-A 查看所有kubectl get deploy -A查看 Deployment 详情查看 Deployment 的详细配置、事件和状态kubectl describe deploy deploy-namekubectl describe deploy test-extractor3 -n zemu-app查看 Deployment YAML以 YAML 格式查看 Deployment 完整定义kubectl get deploy deploy-name -o yamlkubectl get deploy test-extractor3 -n zemu-app -o yaml创建 Deployment通过 YAML 文件创建或更新 Deploymentkubectl apply -f deploy.yaml编辑 Deployment在线编辑 Deployment 配置kubectl edit deploy deploy-name删除 Deployment删除 Deployment会同时删除其管理的 Podkubectl delete deploy deploy-nameIngress查看Ingresskubectl get ing -A查看Ingress 详情查看 Ingress 的详细配置、规则和事件kubectl describe ing ingress-namekubectl describe ing zemu-web -n zemu-app查看 Ingress YAML以 YAML 格式查看 Ingress 完整定义kubectl get ing ingress-name -o yamlkubectl get ing zemu-web -n zemu-app -o yaml创建 Ingresskubectl apply -f ingress.yaml编辑 Ingresskubectl edit ing ingress-name删除 Ingresskubectl delete ing ingress-nameimages查看所有镜像sudo crictl images过滤sudo crictl images | grep my-app功能命令说明拉取sudo crictl pull nginx:latest从仓库拉取镜像到本地删除sudo crictl rmi IMAGE_ID删除本地的一个镜像查看详情sudo crictl inspecti IMAGE_ID获取镜像的详细元数据信息其他命令核心工作负载资源资源简称完整名称用途示例命令deployDeployment管理无状态应用的副本数、滚动更新kubectl get deploystsStatefulSet管理有状态应用如数据库保证稳定网络标识和存储kubectl get stsdsDaemonSet在每个节点上运行一个 Pod如日志采集、监控kubectl get ds -AjobJob执行一次性任务kubectl get jobcronjobCronJob定时执行任务kubectl get cronjobrsReplicaSet维护 Pod 副本数量通常由 Deployment 自动管理kubectl get rsrcReplicationController旧版副本控制器基本已被 Deployment 替代kubectl get rc网络与服务资源资源简称完整名称用途示例命令svcService提供稳定的网络访问入口和负载均衡kubectl get svcepEndpointsService 关联的后端 Pod IP 列表kubectl get epingIngress管理外部访问 HTTP/HTTPS 路由规则kubectl get ingnetpolNetworkPolicy定义 Pod 之间的网络访问策略kubectl get netpol存储资源资源简称完整名称用途示例命令pvPersistentVolume集群级别的存储资源独立于命名空间kubectl get pvpvcPersistentVolumeClaim用户对存储的申请绑定到 PVkubectl get pvcscStorageClass定义存储的类别如 fast、slowkubectl get scvolumeattachmentVolumeAttachment将存储卷挂载到节点kubectl get volumeattachment配置与密钥资源资源简称完整名称用途示例命令cmConfigMap存储非敏感的配置数据环境变量、配置文件kubectl get cmsecretSecret存储敏感数据密码、Token、证书kubectl get secret身份与权限资源RBAC资源简称完整名称用途示例命令saServiceAccount为 Pod 提供身份认证kubectl get saroleRole命名空间级别的权限定义kubectl get role -AclusterroleClusterRole集群级别的权限定义kubectl get clusterrolerolebindingRoleBinding将 Role 绑定到用户/ServiceAccountkubectl get rolebinding -AclusterrolebindingClusterRoleBinding将 ClusterRole 绑定到用户/ServiceAccountkubectl get clusterrolebinding监控与扩展资源资源简称完整名称用途示例命令hpaHorizontalPodAutoscaler根据 CPU/内存自动扩缩 Pod 数量kubectl get hpavpaVerticalPodAutoscaler根据使用情况自动调整 Pod 的资源请求/限制kubectl get vpapdbPodDisruptionBudget保证 Pod 驱逐时最少可用副本数kubectl get pdbeventsEvent查看集群事件排查问题kubectl get events -A --sort-by‘.lastTimestamp’nodesNode查看集群节点状态kubectl get nodesnsNamespace查看命名空间kubectl get ns滚动更新与回滚资源简称完整名称用途更新镜像kubectl set image deploy/deploy-name container-namenew-image更新 Deployment 中容器的镜像版本查看更新状态kubectl rollout status deploy/deploy-name查看滚动更新的进度和状态查看更新历史kubectl rollout history deploy/deploy-name查看 Deployment 的所有修订版本回滚到上一版本kubectl rollout undo deploy/deploy-name回滚到上一个版本回滚到指定版本kubectl rollout undo deploy/deploy-name --to-revisionrevision-number回滚到指定的历史版本重启Deployment kubectl rollout restart deploy/deploy-name重启所有 Pod不修改镜像用于重新加载配置暂停更新kubectl rollout pause deploy/deploy-name暂停滚动更新用于金丝雀发布恢复更新kubectl rollout resume deploy/deploy-name恢复暂停的滚动更新
