我正在尝试将我的入口连接到静态IP。我似乎正在关注所有教程,但仍然似乎无法将静态ip附加到入口。我的入口文件如下(将静态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
但是,当我跑步
kubectl get ingress ingress-web
它返回
kubectl get ingress ingress-web
NAME HOSTS ADDRESS PORTS AGE
ingress-web * 80 4m
未提供地址。在VPC网络中[外部IP地址 ]静态ip在那里,它是全局的,但一直在说:没有人使用
gcloud compute addresses describe test-ip --global
给予
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
我在这里想念什么?
答案 0 :(得分:3)
我已经花费了数小时试图找出问题所在。 简直就像是GKE的错误。
解决问题的是:
kubernetes.io/ingress.global-static-ip-name: <ip name>
入口Yaml并apply
对其进行添加。答案 1 :(得分:0)
您需要将静态IP附加到负载均衡器,而不是Ingress。
请参见
https://kubernetes.github.io/ingress-nginx/examples/static-ip/
答案 2 :(得分:0)
我遇到了这个问题。我相信它已通过 this 拉取请求修复。
变化
data[data.train_mask]
到
kubernetes.io/ingress.global-static-ip-name
为我工作。