我在GKE上有多个运行在k8s上的MSA。每个MSA都在不同的子域名下,例如:
- msa1.example.com
- msa2.example.com
我将它们放在了一个单一的Ingress中:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: main-ingress
annotations:
kubernetes.io/ingress.global-static-ip-name: lalala-ip-1
kubernetes.io/ingress.allow-http: "false"
spec:
tls:
- hosts:
- msa1.example.com
secretName: msa1-tls
backend:
serviceName: sink
servicePort: 80
rules:
- host: msa1.example.com
http:
paths:
- path: /.well-known/*
backend:
serviceName: letsencrypt
servicePort: 80
- path: /*
backend:
serviceName: lalala
servicePort: 80
- host: msa2.example.com
http:
paths:
- path: /*
backend:
serviceName: lalala2
servicePort: 80
......一切都很好。
问题是,我希望每个MSA都有单独的文件。
问题在于这个kubernetes.io/ingress.global-static-ip-name: lalala-ip-1
行。如果我在两个入口中都有它,只有第一个启动的入口与IP绑定,而其他的没有。
是否有办法在GKE ingress 控制器之间共享IP,使两个入口都能使用它?