【问题标题】:Use Kubernetes Ingress to have path routing with IP (no host/domainname) in GCP使用 Kubernetes Ingress 在 GCP 中使用 IP(无主机/域名)进行路径路由
【发布时间】:2019-11-26 10:20:32
【问题描述】:

我无权创建 DNS/域名,因此我无法在我的入口 YAML 文件中填写 host 字段。

我只是想这样使用IP:

10.10.10.10/foo

10.10.10.10/bar

这是我的入口 YAML 文件:

 apiVersion: extensions/v1beta1
    kind: Ingress
    metadata:
        name: foobar-ingress
        annotations:
            kubernetes.io/ingress.global-static-ip-name: foobar-trigger-static-ip
    spec:
        rules:
             http:
                  paths:
                      - path: /foo/*
                        backend:
                            serviceName: foo
                            servicePort: 80
                      - path: /bar/*
                        backend:
                            serviceName: bar
                            servicePort: 80

这是无效的,因为我尝试使用 Helm 推送它。我无法在 https://kubernetes.io/docs/concepts/services-networking/ingress/ 中找到任何相关信息,因为所有 YAML 示例都使用 host。这甚至可能吗?还是必须要有主持人?

编辑:我正在使用 GCP LoadBalancer

【问题讨论】:

  • 您能否提供有关您使用的舵图的更多信息?究竟是什么?

标签: kubernetes kubernetes-ingress


【解决方案1】:

您可以在注解中指定 nginx 类来重写传入的请求,如下所示

apiVersion: extensions/v1beta1
    kind: Ingress
    metadata:
        name: foobar-ingress
        annotations:
          kubernetes.io/ingress.global-static-ip-name: foobar-trigger-static-ip
          kubernetes.io/ingress.class: nginx
          nginx.ingress.kubernetes.io/rewrite-target: /$1
    spec:
        rules:
             http:
                  paths:
                      - path: /foo/?(.*)
                        backend:
                            serviceName: foo
                            servicePort: 80
                      - path: /bar/?(.*)
                        backend:
                            serviceName: bar
                            servicePort: 80

【讨论】:

  • 抱歉我忘了说我不使用 nginx ingress 而是使用 GCP LoadBalancer
  • Loadbalancer(GCP) 无法让我们同时访问 foo 和 bar,因为 loadbalancer 将在非常特定的一组 pod 上工作,所以我更喜欢使用 github.com/kubernetes/ingress-nginx
  • 不幸的是,这不是一个选项,因为我们使用谷歌云盔甲
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-01
  • 1970-01-01
  • 2021-01-19
  • 1970-01-01
  • 2019-05-03
相关资源
最近更新 更多