0

我希望在我的 Kubernetes 集群中设置一个领事服务网格,并且需要启用入口网关。我的计划是将入口网关作为 ClusterIP 服务和 Kubernetes 入口(Nginx 入口)运行以将流量引导到该入口。我一直在阅读 Consul.io 上有关 Ingress Gateway 的教程,并且对某些事情感到困惑。掌舵图有一个gateways:带有名称的列表。

  • helm chart 构建的服务名称是否必须与 ingress 的 consul 配置匹配(减去 helm 应用的前缀)?

  • 如果不必匹配,我可以在同一个端口上设置多个领事入口网关吗?

例子:

$ cat myingress.hcl
Kind = "ingress-gateway"
# does the following Name need to match kubernetes service
Name = "ingress-gateway"
Listeners = [
  Port = 8080
  ......
]

$ kubectl get services
NAME                          TYPE               CLUSTER-IP      EXTERNAL-IP   PORT(S) 
consul-ingress-gateway        ClusterIP          <blah>          <blah>        8080/TCP,8443/TCP
......
4

1 回答 1

1

配置条目中的Name字段必须与在 Consul 中注册的服务名称匹配。默认情况下,Helm 图表使用名称“ingress-gateway”(https://www.consul.io/docs/k8s/helm#v-ingressgateways-gateways-name)。

您可以使用name必须为ingressGateways.gatewaysHelm 图表的值文件中的数组下列出的每个入口网关定义的字段来自定义它。例如:

---
ingressGateways:
  gateways:
    - name: ingress-gateway
      service: LoadBalancer
      ports:
        - 8080
    - name: nonprod-gateway
      service: LoadBalancer
      ports:
        - 9000
于 2021-01-28T02:03:19.723 回答