【问题标题】:How to expose services in kubernetes to a single internal loadbalancer in GCP/GKE如何将 kubernetes 中的服务暴露给 GCP/GKE 中的单个内部负载均衡器
【发布时间】:2018-11-15 09:58:16
【问题描述】:

我在 Kubernetes 中创建了 2 个服务,并在 GCP 中创建了 2 个内部负载均衡器。一切正常。

如何将 2 个服务指向同一个负载均衡器?

我使用了下面的 yml 文件,服务不工作。

apiVersion: v1
kind: Service
metadata:
  name: sample-app
  labels:
    name: sample-app
    app: sample-app
spec:
  ports:
  - name: sampleapp
    protocol: TCP
    port: 8080
    targetPort: 8080
  selector:
    name: sample-app
    app: sample-app
  type: "LoadBalancer"
  loadBalancerIP: XX.XX.XX.XX

loadBalancerIP 需要实际的负载均衡器 IP。

创建负载均衡器时出错(将重试):无法确保服务默认/示例应用的负载均衡器:请求的 ip "XX.XX.XX.XX" 既不是静态的也不是分配给 LB

【问题讨论】:

标签: kubernetes google-cloud-platform google-kubernetes-engine


【解决方案1】:

我能够使用以下博客通过 Kubernetes 创建 NGINX 入口控制器。

http://rahmonov.me/posts/nginx-ingress-controller/? https://imti.co/web-cluster-ingress/

并创建了一个 Ingress 来指向我的端点。

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
  ingress.kubernetes.io/rewrite-target: /
  name: cobalt-app
  namespace: default
  spec:
    rules:
    - http:
      paths:
    - backend:
      serviceName: sampleapp
      servicePort: 8080
      path: /greeting
   - backend:
      serviceName: echoserver
      servicePort: 8080
    path: /echo

【讨论】:

    猜你喜欢
    • 2019-09-06
    • 2021-01-27
    • 1970-01-01
    • 2020-07-17
    • 2021-12-24
    • 1970-01-01
    • 2021-10-27
    • 2021-03-17
    • 1970-01-01
    相关资源
    最近更新 更多