我们在项目中使用 kustomize 和 kubernetes。
我正在尝试使用此链接中提到的IP实现对外部服务的访问
https://medium.com/@ManagedKube/kubernetes-access-external-services-e4fd643e5097
这是我的服务
---
kind: Service
apiVersion: v1
metadata:
name: pgsql
spec:
ports:
- protocol: TCP
port: 5432
targetPort: 5432
name: "pg"
selector: {}
---
apiVersion: v1
kind: Endpoints
metadata:
name: pgsql
subsets:
- addresses:
- ip: 1.1.1.1
ports:
- port: 5432
name : "pg"
当我使用 kubectl命令申请时(kubectl apply -k ...我有一个警告
警告:kubectl apply 应用于由任一创建的资源 kubectl create --save-config or kubectl apply
但是,此警告不会避免创建终结点和服务。
kubectl get endpoint
NAME ENDPOINTS AGE
pgsql 172.12.xx.yy:5432 3m27s
不幸的是,IP地址与我放入yml(1.1.1.1(中的IP地址不同
如果我第二次申请
kubectl apply -k ...
kubectl get endpoint
NAME ENDPOINTS AGE
pgsql 1.1.1.1:5432 10s
我不再有上面的警告了。
终结点是预期的终结点。
我希望端点地址与第一次申请时的确切地址(1.1.1.1:5432(完全相同。
有什么建议吗?
谢谢
它可能来自空选择器。你能尝试完全删除它吗? 这应该仅在您的服务没有任何选择器时才有效