将 clusterIP 分配给 kubernetes 中的服务

Suj*_*amy 3 service kubernetes google-kubernetes-engine

我正在尝试将clusterIP分配给kube 集群中的服务。我知道 IP 范围,因此我可以从该 IP 范围形成新的 IP。

我正在容器内实现代理。所以我需要知道依赖服务的集群IP,这样我才能从源容器做一个代理。为此,我在创建服务时指定了 clusterIP。

现在的挑战是我应该分配一个未被该集群内的任何其他服务使用的 IP,否则它将失败。

我所做的是以下内容。我获得了该 kube 集群中的服务及其 IP列表,并形成了一个新 IP,并确保新 IP 不在已使用的 IP 池中,然后将其分配给新服务。在大多数情况下它工作正常。

现在我在这里面临一个奇怪的问题。
在某些情况下,它不会说“服务 'mongodb-4-xmxrv-svc' 无效:spec.clusterIP:无效值:'10.7.240.2':提供的 IP 已经分配”

但是该 IP 未被该 kube 集群中的任何服务使用。我不确定该 IP 在哪里使用。有人可以帮我列出该 kube 集群中使用的 IP,以便我可以形成一个新 IP 并将其分配给Service吗?

CJ *_*len 5

您可以使用以下命令查看所有命名空间中的所有服务:

kubectl get services --all-namespaces
Run Code Online (Sandbox Code Playgroud)

kube-system命名空间中的服务很可能具有 10.7.240.2 地址。

  • 值得注意的是,在删除和重新创建 svc 对象时,即使服务已被删除且未出现在“获取服务”的输出中,也可能会收到“IP 已分配”消息。我发现,通过等待几分钟,这会自行解决。 (3认同)