本文始发于:云栖社区
时间:2020-06-02
1 背景
随着国家工信部印发的《推进IPv6规模部署行动计划》的深入推进,近期国资委相关的大型国企都开始着手进行业务的IPv6化改造,其在阿里云上的门户及B2B、B2C等对外业务,自然进入第一批改造的范围。本文是基于在具体客户的IPv6化过程中积累的最佳实践编写,希望能够给读者带来一些IPv6化改造的启发。
2 哪些业务需要进行IPv6改造?
从客户业务角度来看,客户的门户网站、ERP、CRM、生产系统等需要和外部进行业务交互的业务均需要进行IPv6化改造。将这些业务进行抽象化,其业务应用所用的ECS资源及业务应用,其文件分发所需的OSS资源、CDN资源,其业务负载分配的SLB资源,以及域名解析的DNS资源均有必要进行IPv6化改造;其内部的数据处理组件及中间件由于不会和外部直接交互故暂无IPv6化改造刚需。
图1:涉及IPv6化改造的阿里云产品
3 IPv6化改造思路
3.1 IPv6化业务改造总体原则是“对现有业务应用改动要尽可能小”
我们在帮客户进行IPv6化改造的过程中,要先设计方案、再在模拟环境验证方案,然后进行分模块的变更和验证。在进行改造的过程中,要尽一切可能不影响现有IPv4业务访问,这一点只要提前深入了解客户业务的技术架构和应用架构就能很好地满足,改造也会更加从容。
3.2 具体进行改造方案设计时,可以从数据流角度分块进行设计
大部分的客户数据流分为静态数据和动态数据。
- 对于静态数据,一般都是采用OSS存储+CDN全球(全国)加速分发模式,这部分的IPv6化改造就重点落在CDN的IPv6化改造上,这点会在第4部分详细展开如何实现。
- 对于动态数据,一般客户会将产生或处理数据的应用部署在一组或多组ECS上(应用常以ECS中的进程或容器中的Pod出现),同时前端部署用以流量分发的负载均衡集群(SLB),这部分的IPv6化改造主要是业务应用服务程序的IPv6化支持改造、ECS IPv6化改造、SLB的IPv6化改造,这些会在后续篇幅中展开如何实现。
此外,现有的IPv4在企业内网和业务内部数据处理中还是非常重要且依然健壮的,彻彻底底的IPv6化改造不仅会影响现有的IPv4客户访问体验,也违背了绝大多数客户IPv6化改造的初衷——尽可能小的进行业务改造。同时,每一个应用都是需要业务和数据安全的,业务上很少的一部分展现在互联网上,而其余部分是隐藏在客户VPC内部的自治区中,这部分的IPv6化也没有那么迫在眉睫。接下来,本文会以连载的方式从“CDN、ECS及业务应用、SLB、DNS”几个层面具体讲解IPv6化改造的方法。
4 CDN的IPv6化改造
- CDN在配置上是以CNAME的形式提供给客户的。
图2:CDN的CNAME示例
- 因此CDN的IPv6化改造就是需要阿里云的这个CNAME能够正常解析出IPv6地址。默认情况下阿里云的CDN只支持IPv4,也只能解析出IPv4地址,如需支持IPv6,需要联系阿里云工程师开启对应CDN域名的IPv6功能。
- 开启了IPv6功能的CDN并不会立即生效,一般需要等待1-2个CDN域名DNS的TTL周期后才能生效,这个需要根据客户DNS的配置而定。
同时,现在全国范围内并不是每个城市都支持IPv6的,因此目前很多城市解析出的结果依然是IPv4。如果客户在开启IPv6功能后在开通了IPv6地址的城市(如:北京)依然无法正常解析IPv6,则需要提工单调整。
开通成功并生效的结果类似下图:
图3:CDN开启IPv6效果示意图
下期本文将从“ECS及业务应用、SLB、DNS”几个层面具体讲解IPv6化改造的方法,敬请期待!
成俞晟阿里云智能GTS-SRE团队技术服务经理
曾就职于联想集团、华为、中化集团,有着丰富的数据中心及云计算经验,现就职于阿里云智能GTS-SRE团队,任北方区SRE架构师。
我们是阿里云智能全球技术服务-SRE团队,我们致力成为一个以技术为基础、面向服务、保障业务系统高可用的工程师团队;提供专业、体系化的SRE服务,帮助广大客户更好地使用云、基于云构建更加稳定可靠的业务系统,提升业务稳定性。我们期望能够分享更多帮助企业客户上云、用好云,让客户云上业务运行更加稳定可靠的技术,您可用钉钉扫描下方二维码,加入阿里云SRE技术学院钉钉圈子,和更多云上人交流关于云平台的那些事。