本文档介绍火山引擎私网解析(PrivateZone)提供的 DNS 高可用插件。
DNS 高可用插件把 DNS 查询结果缓存到本地,并在 DNS 服务不可用时返回缓存的查询结果,避免因 DNS 服务不可用导致客户端无法正常访问资源。
假设资源的域名是 example.com
。如果 DNS 服务不可用,客户端此时访问 example.com
并发送 DNS 查询请求时,就无法获得域名所对应的 IP 地址。这会导致客户端无法通过域名访问该资源。
下图以 Redis 为例展示了因 DNS 服务不可用导致的 Redis 客户端访问资源失败。
为了避免这种情况,私网解析 PrivateZone 提供了 DNS 高可用插件。该高可用插件被集成到您的火山引擎云产品的客户端后,会把客户端获得的 DNS 查询结果缓存到内存或本地文件,并在每次客户端获得 DNS 查询结果时异步刷新缓存。如果 DNS 服务不可用,该插件会返回本地缓存作为 DNS 查询结果。
下图以 Redis 为例展示了在 DNS 服务不可用时,插件返回本地缓存作为 DNS 查询结果。客户端通过本地缓存中的 IP 地址访问资源。
您可以在以下火山引擎云产品的客户端中集成 dns-stale-cache 插件,从而实现 DNS 高可用插件: