当前位置: 首页 > 知识库问答 >
问题:

无法将静态IP连接到GKE上的入口

酆翔宇
2023-03-14

我正在尝试将入口连接到静态ip。我似乎在遵循所有教程,但我似乎仍然无法将静态ip连接到入口。我的入口文件如下(参考静态ip“测试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是存在的,它是全局的,但它一直说:In use by无

 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

我错过了什么?

共有3个答案

都阳
2023-03-14

您必须确保在GCP中创建的IP是全局而非区域的,以便在入口中使用以下注释:

kubernetes.io/ingress.global-static-ip-name
陶和歌
2023-03-14

我花了几个小时试图弄清楚这个问题。这似乎只是GKE的一个bug。

解决方法是:

  1. 在没有静态ip的情况下启动入口
尉迟卓
2023-03-14

我遇到了这个问题。我相信这个请求已经修复了。

改变

kubernetes.io/ingress.global-static-ip-name代码

kubernetes.io/ingress.regional-static-ip-name代码

为我工作。

 类似资料:
  • PostgreSQL出现错误: 和文件是正常的(参见下面)。 服务器正在运行 我的文件:

  • 我无法将Tableau连接到EMR群集上的presto。版本:Tableau 10、EMR-5.3.0、Presto 0.157.1 但是,当在Presto web界面(http://ec2-aaa-bbb-ccc-ddd.eee.compute.amazonaws.com:8889/query.html?20170130_165412_00329_5GBBA)上检查java错误的跟踪时,我得到了

  • 我在Google Container Engine上运行我的入口控制器时遇到了困难。我想使用带有Basic Auth的NGINX入口控制器并使用保留的全局静态ip名称(这可以在Google Cloud Admin界面的外部IP地址部分中进行)。当我使用gce类时,除了Basic Auth(我认为gce类不支持它)之外,一切都正常,当我尝试使用入口控制器启动的nginx类时,会听到一个输入代码,但我

  • 我可以对我的AWS EC2实例使用SSH ok。Grizzly已经安装并启动。 我无法通过浏览器从本地计算机连接到EC2公共IPhttp://publicip:8080/索引。我有一个安全组,允许传入访问HTTP端口8080,允许所有传出。我还尝试允许ICMP进行ping,但我也无法ping。我删除了所有安全组限制,但这也不起作用。我检查了iptables,没有任何限制规则。 有什么想法吗? 谢谢

  • 问题内容: 好的,我正在尝试学习Java客户端/服务器方面的知识,并且正在按照以下教程代码进行操作。当我将“ localhost”更改为我的IP时,它将停止工作。请帮忙。 编辑:“ 127.0.0.1”似乎也可以,但不是我的真实IP。 这是我得到的错误。 问题答案: 这需要大胆的猜测,但让我们看看。如果您在Windows 7中运行此程序,请注意,“本地主机”名称可能绑定到计算机的IPV6地址而不是

  • 我正在测试gke入口以将流量路由到两个不同的服务。我的部署包括一个基本的Web容器,它部署了一个默认的蓝色网页和一个绿色网页。我能够得到响应本质上,“/”适用于蓝色或绿色部署。但是当我转到超文本传输协议:///绿色时,我得到了404响应。我已经用“/”作为绿色部署进行了测试,它显示了一个绿色网页。但是如果我转到超文本传输协议:///蓝色,它会导致404响应, 我已经通过将负载平衡器直接连接到容器上