乐趣区

关于java:架构设计基础设施保障-IaaS之网络篇

3. IaaS 之网络

3.1 DNS 使用

3.1.1 DNS 性能作用

  • 负载平衡

    DNS 负载平衡,原理是给用户返回不同的 IP 地址,例如:

    主机记录 记录类型 线路类型 记录值 TTL
    www A 默认 200.202.101.1 600
    www A 默认 200.202.101.2 600
    www A 默认 200.202.101.3 600
    www A 默认 200.202.101.4 600

    解析返回失去的 IP 地址是能够是轮询,也能够是随机失去的 IP 地址

  • 健康检查:

    反对 ping、telnet、http(s)协定实时健康检查,获取应用服务运行状态。

  • 故障切换

    反对依据健康检查后果主动或者手工进行 failover 切换操作,实现主备切换、主动批改故障域名的解析,对异样的地址(服务)进行故障隔离或切换。

  • 智能 DNS

    反对依据不同运营商、区域进行智能 DNS 解析,实现用户就近拜访。

  1. 阿里云 DNS 免费版 vs 付费版

    参数项 参数值 免费版
    最低 TTL 值 最低 1 秒 最低 2 秒
    子域名级别 最高 10 级 最高 2 级
    A 记录负载平衡 带权重的 A 记录轮询,最多反对 90 条 带权重的 A 记录轮询,最多反对 10 条
    URL 转发 URL 显性转发 +URL 隐性转发,最多反对 6 条 URL 显性转发 +URL 隐性转发,最多反对 2 条
    泛解析
    运营商线路 默认、挪动、联通、电信、教育网 默认、挪动、联通、电信、教育网
    运营商线路细分 挪动(省份)、联通(省份)、电信(省份)、教育网(省份),共 135 条线路 不反对
    海内线路细分 亚洲、大洋洲、欧洲、北美、南美、非洲 6 大洲 34 个国家及地区 海内
    搜索引擎线路 搜索引擎、谷歌、百度、必应、有道、雅虎 谷歌、百度、必应

    更多区别,详情

3.1.2 DNS 配置实际

次要步骤:创立实例 -> 配置拜访策略 -> 主域名设置 CNAME 解析到实例的 CNAME 接入域名。

  • 创立两台虚拟机

    两台虚拟机都部署雷同的服务(app-server),用于高可用的测试验证。

  • 创立地址池

    这里指向一台主节点。

  • 拜访策略配置

    配置地址池信息,如果呈现故障,能够主动切换至备用地址池。

    备用地址池指向另外一台云服务器。

  • 全局配置

    这里能够采纳零碎调配生成的 cname 域名,主域名是用户拜访应用服务应用的域名,必须填写实在主域名,这里主域名是配置:test.mirson.cn。

  • 开启健康检查

    须要对地址池里的 IP 地址配置健康检查,以获取应用服务的可用性,从而达到依据应用服务地址可用性的状态实现主动故障隔离以及故障主动切换。

  • DNS 解析设置

    最初,在解析设置外面,增加记录。这外面的记录值要填写下面所设置的 cname 域名信息。

  • 测试

    通过拜访 test.mirson.cn 会指向连接池所配置的 IP 信息。

通过域名进行拜访:

  • 故障测试

    将地址池改为 218.253.0.76 不可用地址或进行服务,开启健康检查后,会主动呈现报警提醒,并切换为备用地址池。

    查看告警日志,能够看到详细信息

    拜访服务:

3.2 DNS 生产最佳实际计划

3.2.1 寰球减速性能

寰球减速能够为不同地区的客户端智能返回不同的减速 IP,升高解析时延,如果是面向国内的服务,是须要开启此性能,如果只是国内应用,能够不必开启。

  • 华东区域客户端拜访 Web 服务会智能解析到寰球减速上海减速 IP。
  • 华东以外的其余中国边疆区域客户端拜访 Web 服务会智能解析到寰球减速北京减速 IP。
  • 境外区域客户端拜访 Web 服务会间接走境外线路到美国(硅谷)源站 IP。

具体操作,查阅官网文档。

3.2.2 不同运营商的减速计划

不同运营商会有本身专有的网络,如果跨运营商拜访存在不稳固的状况,能够开启此性能。

实现原理:

  • 联通用户通过域名,拜访应用服务的联通 IP 地址:1.1.1.1。
  • 移动用户通过域名,拜访应用服务的挪动 IP 地址:2.2.2.2。
  • 其余用户通过域名,拜访应用服务的默认电信 IP 地址:3.3.3.3。

具体操作,查阅官网文档。

3.2.3 寰球业务高可用计划

部署计划:

为了实现寰球用户都能取得较好的拜访品质,通常企业会在中国大陆和海内别离部署至多两套以上的接入服务点,后端数据服务依然应用一套。通过 DNS 服务,对于不同地区的用户申请流量做智能调度,将用户访申请流量路由至不同的接入服务点。呈现故障劫难时,各接入站点自建相互备份,最终实现业务的高可用。

操作配置阐明

3.2.4 跨地区负载平衡

企业应用服务个别会有多个 IP,且多个 IP 地址可能散布于不同地区。能够采纳流量均匀分配原则,对多个 IP 地址进行负载均摊,实现用户拜访同一个应用服务域名时多个 IP 地址同时承当用户的拜访申请。

实现计划:

平均分配与加权调配配置

3.3 DNS 域名劫持解决方案

  1. 域名劫持

    域名劫持又称 DNS 劫持,是指在劫持的网络范畴内拦挡域名解析的申请,域名劫持通常相伴的措施是封闭失常 DNS 的 IP,这样就能够采纳虚伪的 IP 来代替实在的 IP。

    常见的域名劫持问题:

    • 广告劫持:用户失常页面指向到广告页面。
    • 歹意劫持:域名指向 IP 被扭转,将用户拜访流量引到挂马,盗号等对用户无害页面的劫持。
    • 本地 DNS 缓存:为了升高跨网流量及用户访问速度进行的一种劫持,导致域名解析后果不能按时更新。
  1. HTTPDNS 解决方案

    HTTPDNS 是仅面向挪动 App 域名劫持解决方案,具备域名防劫持、精准调度的个性。

    劣势个性:

    • 域名防劫持

      域名解析申请间接发送至 HTTPDNS 服务器,绕过运营商 Local DNS,防止域名劫持问题。

    • 调度精准

      间接获取客户端 IP,基于客户端 IP 取得最精准的解析后果,让客户端就近接入业务节点。

    • 实时失效

      能够实现毫秒级低解析提早的域名解析成果。

  1. 应用配置

    流程:

    操作配置

3.4 CDN 分析

3.4.1 CDN 原理

  1. 当终端用户(北京)向 www.a.com 下的指定资源发动申请时,首先向 LDNS(本地 DNS)发动域名解析申请。
  2. LDNS 查看缓存中是否有 www.a.com 的 IP 地址记录。如果有,则间接返回给终端用户;如果没有,则向受权 DNS 查问。
  3. 当受权 DNS 解析 www.a.com 时,返回域名 CNAME www.a.tbcdn.com对应 IP 地址。
  4. 域名解析申请发送至阿里云 DNS 调度零碎,并为申请调配最佳节点 IP 地址。(用户从北京拜访,返回最近的北京节点信息。)
  5. LDNS 获取 DNS 返回的解析 IP 地址。
  6. 用户获取解析 IP 地址。
  7. 用户向获取的 IP 地址发动对该资源的拜访申请。

    • 如果该 IP 地址对应的节点已缓存该资源,则会将数据间接返回给用户。
    • 如果该 IP 地址对应的节点未缓存该资源,则节点向源站发动对该资源的申请。

      能够依据缓存策略做相应配置(针对动态资源配置指定目录和文件后缀名的缓存过期工夫和优先级,资源过期后,主动从 CDN 节点删除。)

3.4.2 缓存过期配置解决流程

3.4.3 缓存配置规定

默认的缓存工夫计算规定,要合乎 3 个条件:

  • t =(curtime-last_modified)*0.1【后果是时间差的 10%】
  • t = max(10s,t)【最小要大于 10S】
  • t = min(t,3600s)【最大不能超过 3600s】

缓存规定示例解析:

  • 如果 last-modified20140801 00:00:00,以后工夫为20140801 00:01:00,(curtime-Last_modified)*0.1=6s,那么缓存工夫为 10s(因为最小值要大于 10s)。
  • 如果 last-modified20140801 00:00:00,以后工夫为20140802 00:00:00,(curtime-Last_modified)*0.1=8640s,那么缓存工夫为 3600s。
  • 如果 last-modified20140801 00:00:00,以后工夫为20140801 00:10:00`,(curtime-Last_modified)*0.1=60s,那么缓存工夫为 60s。

3.5 CDN 使用

  1. 验证域名所属权

  2. 域名验证设置

    如果是阿里云申请的域名,设置起来比较简单,间接增加一条验证记录:

    如果是其余第三方域名,能够采纳文件验证形式。

    下载 verification.html 验证文件,上传到您的域名源站服务器的根目录。

  3. 增加域名

    这里所填写的减速域名是须要先备案。

    业务类型有五种,依据须要抉择不同配置:

    • 图片小文件

      内容多为小型的动态资源(如小文件、图片、网页款式文件等),举荐您抉择图片小文件业务类型。

    • 大文件下载

      内容为较大的文件(大于 20MB 的动态文件),举荐抉择大文件下载业务类型。

    • 视频点播减速

      如果须要减速音频或视频文件,例如音乐、视频的点播业务场景,举荐抉择此类型。

    • 全站减速

      网站或利用含有大量动动态内容混合,且较多为动静资源申请,能够应用全站减速,动态内容高速缓存,动静内容通过阿里云的最优链路算法及协定层优化疾速回源获取。

    • 平安减速

      网站易蒙受攻打且必须兼顾减速的业务场景,则须要应用平安减速性能,晋升全站安全性。例如金融交易、电商网站等。

  1. 配置 CNAME

    阿里云的配置流程:

    • 记录减速域名的 CNAME 地址

    • 增加 CNAME 记录

      这里的记录值,填写下面的 CNAME 地址。

  1. 验证 CNAME 配置是否失效

    如果返回的解析后果和 CDN 管制台上该减速域名的 CNAME 值统一,则示意 CDN 减速曾经失效。

本文由传智教育博学谷 – 狂野架构师教研团队公布,转载请注明出处!

如果本文对您有帮忙,欢送关注和点赞;如果您有任何倡议也可留言评论或私信,您的反对是我保持创作的能源

退出移动版