关于k8s最常用的13个命令

超级欧派课程 2024-03-09 00:18:11

这是管理真实生产环境中 Kubernetes 的 13 个最常用的 kubectl 命令,以及解释和常见用例:

✅核心管理

1 kubectl get

列出 Kubernetes 资源。

包括:

→ kubectl get pods(列出 Pod)

→ kubectl get deployments(列出部署)

→ kubectl get services(列出服务)

→ kubectl get all(列出命名空间中的大多数资源)

2 kubectl describe

提供有关资源的详细信息。

包括:

→ kubectl describe pod my-pod

→ kubectl describe node my-node

3 kubectl create

从文件或标准输入创建资源。通常与 YAML 清单文件一起使用:

→ kubectl create -f my-deployment.yaml

4 kubectl apply

根据配置文件创建或更新资源。这是管理生产中更改的更安全方式,因为它会跟踪已应用的更改。

→ kubectl apply -f my-deployment.yaml(应用部署定义)

5 kubectl delete

删除资源。小心使用!例如:

→ kubectl delete pod my-pod

→ kubectl delete service my-service

✅调试和故障排除

6 kubectl logs

从 Pod 内的容器获取日志:

→ kubectl logs my-pod

→ kubectl logs my-pod -c my-container(指定容器)

7 kubectl exec

在容器内执行命令。对于调试非常强大:

→ kubectl exec -it my-pod -- bash(交互式 shell)

8 kubectl port-forward

将本地端口转发到 Pod 上的一个端口。用于访问未直接公开的服务很有用:

→ kubectl port-forward my-pod 8080:80

✅监测和分析

9 kubectl top

显示 Pod 和节点的资源使用情况(CPU/内存):→ kubectl top pod(Pod 资源使用情况)→ kubectl top node(节点资源使用情况)

10 kubectl explain

描述 Kubernetes 资源的字段:

→ kubectl explain pod→ kubectl explain pod.spec(更具体)

✅管理工作负载

11 kubectl rollout

部署的管理,包括更新和回滚:

→ kubectl rollout status deployment/my-deployment→ kubectl rollout undo deployment/my-deployment

12 kubectl scale

调整部署或副本集中的副本数量:

→ kubectl scale deployment/my-deployment --replicas=5

13 kubectl edit

直接在集群上编辑资源的配置。在生产中使用时要小心。

→ kubectl edit deployment my-deployment

重要说明:(此处已添加书籍卡片,请到今日头条客户端查看)

→ 命名空间:大多数命令都可以与 -n <命名空间>一起使用,以针对特定的命名空间

→ 输出格式:使用 -o wide、-o yaml 或 -o json 与 get 和 describe 等命令一起控制输出格式。

0 阅读:0

超级欧派课程

简介:感谢大家的关注