目 录CONTENT

文章目录

k8s | 常用指令

如风
2023-07-21 / 0 评论 / 0 点赞 / 32 阅读 / 482 字

k8s | 常用指令

Minikube 指令

  • 停止 VM 和 k8s 集群 minikube stop 不会删除任何数据
  • 删除一个集群 minikube delete, 删除所有集群 minikube delete --all 删除所有 minikube 启动后的数据
  • 查看ip地址:minikube ip
  • 查看当前集群状态minikube status

下面是 kubectl 的相关指令

集群相关

查看集群信息

kubectl cluster-info

image-20230721095937165

查看节点

$ kubectl get nodes
# 标签
$ kubectl get nodes --show-labels

查看 api 资源

kubectl api-resources

image-20230721095644800

查看集群配置信息

kubectl config view 

image-20230721100454177

查看组件的健康状况

kubectl get pods -n kube-system

image-20230721101251421

kubectl get cs (componentstatuses)

1.19 之后已经弃用了

image-20230721100825349

查看所有的资源

kubectl get all --all-namespaces

image-20230721101051633

Pod 相关指令

查看所有的po

-A 表示包括系统的

kubectl get pods -A

查看 pod 所有安装的images

kubectl get pods -A -o=jsonpath="{range .items[*]}{@.spec.containers[*].image}{'\n'}{end}" | tr -s ' ' '\n' | sort | uniq

image-20230721110309170

后面是 使用 JSONPath 表达式来从获取的 Pod 列表中提取容器镜像的信息

1、range .items[*]: 这部分指定了要遍历 Pod 列表中的每个 Pod。
2、{@.spec.containers[*].image}: 在每个 Pod 中,我们取其 .spec.containers[*].image 字段的值,这是容器镜像的信息。{@} 表示当前的对象,即每个 Pod。
3、{'\n'}: 这是一个换行符,用于在每个镜像信息之间换行。
4、{end}: 这表示 JSONPath 表达式的结束。
5、 tr -s ' ' '\n' 命令将输出中的空格替换为换行符。这是因为容器镜像信息在同一个字段中,使用空格分隔,我们希望每个镜像信息都单独占据一行。
6、使用 sort | uniq 命令对镜像信息进行排序和去重,确保每个镜像只显示一次。

参考链接

0

评论区