Kubernetes (K3S) 中对 Traefik 入口的 HTTP2 支持
HTTP2 support for Traefik ingress in Kubernetes (K3S)
我使用 K3S for my Kubernetes cluster. It's really fast and efficient. By default K3S use Traefik 作为入口控制器,它到现在也运行良好。
我唯一的问题是,我想要 HTTP2 服务器推送。我拥有的服务在入口后面,生成 Link header which in the case of NGINX I can simply turn it into the HTTP2 server push (explained here)。 Traefik有没有相同的解决方案?还是可以在K3S中切换到NGINX?
我不知道 traefik 中的 HTTP2,但您可以简单地告诉 k3s 不要启动 traefik 并部署您选择的入口控制器:
HTTP2 推送 不 在 Traefik 中支持。请参阅 github 未决问题 #906 以了解有关此事的进展。
不过,您可以安全地切换到 nginx ingress controller 来完成 HTTP2 推送
a) helm install stable/nginx-ingress
b) 在您的入口 yaml 中设置适当的注释
metadata:
annotations:
kubernetes.io/ingress.class: nginx
您可能不想要 HTTP/2 服务器推送,因为它是 being removed from Chromium。如果您想切换入口控制器,您可以通过以下方式选择另一个:
- 使用
--disable traefik
选项启动 K3s。
- 添加另一个控制器,例如 NGINX 或 Ambassador
有关将 Ambassador 添加到 K3s 的详细说明,请参阅以下内容link:https://rancher.com/blog/2020/deploy-an-ingress-controllers
我使用 K3S for my Kubernetes cluster. It's really fast and efficient. By default K3S use Traefik 作为入口控制器,它到现在也运行良好。
我唯一的问题是,我想要 HTTP2 服务器推送。我拥有的服务在入口后面,生成 Link header which in the case of NGINX I can simply turn it into the HTTP2 server push (explained here)。 Traefik有没有相同的解决方案?还是可以在K3S中切换到NGINX?
我不知道 traefik 中的 HTTP2,但您可以简单地告诉 k3s 不要启动 traefik 并部署您选择的入口控制器:
HTTP2 推送 不 在 Traefik 中支持。请参阅 github 未决问题 #906 以了解有关此事的进展。
不过,您可以安全地切换到 nginx ingress controller 来完成 HTTP2 推送
a) helm install stable/nginx-ingress
b) 在您的入口 yaml 中设置适当的注释
metadata:
annotations:
kubernetes.io/ingress.class: nginx
您可能不想要 HTTP/2 服务器推送,因为它是 being removed from Chromium。如果您想切换入口控制器,您可以通过以下方式选择另一个:
- 使用
--disable traefik
选项启动 K3s。 - 添加另一个控制器,例如 NGINX 或 Ambassador
有关将 Ambassador 添加到 K3s 的详细说明,请参阅以下内容link:https://rancher.com/blog/2020/deploy-an-ingress-controllers