Mat*_*usz 3 gcloud kubernetes google-kubernetes-engine kubernetes-ingress
我在GKE上的k8上有多个MSA.每个都在单独的子域上,如:
我在单个入口中有它:
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
Run Code Online (Sandbox Code Playgroud)
......一切都很好.
问题是,我希望将每个MSA放在单独的文件中.
问题是这一kubernetes.io/ingress.global-static-ip-name: lalala-ip-1行.如果我在两个入口中有它只有第一次启动是有限的IP,但其他没有.
有没有办法在两个入口之间共享GKE入口控制器上的IP?
解决它的方法可能是在您的集群中运行您自己的nginx-ingress控制器并通过LoadBalancer服务类型公开它.然后,您的入口将拥有1个IP,并且能够通过添加注释通过nginx控制器为所有入口提供服务kubernetes.io/ingress.class: "nginx"
确认我的评论:
Only one resource at a time can use a static external IP address.
Run Code Online (Sandbox Code Playgroud)
https://cloud.google.com/compute/docs/ip-addresses/reserve-static-external-ip-address
| 归档时间: |
|
| 查看次数: |
866 次 |
| 最近记录: |