searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

常用k8s命令

2024-11-18 09:21:53
1
0

一些常用的 Kubernetes 命令:

一、资源详细信息查看

  • kubectl describe <资源类型,如:deployments> <资源名称>:查看特定资源的详细信息。
  • kubectl -n <命名空间> describe pod <pod-name>:查看指定命名空间下指定 pod 的详细信息,加-o wide参数显示详细信息。
  • kubectl describe nodes:显示集群节点资源:CPU、GPU、内存的使用情况以及标签;nodes 后可加具体节点名。

二、资源创建

  • kubectl apply -f <文件名>:更新资源&创建资源(推荐)
  • kubectl create -f <文件名>:创建资源。
  • kubectl create -f.:创建当前目录下的所有 yaml 资源。
  • kubectl create -f./app1.yaml -f./app2.yaml:批量创建资源。

三、资源使用情况查询

  • kubectl top node k8s-node:显示节点(k8s-node)资源的使用情况。
  • kubectl top node:显示集群所有节点的资源的使用情况。
  • kubectl top pod -n logging:显示指定命名空间(如,logging)的 pod 的资源的使用情况。

四、容器操作

  • kubectl -n <命名空间> exec -it <Pod 名称> -- bash:登录容器的命令。
  • kubectl -n <命名空间> cp /opt/sql <Pod 名称>:/tmp/:复制本机/opt/sql 路径下的文件到 pod 的 /tmp/路径下。
  • kubectl -n <命名空间> cp <Pod 名称>:/tmp/app_bak ./mysql_bak/:复制 Pod 内app_bak路径所有文件到本地 mysql_bak 路径。

五、回滚和历史查看

  • cat pod.json | kubectl apply -f -:将控制台输入的 JSON 配置应用到 Pod。
  • kubectl rollout history deployment nginx-deployment:查看修订版本的历史记录。
  • kubectl rollout undo deployment nginx-deployment --to-revision=1:如果不加 –to-revision=版本号,会回退到上一个版本。

六、资源配额与限制查看

  • kubectl describe quota:查看集群的资源配额。
  • kubectl describe limitrange:查看集群的资源限制。

七、日志查看

  • kubectl logs -f <Pod 名称> -n <命名空间>:查看指定 Pod 的日志。
  • kubectl logs --tail=10 <Pod 名称>:查看指定 pod 的最后 10 行日志。
  • kubectl logs <Pod 名称> -n <命名空间> | grep 关键字:根据关键字查看日志。

八、资源列表查看

  • kubectl get pods -A:查看所有的 pod。
  • kubectl get pods -n <命名空间>:查看特定命名空间下的 Pod 列表。
  • kubectl get po -A|grep -Ev '1/1|2/2|3/3|4/4|Com':查看异常 pod 的列表。
  • kubectl get pods -o wide | grep <需查询 pod 的关键字>:查询包含特定关键字的 Pod,并且输出详细信息。
  • kubectl get namespaces:查看命名空间列表。
  • kubectl get nodes:查看节点列表,可以加上 --show-labels 查看 label,可以加上 -o wide 查看 IP。
  • kubectl get services:查看集群中服务的状态。
  • kubectl get statefulset:查看 statefulset 列表,中间件与底座大量使用该类型控制器。
  • kubectl get daemonset:查看 daemonset 列表,基础组件大量使用该类型控制器。
  • kubectl get deployments:查看 deployment 列表,大部分组件使用该类型控制器。
  • kubectl get svc:查看服务列表,可指定参数 -A 参看所有命名空间中的服务。
  • kubectl get ingress -A:查看域名列表,可指定参数 -A 参看所有命名空间中的对外域名列表。
  • kubectl get crd -A:查看自定义资源列表。
  • kubectl get networkpolicies:查看集群的网络策略。
  • kubectl get storageclass:查看集群的存储类。
0条评论
作者已关闭评论
罗蔚云
1文章数
0粉丝数
罗蔚云
1 文章 | 0 粉丝
罗蔚云
1文章数
0粉丝数
罗蔚云
1 文章 | 0 粉丝
原创

常用k8s命令

2024-11-18 09:21:53
1
0

一些常用的 Kubernetes 命令:

一、资源详细信息查看

  • kubectl describe <资源类型,如:deployments> <资源名称>:查看特定资源的详细信息。
  • kubectl -n <命名空间> describe pod <pod-name>:查看指定命名空间下指定 pod 的详细信息,加-o wide参数显示详细信息。
  • kubectl describe nodes:显示集群节点资源:CPU、GPU、内存的使用情况以及标签;nodes 后可加具体节点名。

二、资源创建

  • kubectl apply -f <文件名>:更新资源&创建资源(推荐)
  • kubectl create -f <文件名>:创建资源。
  • kubectl create -f.:创建当前目录下的所有 yaml 资源。
  • kubectl create -f./app1.yaml -f./app2.yaml:批量创建资源。

三、资源使用情况查询

  • kubectl top node k8s-node:显示节点(k8s-node)资源的使用情况。
  • kubectl top node:显示集群所有节点的资源的使用情况。
  • kubectl top pod -n logging:显示指定命名空间(如,logging)的 pod 的资源的使用情况。

四、容器操作

  • kubectl -n <命名空间> exec -it <Pod 名称> -- bash:登录容器的命令。
  • kubectl -n <命名空间> cp /opt/sql <Pod 名称>:/tmp/:复制本机/opt/sql 路径下的文件到 pod 的 /tmp/路径下。
  • kubectl -n <命名空间> cp <Pod 名称>:/tmp/app_bak ./mysql_bak/:复制 Pod 内app_bak路径所有文件到本地 mysql_bak 路径。

五、回滚和历史查看

  • cat pod.json | kubectl apply -f -:将控制台输入的 JSON 配置应用到 Pod。
  • kubectl rollout history deployment nginx-deployment:查看修订版本的历史记录。
  • kubectl rollout undo deployment nginx-deployment --to-revision=1:如果不加 –to-revision=版本号,会回退到上一个版本。

六、资源配额与限制查看

  • kubectl describe quota:查看集群的资源配额。
  • kubectl describe limitrange:查看集群的资源限制。

七、日志查看

  • kubectl logs -f <Pod 名称> -n <命名空间>:查看指定 Pod 的日志。
  • kubectl logs --tail=10 <Pod 名称>:查看指定 pod 的最后 10 行日志。
  • kubectl logs <Pod 名称> -n <命名空间> | grep 关键字:根据关键字查看日志。

八、资源列表查看

  • kubectl get pods -A:查看所有的 pod。
  • kubectl get pods -n <命名空间>:查看特定命名空间下的 Pod 列表。
  • kubectl get po -A|grep -Ev '1/1|2/2|3/3|4/4|Com':查看异常 pod 的列表。
  • kubectl get pods -o wide | grep <需查询 pod 的关键字>:查询包含特定关键字的 Pod,并且输出详细信息。
  • kubectl get namespaces:查看命名空间列表。
  • kubectl get nodes:查看节点列表,可以加上 --show-labels 查看 label,可以加上 -o wide 查看 IP。
  • kubectl get services:查看集群中服务的状态。
  • kubectl get statefulset:查看 statefulset 列表,中间件与底座大量使用该类型控制器。
  • kubectl get daemonset:查看 daemonset 列表,基础组件大量使用该类型控制器。
  • kubectl get deployments:查看 deployment 列表,大部分组件使用该类型控制器。
  • kubectl get svc:查看服务列表,可指定参数 -A 参看所有命名空间中的服务。
  • kubectl get ingress -A:查看域名列表,可指定参数 -A 参看所有命名空间中的对外域名列表。
  • kubectl get crd -A:查看自定义资源列表。
  • kubectl get networkpolicies:查看集群的网络策略。
  • kubectl get storageclass:查看集群的存储类。
文章来自个人专栏
note笔记
1 文章 | 1 订阅
0条评论
作者已关闭评论
作者已关闭评论
0
0