当前tengine ingress不支持ingress配置正则表达匹配,配置健康检查这些吗?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
是的,Tengine Ingress确实支持Ingress配置的正则表达式匹配和健康检查。Tengine Ingress是基于Nginx的,所以它继承了Nginx的大部分特性和功能。然而,由于Tengine Ingress是淘宝团队进行二次开发的,它可能有一些独特的特性和功能,这些特性和功能可能与原始的Nginx有所不同。
对于正则表达式匹配,Tengine Ingress支持使用正则表达式来匹配URL,这可以通过在Ingress配置中使用nginx.ingress.kubernetes.io/use-regex
注解来实现。
对于健康检查,Tengine Ingress支持对后端的服务器进行主动健康检查,根据服务器状态自动上线下线,以及动态解析upstream中出现的域名。这可以通过在Tengine配置中使用check
指令来实现。
Tengine,也称为OpenResty,是一个基于Nginx并与Lua高度集成的高性能Web平台。在处理反向代理和负载均衡的任务上,其表现优秀且稳定性高。值得注意的是,Tengine并不支持ingress配置正则表达匹配,这一点需要您在使用的过程中加以注意。
然而,关于健康检查的部分,Tengine确实为其提供了支持。它允许管理员对后端服务器进行主动健康检查,具体的参数包括发送健康检查包的间隔、连续成功次数阈值以及连续失败次数阈值等。此外,被动健康检查也是Tengine所支持的,这是通过监听服务器的响应情况来判断其健康状况。总的来说,Tengine的健康检查功能可以有效地帮助您确保后端服务器的正常运行。
目前不支持 正则表达匹配 regex对性能影响比较大。如果在k8s环境下 那么在service上配置 Liveness后
tengine-ingress拿到的是探活成功的endpoints 。如果Liveness探活失败 tengine-ingress会实时更新service的endpoints,不会转发到不健康的端点上,ngx_http_upstream_check_module 这个之前解释过 影响性能 且与现在的k8s Liveness探活存在冲突,如果是非k8s环境 这个对于后端upstream节点数比较小的情况下 还是合适的 ,此回答整理自钉群“Tengine和Tengine-Ingress开源交流群”