如何为Gloo Ingress控制器设置超时

时间:2020-07-03 09:28:35

标签: kubernetes-ingress nginx-ingress gloo

我正在kubernetes集群中用gloo入口控制器替换nginx入口,并希望设置响应超时.nginx中对此有一个注释。

nginx.ingress.kubernetes.io/proxy-read-timeout:“ 60”

在gloo-ingress-controller中是否有类似的东西,否则我必须为此使用虚拟服务吗?

1 个答案:

答案 0 :(得分:1)

您应该与Gloo一起使用的唯一注释是kubernetes.io/ingress.class: gloo,这是将Ingress对象标记为由特定Ingress控制器处理的标准方法。如果您添加了让Gloo成为集群的默认Ingress控制器的功能,则此要求将消失。另外,根据documentation

如果您需要更高级的路由功能,我们建议您 通过安装为glooctl安装网关来使用Gloo VirtualServices。

Gloo Gateway使用Kubernetes自定义资源而不是Ingress 对象是超出其基本配置Ingress的唯一方法 路由规范是使用大量特定于供应商的Kubernetes注释 到您的Kubernetes清单。

因此,您应该使用VirtualService来实现自己的目标。您可以看到以下示例:

apiVersion: gateway.solo.io/v1
kind: VirtualService
metadata:
  name: 'default'
  namespace: 'gloo-system'
spec:
  virtualHost:
    domains:
    - '*'
    routes:
    - matchers:
       - prefix: '/petstore'
      routeAction:
        single:
          upstream:
            name: 'default-petstore-8080'
            namespace: 'gloo-system'
      options:
        timeout: '20s'
        retries:
          retryOn: 'connect-failure'
          numRetries: 3
          perTryTimeout: '5s'

我希望这会有所帮助。