如何查看K8S集群中service和pod定义的网段范围

时间:2024-12-18 13:24:49

在我们创建部署K8S集群的开头时候
不是需要在master节点上执行一条这样的命令嘛?

kubeadm init --apiserver-advertise-address=192.168.60.130 --control-plane-endpoint=cluster-master --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers --kubernetes-version v1.28.14 --service-cidr=10.96.0.0/16 --pod-network-cidr=192.169.0.0/16 --cri-socket unix:///var/run/cri-dockerd.sock

还是再解释一下这串代码的意思吧

以下是对这段 kubeadm init 命令及其参数的详细解释:

  • --apiserver-advertise-address=192.168.60.130:指定 Kubernetes API 服务器向外通告的 IP 地址,用于其他组件与 API 服务器进行通信。
  • --control-plane-endpoint=cluster-master:定义控制平面的端点名称,通常用于多主节点设置。
  • --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers:指定用于拉取 Kubernetes 相关镜像的镜像仓库地址。
  • --kubernetes-version v1.28.14:指定要安装的 Kubernetes 版本。
  • --service-cidr=10.96.0.0/16:为 Kubernetes 服务分配的 IP 地址范围。
  • --pod-network-cidr=192.169.0.0/16:为 Pod 网络分配的 IP 地址范围。
  • --cri-socket unix:///var/run/cri-dockerd.sock:指定容器运行时接口(CRI)的套接字路径,用于与容器运行时进行通信。

总的来说,这段命令用于初始化一个 Kubernetes 控制平面,并配置了一系列关键的参数,包括网络、版本、镜像仓库和通信相关的设置。

如何查看K8S集群中service和pod定义的网段范围?

上面那个初始化Kubernetes 控制节点master的动作一般都是开始时候做的,等你K8S集群运行了几个礼拜,你忘记了网段范围怎么办??

1,对于service的网段:

  • 第一步:
kubectl get svc

然后他会得到具体的service名字,大多数情况下K8S集群就一个service,名为kubernetes

  • 第二步:
kubectl describe svc kubernetes

然后就能看到范围了,是10.96.0.0/16,
因为这个kubernetes的IP是10.96.0.1,只有一个,肯定就是从1开始算起嘛,所以范围是10.96.0.0/16。
在这里插入图片描述

2,对于pod的网段:

直接输入命令

 kubectl cluster-info dump | grep -m 1 cluster-cidr 

在这里插入图片描述
这里面的cluster-cidr=192.169.0.0/16就是pods的网段范围。

  • 另外。kubectl cluster-info dump 命令用于将 Kubernetes 集群的大量详细信息以 YAML 格式输出。
    这些信息包括但不限于集群的配置、各种资源(如节点、Pod、服务等)的详细描述、证书信息、扩展插件的配置等。