Mik*_*ike 7 static-ip-address google-cloud-platform kubernetes-ingress nginx-ingress
我正在尝试将我的入口连接到静态 IP。我似乎正在遵循所有教程,但似乎仍然无法将我的静态 ip 附加到入口。我的ingress文件如下(参考静态ip“test-ip”)
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress-web
annotations:
kubernetes.io/ingress.global-static-ip-name: "test-ip"
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/add-base-url: "true"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
spec:
rules:
- http:
paths:
- path: /api/
backend:
serviceName: api-cluster-ip-service
servicePort: 5005
- path: /
backend:
serviceName: web-cluster-ip-service
servicePort: 80
Run Code Online (Sandbox Code Playgroud)
然而,当我跑
kubectl get ingress ingress-web
Run Code Online (Sandbox Code Playgroud)
它返回
kubectl get ingress ingress-web
NAME HOSTS ADDRESS PORTS AGE
ingress-web * 80 4m
Run Code Online (Sandbox Code Playgroud)
不给地址。在 VPC 网络中 [外部 IP 地址] 静态 ip 在那里,它是全局的,但它一直说:In use by None
gcloud compute addresses describe test-ip --global
Run Code Online (Sandbox Code Playgroud)
给
address: 34.240.xx.xxx
creationTimestamp: '2019-03-26T00:34:26.086-07:00'
description: ''
id: '536303927960423409'
kind: compute#address
name: test-ip
networkTier: PREMIUM
selfLink: https://www.googleapis.com/compute/v1/projects/my-project- adbc8/global/addresses/test-ip
status: RESERVED
Run Code Online (Sandbox Code Playgroud)
我在这里缺少什么?
我花了几个小时试图弄清楚这个问题。这似乎只是 GKE 的一个错误。
解决它的是:
kubernetes.io/ingress.global-static-ip-name: <ip name>Ingress yaml 并运行apply它。您必须确保在 GCP 中创建的 IP 是全局 IP,而不是区域 IP,才能在入口中使用以下注释:
kubernetes.io/ingress.global-static-ip-name
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2797 次 |
| 最近记录: |