写点什么

TrafficRoute:一体化的 DNS 解析和流量调度套件

  • 2023-06-15
    上海
  • 本文字数:2556 字

    阅读完需:约 8 分钟

TrafficRoute:一体化的DNS解析和流量调度套件

TrafficRoute是火山引擎推出的解析调度套件,它实现了“一体化”的解析和调度服务,覆盖「公网解析」、「私网解析」、「流量调度/容灾」等场景,提供高性能、高可用、精准、及时、安全和可定制的解析调度产品集。

TrafficRoute 具备云解析 DNS、云调度 GTM、私网 PrivateZone、HTTPDNS、公共 DNS 等产品能力,用户根据不同的场景选择部分或者全部产品,实现涵盖公网内网、云上云下、混合云环境下高性能、安全、稳定的解析。

借助强大的流量编排、健康检查、智能调度算法等技术,TrafficRoute 实现了就近接入、流量均衡、同城容灾、异地多活、多云环境下流量编排和资源粘合、负载均衡和故障容灾(Failover)等一站式 DNS 解析和流量调度能力。



公网解析

对于解析类的场景、从网络环境上可以分为“公网(外网)环境”和“私网(内网)环境”,公网环境是全球可访问的 Internet,在公网下的域名(Domain)及其解析记录(Records)是公网下“全局”唯一的。任何互联网用户,可以通过域名解析服务来解析并访问公网域名。在公网环境下,DNS 的服务分为「权威 DNS」和「递归 DNS」两大类。

权威 DNS

权威 DNS 提供了对域名(例如 example.com)及其记录(例如 IP 地址 1.2.3.4)的托管服务,它是域名注册商所设置的 DNS 服务器(NS)。权威对被托管的域名进行解析,例如 google.com 托管在谷歌的权威服务器上,那么 Google 的 NS(例如 ns1.google.com)会对域名(google.com 及其子域名例如 www.google.com)进行解析,但不会对未托管在该 NS 上的域名进行解析。





如果解析时指定权威 DNS 服务器(NS),就能看到 NS 只对被托管的域名进行解析,不指定时会走迭代解析流程从根(.)开始一层层找到域名所对应的权威 DNS 服务器。具体过程可参考 DNS 工作原理(https://www.volcengine.com/docs/6758/109946)。




火山引擎 TrafficRoute 套件的产品“云解析 DNS”提供了高可用(100% SLA)、低延时、高弹性(分布式多集群)的权威 DNS 服务,同时结合高防清洗服务提供防攻击和安全的能力。

递归 DNS

递归 DNS 则提供了解析缓存、分布式低延时等能力。它本身不管理域名和记录,而是通过“迭代”的方式向多个权威 DNS 查询域名解析结果,并将结果进行缓存、并返回各域名查询的客户端。因为缓存的存在和分布式的部署,提供了高性能的域名查询服务。

除了基本的缓存和递归、迭代查询能力,递归 DNS 还可以提供防劫持、安全等高级能力。递归 DNS 服务通常由运营商(Local DNS)或者 DNS 厂家提供,形式上多种多样,用户可以根据自己的需求进行选择。以下是 TrafficRoute 提供的不同类型递归 DNS 和运营商 Local 的场景和能力的比较。



私网解析

私网 DNS 对应 TrafficRoute 的私网解析 PrivateZone 产品,主要解决的问题是云私有网络(VPC)用户在私有网络内(内网)的解析问题,此外配合 PrivateZone Resolver 和私有化部署版本(结合火山 veStack)也可以解决混合云场景云上、云下、本地、多云场景的解析问题。



用户可以为火山引擎 Region 内的 VPC 配置私网域名解析,被托管的私网域名只在“租户”内生效、也支持对不同的 VPC 配置(托管)相同的域名,或者对不同的 Subnet 进行“智能解析”。

通过托管私网域名,可以实现将 VPC 内不同的资源例如虚拟机(ECS)、数据库(RDS)、缓存(Redis)、内网 OpenAPI 或者任何内网服务映射到 IP 地址,转而使用内网域名访问不同的资源(服务),将资源的解析和网络留在“内部”避免暴露在互联网上。



配合 Resolver,可以将公有云的 VPC 环境拓展到多云(多个公有云厂商)和混合云(包含公有云和用户本地机房)等复杂场景下,实现多云/混合云场景下、对不同位置的资源提供统一的解析体验。

流量调度

火山引擎云调度 GTM 基于解析进行流量调度,可以实现流量的就近接入(地理位置/性能)、负载均衡 。GTM 借助分布式、多协议健康检查能力来实现故障容灾(Failover),诸如“同城容灾”、“异地多活”等场景。此外 GTM 还提供了多云环境下的流量编排、资源粘合能力,可视化的健康检查数据分析、操作日志等功能帮助排查定位问题,便于日常运维。

  • 就近接入目前分为两类:一类是基于地理位置、运营商信息(GEO/ISP)进行流量的就近分配;另一类是基于性能、容量等,例如基于不同流量源头和目标地址(IP 或域名)的网络延时(RTT)来进行延时最优的调度;

  • 地址编排能力支持地址、地址池、地址池集合和调度规则等抽象,可以将诸如 VIP、机房、集群等信息合理的分组编排和管理。例如,将某个 IDC 的 VIP 放入一个地址池(Pool)、若干 Pool 放入地址池集合(PoolSet)等,底层 IP 地址的上下线不会“牵一发动全身”;

  • 流量均衡支持多级(调度规则、地址池、地址)的权重设置和地理位置调度进行组合实现地理位置+权重的流量分配;

  • 健康检查使用分布式的节点,支持智能根据流量来源(地理位置等)进行多个节点的推荐和选择,确保结果的准确性和可靠性;同时健康检查支持 Ping/TCP/HTTP/HTTPS 等多协议,用户可以根据自身服务进行定制;此外,健康检查还提供可视化的历史数据和日志的查询,方便快速定位问题和回溯;

  • 故障转移是 GTM 基础且实用的能力,一方面故障转移可以发生在地址池集合内的所有地址之间,也就是将故障地址“摘除”;另一方面也支持调度规则内多个地址池集合(PoolSet)之间进行切换,以便支持多个不同的容灾预案。故障转移支持自动流量切换和告警外加手动切换,以适应不同的需求,通过合理的配置,可以实现“同城容灾”、“异地多活”和“多 CDN/云厂商”等各类场景的故障转移。



上图是一个公有云多 Region 的“异地多活”的示意图,通过 GTM 可以进行流量的分配、监控检查和故障场景自动的流量迁移。下图则展示了如何对多地区用户进行细分调度、更细粒度的流量均衡并进行多个 CDN 厂商(或者多云)的流量调度和容灾。



写在最后

火山引擎 TrafficRoute 解析和调度套件,提供了权威 DNS,递归 DNS,私网 DNS 以及全局流量管理(GTM)功能,覆盖了从公网到私网、从递归到权威的全链路 DNS 服务以及基于 DNS 的内外网全局流量管理和调度服务,为业务提供了一体化的高性能、高可靠、精准、安全、可定制的域名解析和流量调度解决方案。

当前,TrafficRoute 套件下的各个产品服务了抖音,头条,飞书和火山引擎 ALB、CDN、动态加速、存储等各类 APP 和云产品,具备重要产品稳定服务的能力,在技术、成本、性能和产品成熟度方面拥有深厚积累。

TrafficRoute 已正式上线火山引擎官网,欢迎了解更多TrafficRoute相关信息。

用户头像

边创未来,连接生活 2018-10-09 加入

火山引擎边缘计算官方账号

评论

发布
暂无评论
TrafficRoute:一体化的DNS解析和流量调度套件_技术_火山引擎边缘云_InfoQ写作社区