SuperAPI AI 工具集

kubectl

部署与运维

查看项目

更新于 10-22 19:40

技能介绍

kubectl 是 Kubernetes 的命令行工具,用于在终端中查看和管理集群资源,并切换认证上下文。本文仅整理资料中给出的命令与参数,未涉及的用法暂未提供。

用途与安装 通过 Homebrew 安装:brew install kubectl,安装后用 kubectl version --client 验证。需要机器可读输出时使用 -o json 或 -o yaml。认证方面,用 kubectl config use-context <context-name> 切换上下文。

资源查看 kubectl get 用于列出资源:pods(当前命名空间)、pods -A(所有命名空间)、pods -o wide(附加信息)、services、deployments、nodes、namespaces、ingress、configmaps、secrets,以及 get all 列出当前命名空间全部资源。kubectl describe 可查看 pod、service、deployment、node 的详细信息。

创建与删除 kubectl apply -f <file.yaml> 应用单文件配置,apply -f <directory>/ 应用目录内全部配置,apply -k <directory>/ 应用 kustomize 配置;create namespace 创建命名空间,create secret generic 配合 --from-literal=key=value 创建 Secret。删除用 kubectl delete 针对 pod、deployment、namespace,或用 delete -f <file.yaml> 删除文件中定义的资源。

日志与调试 kubectl logs 查看 Pod 日志,-f 持续跟踪,-c 指定容器,--tail=100 查看末尾若干行;kubectl exec -it <pod> -- bash 进入容器 shell,exec <pod> -- <command> 在容器内执行命令;port-forward 可将本地端口转发到 Pod 或 svc/<service>。

扩缩容与发布 kubectl scale deployment <name> --replicas=3 调整副本数;rollout status、history、undo、restart 分别用于查看发布状态、历史、回滚与重启 Deployment。

上下文与全局参数 config get-contexts、current-context、use-context 管理上下文,set-context --current --namespace=<ns> 设置当前上下文的默认命名空间。常用全局参数包括 -n <namespace>、-o json/yaml/wide、--dry-run=client 预览、-l <key>=<value> 按标签过滤、-A 或 --all-namespaces 跨命名空间操作。

适用场景与限制 适用于日常集群巡检、部署应用、排查 Pod 日志与网络连通性、扩缩容和版本回滚等终端操作。具体集群版本兼容性、权限要求及更高级用法资料未提供。