1. 检查Service配置 首先,我们需要检查Service配置是否正确。可以通过kubectl get svc [service-name] -n [namespace]来查看Service的配置信息。确保Service的类型、端口和选择器等配置正确。 ```bash kubectl get svc my-service -n my-namespace ``` 2. 检查Endpoint是否正确 Service与Pod之间的通信是通过Endpoin...
### 步骤一:检查Service状态 首先,我们需要检查Service的状态,确保Service正常运行。我们可以通过以下命令来查看Service的详细信息: ```bash kubectl get svc-n ``` ### 步骤二:检查Endpoint状态 接着,我们需要检查Endpoint的状态,确保Endpoint正确关联到Pod。我们可以通过以下命令查看Endpoint信息: ```bash kubectl ...
下面在更新Deployment的过程中通过watch命令来观察有问题的Service的Endpoint。 $ watch kubectl describe endpoints [endpoint name] 然后我就发现了罪魁祸首,在旧 Pod被移除的 30 秒到几分钟左右的时间段内,这些被删除的Pod的IP:Port仍然出现在Endpoint的就绪列表中,同时新启动的Pod的IP:Port也没有被添加到Endpoint中...
这节讲一下 k8s 网络相关的资源类型 service 和 endpoint,关于这一块,这篇博客讲的不错:https://www.cnblogs.com/moonlight-lin/p/14553119.html 在前面创建的 POD 会发现一个问题,POD的 IP 地址不是固定不变的,对外提供服务时很不方面,使用 Service 资源可以解决这个问题。 Service 先创建一个deployment ...
通过上面信息可以看到Endpoint处的值为none,说明没有关联到pod,那么我们前面说过,service跟pod关联是靠标签选择器的,上面service写的标签选择器是Selector: app=myapp1, version=v2,而我们在创建pod时候给pod的标签是app=myapp, version=v1,这样大家应该就发现问题了,是因为我们在创建service的时候,标签选择器没有选...
1.集群 DNS 没有正常运行 步骤 1:找集群 dns 的 service 步骤 2:查看 service 详情 步骤 3:查看 endpoint 对应的 pod 状态 2...
排查思路 dns问题 首先观察k8s-mon-deployment的日志 ```shell script kubectl logs -l app=k8s-mon-deployment -n kube-admin |grep 8080 如有下列报错说明网络不通 err="Get \"http://kube-state-metrics.kube-system:8080/metrics\": net/http: request canceled while waiting for connection (Client.Time...
因此,Service和Endpoints之间的关系可以总结为:Service定义了一组Pod的访问方式,而Endpoints则存储了这些Pod的实际网络终结点信息,Service通过Endpoints来实现对后端Pod的负载均衡和代理转发。 Pod:Pod是kubernetes的最小管理单元,它有自己的IP地址,它的IP地址会被endpoints存储与管理,当pod没有达到健康时,endpoint会把这个...
# kubectl get svc -n kube-system | grep 172.16.255.81 //查找dns 的 service 代码语言:javascript 复制 kube-dns ClusterIP172.16.255.81<none>53/TCP,53/UDP7d23h # kubectl -n kube-system describe svc kube-dns | grep -i endpoints //查找endpoint ...