kubectl 常用命令
- 1.基础命令
- 2.部署命令
- 3.集群管理命令
- 4.故障诊断与调试命令
- 5.高级命令
- 6.设置命令
- 7.其他命令
kubectl
是 Kubernetes 提供的命令行管理工具。通过使用 kubectl
,可以管理和操作 Kubernetes。
1.基础命令
命令 | |
---|---|
create | 通过文件名或标准输入创建 Kubernetes 的资源 |
expose | 将 Kubernetes 的资源展露为一个服务 |
run | 在集群中运行一个特定的镜像 |
set | 修改对象的特定功能 |
explain | 给资源添加文档说明 |
get | 获取资源信息 |
edit | 编辑资源的属性 |
delete | 通过文件名、标准输入、资源名称或标签选择器来删除资源 |
✅ 显示 kube-system
命名空间中的 Pod 信息。
Kubectl get pod -o wide -n kube-system
✅ 使用镜像 nginx:1.14
创建一个名为 nginx
的 Deployment 资源。该资源有 3 个副本,并且暴露资源的 80 端口。
kubectl run nginx --replicas=3 --image=nginx:1.14 --port=80
✅ 为名为 nginx
的 Deployment 资源创建一个 NodePort
类型的服务。
kubectl expose deployment nginx --port=80 --type=NodePort --target-port=80 --name=nginx-service
✅ 获取 default
命名空间中的 pod
、service
和 deployment
。
kubectl get pod,service,deployment
✅ 使用镜像 nginx:1.15
更新名为 nginx
的 Deployment 资源。
kubectl set image deployment/nginx nginx=nginx:1.15
✅ 删除名为 nginx
的 Deployment 资源。
kubectl delete deployment/nginx
✅ 删除名为 nginx
的 Service 资源。
kubectl delete svc/nginx-service
2.部署命令
命令 | |
---|---|
rollout | 管理资源的部署状态 |
scale | 对资源进行扩容/缩容 |
autoscale | 创建一个能够自动扩容或缩容的资源 |
✅ 查看名为 nginx
的 Deployment 资源的历史版本。
kubectl rollout history deployment/nginx
✅ 回滚名为 nginx
的 Deployment 资源到上一个版本。
kubectl rollout undo deployment/nginx
3.集群管理命令
命令 | |
---|---|
certificate | 修改证书的资源 |
cluster-info | 显示集群信息 |
top | 监控集群资源的使用 |
cordon | 将节点标记为不可调度 |
uncordon | 将节点标记为可调度 |
drain | 指定维护期间排除的节点 |
taint | 更新节点上的污点 |
4.故障诊断与调试命令
命令 | |
---|---|
describe | 显示特定资源或资源组的详细信息 |
logs | 显示 Pod 中容器的日志信息 |
attach | 连接到一个运行的容器 |
exec | 在容器中执行命令 |
port-forward | 将本地端口转发到 Pod 中 |
proxy | 在 Kubernetes API Server 上运行一个 Proxy |
cp | 复制文件或目录到容器中 |
auth | 检查授权 |
5.高级命令
命令 | |
---|---|
diff | 对比实时版本和潜在版本 |
apply | 通过文件名或者标准输入对资源应用进行配置 |
patch | 使用补丁修改或更新资源 |
replace | 通过文件名或标准输入替换一个资源 |
convert | 在不同的 API 版本之间转换配置文件 |
kustomize | 从目录或 URL创建 kustomization 对象 |
6.设置命令
命令 | |
---|---|
tabel | 更新资源上的标签 |
annotate | 更新资源上的注释 |
completion | 实现 kubectl 工具的自动补全功能 |
7.其他命令
命令 | |
---|---|
api-resources | 输出集群支持的 API 资源 |
api-versions | 输出集群支持的API 资源的版本 |
config | 修改 kubeconfig 文件 |
plugin | 运行一个命令行插件 |
version | 输出客户端和服务版本信息 |