我们正在使用Azure中的托管Kubernetes (AKS),并且已经用完了公共IP地址。我们只需要一个,但是每次我们部署一个服务时,AKS都会创建一个新的公网IP,并且在删除服务时AKS不会删除它。例如:
apiVersion: v1
kind: Service
metadata:
name: somename
spec:
ports:
- port: 443
targetPort: 443
selector:
app: somename
# Also tried this to reuse public IP in AKS MC resource group
# https://docs.microsoft.com/en-my/azure/aks/static-ip
# loadBalancerIP: x.x.x.x
type: LoadBalancer每次部署(kubectl create -f svc.yml)都会创建一个新的公网IP。当它被删除(kubectl delete -f svc.yml)时,IP仍然存在。尝试使用上面注释中的loadBalanceIP重用其中一个现有ip失败,"Public ip Address... is referenced by multiple ipconfigs in resource ...“。
我们已经创建了一个服务请求,但它需要很长时间,所以我希望这会更快。我不敢只删除AKS托管资源中的公共in,因为这可能会导致问题。
有没有安全释放或重用公网Is的方法?我们使用的是Kubernetes版本1.7.12。我们也删除了服务引用的部署,这没有什么不同。
发布于 2018-02-28 20:49:02
它应该在一段时间后(最多5分钟)删除IP。所以你遇到的问题是一个bug。您可以检查k8s事件以查找错误并查看它。
此外,删除Azure资源也是非常安全的。如果他们走了,k8s不会抓狂的。
使用k8s 1.9.1进行测试
https://stackoverflow.com/questions/49026371
复制相似问题