OpenResty Edge 提供了网关服务器自身健康状态的自动检查功能,帮助您识别并及时处理故障网关,确保系统稳定运行。通过 Edge 管理控制台,您可以轻松配置自动健康检查,将不健康的网关服务器从 DNS 解析和分布式缓存中移除,避免将流量路由到故障节点。

创建一个新的页面规则

Screenshot

打开 OpenResty Edge 的 Admin Web 控制台。这是我们的控制台的样例部署。每个用户都有自己的本地部署。

Screenshot

首先,进入 “Applications” 页面。

Screenshot

我们提前准备了一个名为 “test-edge.com” 的应用。

Screenshot

点击配置此应用。

Screenshot

进入 “Page Rules” 页面。

Screenshot

在这里,我们可以添加一条新规则。

Screenshot

对于这条页面规则,我们需要指定一个条件。

Screenshot

输入 “/status” 作为字符串的值。

Screenshot

添加一个新动作。

Screenshot

选择 “output response body”。

Screenshot

将响应体设为 “healthy”。当请求的 URI 为 “/status” 时,输出响应体为 “healthy”。

Screenshot

点击 “Create” 按钮。

Screenshot

我们需要发布来推送这个新改动。

Screenshot

点击这个按钮。

Screenshot

发布!

Screenshot

改动现在已经同步到所有的网关服务器。

Screenshot

开启健康检查

让我们再次进入网关集群页面。

Screenshot

这是我们今天要使用的集群。

Screenshot

点击复制 IP 地址。

Screenshot

在终端上,我们使用 curl 命令向网关服务器发送请求。

Screenshot

可以看到响应体正是 “healthy”。

Screenshot

点击更改该群集的配置。

Screenshot

启用健康检查。

Screenshot

我们使用 HTTP 协议。

Screenshot

将 HTTP 请求主机设置为我们的应用名称。

Screenshot

输入 “/status” 作为请求 URI。

Screenshot

要求响应体匹配为 “healthy”。

Screenshot

为了快速演示,我们将请求间隔调短为 3 秒。

Screenshot

保存。

Screenshot

测试结果

切换到终端。先停止服务器。

Screenshot

服务已停止运行。

Screenshot

刷新列表。

Screenshot

可以看到该节点当前显示为红色,这表示它处于离线状态。该节点的 IP 将从 DNS 解析、SSL 会话 ID 的分布式缓存中删除。

Screenshot

点击查看 “Details”。

Screenshot

点击红色区域,可以看到故障的详细信息。

Screenshot

Screenshot

关闭它。

Screenshot

现在,重新启动我们的网关服务器。

Screenshot

服务器恢复正常了。

Screenshot

再次刷新列表。节点状态已经变回绿色。

Screenshot

此外,我们还可以对特定分区中的所有网关群集和服务器启用健康检查。

Screenshot

点击编辑此分区。

Screenshot

可以通过这个按钮启用健康检查。

Screenshot

这里的健康检查不针对上游后端服务器或源站。我们在另一个视频中介绍过。

Screenshot

关于 OpenResty Edge

OpenResty Edge 是一款专为微服务和分布式流量架构设计的全能型网关软件,由我们自主研发。它集流量管理、私有 CDN 构建、API 网关、安全防护等功能于一体,帮助您轻松构建、管理和保护现代应用程序。OpenResty Edge 拥有业界领先的性能和可扩展性,能够满足高并发、高负载场景下的苛刻需求。它支持调度 K8s 等容器应用流量,并可管理海量域名,轻松满足大型网站和复杂应用的需求。

如果你喜欢这个教程,请订阅这个博客网站和我们的 YouTube 频道B 站频道。谢谢!

关于作者

章亦春是开源 OpenResty® 项目创始人兼 OpenResty Inc. 公司 CEO 和创始人。

章亦春(Github ID: agentzh),生于中国江苏,现定居美国湾区。他是中国早期开源技术和文化的倡导者和领军人物,曾供职于多家国际知名的高科技企业,如 Cloudflare、雅虎、阿里巴巴, 是 “边缘计算“、”动态追踪 “和 “机器编程 “的先驱,拥有超过 22 年的编程及 16 年的开源经验。作为拥有超过 4000 万全球域名用户的开源项目的领导者。他基于其 OpenResty® 开源项目打造的高科技企业 OpenResty Inc. 位于美国硅谷中心。其主打的两个产品 OpenResty XRay(利用动态追踪技术的非侵入式的故障剖析和排除工具)和 OpenResty Edge(最适合微服务和分布式流量的全能型网关软件),广受全球众多上市及大型企业青睐。在 OpenResty 以外,章亦春为多个开源项目贡献了累计超过百万行代码,其中包括,Linux 内核、Nginx、LuaJITGDBSystemTapLLVM、Perl 等,并编写过 60 多个开源软件库。

关注我们

如果您喜欢本文,欢迎关注我们 OpenResty Inc. 公司的博客网站 。也欢迎扫码关注我们的微信公众号:

我们的微信公众号

翻译

我们提供了英文版原文和中译版(本文)。我们也欢迎读者提供其他语言的翻译版本,只要是全文翻译不带省略,我们都将会考虑采用,非常感谢!