首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Google的外部HTTP负载均衡器将外部服务连接到GCP GKE Kubernetes集群

使用Google的外部HTTP负载均衡器将外部服务连接到GCP GKE Kubernetes集群
EN

Stack Overflow用户
提问于 2021-11-12 16:09:39
回答 1查看 207关注 0票数 1

我正在尝试将一个外部网页流页面连接到我们在GCP GKE上的kubernetes集群入口。具体地说,我希望www.domain.com上的所有内容都转到外部webflow服务上,而www.domain.com/app上的所有内容都转到集群中的本地服务上。

我已经看到了这个问题Ingress Nginx Proxy to Outside Website (Webflow hosted),并跟踪了它,但我不能让它工作。我一直收到一个错误的Translation failed: invalid ingress spec: service "default/external-service" is type "ExternalName", expected "NodePort" or "LoadBalancer"; service "default/external-service" is type "ExternalName", expected "NodePort" or "LoadBalancer"

这是我的设置

外部服务:

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  name: external-service
  namespace: default
spec:
  externalName: participant-homepage-9f8712.webflow.io
  ports:
  - port: 443
    protocol: TCP
    targetPort: 443
  sessionAffinity: None
  type: ExternalName
status:
  loadBalancer: {}

入口:

代码语言:javascript
复制
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    ingress.gcp.kubernetes.io/pre-shared-cert: _,
    ingress.kubernetes.io/backends: _,
    ingress.kubernetes.io/forwarding-rule: _,
    ingress.kubernetes.io/https-forwarding-rule: _,
    ingress.kubernetes.io/https-target-proxy: _,
    ingress.kubernetes.io/preserve-host: "false"
    ingress.kubernetes.io/secure-backends: "true"
    ingress.kubernetes.io/ssl-cert: _,
    ingress.kubernetes.io/static-ip: _,
    ingress.kubernetes.io/target-proxy: _,
    ingress.kubernetes.io/url-map: _,
    networking.gke.io/managed-certificates: _,
    nginx.ingress.kubernetes.io/backend-protocol: HTTPS
    nginx.ingress.kubernetes.io/server-snippet: |
      proxy_ssl_name participant-homepage-9f8712.webflow.io;
      proxy_ssl_server_name on;
    nginx.ingress.kubernetes.io/upstream-vhost: participant-homepage-9f8712.webflow.io
  name: my-ingress
  namespace: default
spec:
  backend:
    serviceName: external-service
    servicePort: 443
  rules:
  - host: www.honeybeehub.xyz
    http:
      paths:
      - backend:
          serviceName: app-service
          servicePort: 80
        path: /app/*
        pathType: ImplementationSpecific
      - backend:
          serviceName: external-service
          servicePort: 443
        path: /*
        pathType: ImplementationSpecific
status:
  loadBalancer:
    ingress:
    - ip: _._._._

任何帮助都将不胜感激。谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-11-12 19:46:04

为什么你引用的Ingress Nginx Proxy to Outside Website (Webflow hosted)问题的步骤不起作用,是因为这个问题关注的是EKS (亚马逊弹性Kubernetes服务)。GCE Ingress不支持ExternalName服务,您可以在以下question中看到这一点。我向您推荐的是将其作为功能请求发布在Google's Issue tracker

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69945853

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档