BpFile(id=227, bpId=35, name=自建K8S集群迁移ACK弹性裸金属集群, author=null, keyword=流控,私有域名解析,应用零修改上云,混合云容灾, description=从线下IDC自建K8S零改造迁移云上ACK神龙集群, position=null, ossUrl=bp-1VCQM4SPRXTBUU9B.pdf, tags=null, level=null, tagList=null, products=null, productList=null, hotspot=null, oneClick=1, createTime=null, modifiedTime=null, timeConsuming=null, status=1, pdfDescription=
场景描述
在微服务化改造之后,企业在享受K8S带来应
用管理的便利的同时,存在硬件性能不足,本
地扩展性差,容器容灾难,K8S管理复杂等问
题。
解决问题
1.增强K8S扩展性:如何通过弹性裸金属服务
器的强劲硬件性能,实现云端资源急速扩
展,从容应对应用访问压力大的问题。
2.如何简化云端K8S运维:通过阿里云容器服
务(ACK)实现敏捷开发和部署落地,加速
企业业务迭代。
3.如何综合考虑迁移和容灾:如何整合云上和
云下容器资源实现遇到故障时可以通过健
康检查实现自动容灾。
4.如何不改应用上云:如何实现应用上云数据
库连接零修改。
5.数据库上云及回退:如何实现上云回退;
产品列表
ACK/ECS/SLB/NAT网关/弹性裸金属服务器/DTS/RDS MySQL
, templateId=CGM14M6JWPO1WFUB, freetry=null, visitTime=null, visitCount=null, video_url=null, buttonName=null, buttonUrl=null, targetId=CGM14M6JWPO1WFUB, partner=null, partnerUrl=null, partnerLogo=null, cooperation=null, cooperationList=null)
1自建K8S集群迁移ACK弹性裸金属集群 最佳实践
阿里云
自建K8S集群迁移ACK弹性裸金属集群
最佳实践
业务架构 场景描述
在微服务化改造之后,企业在享受K8S带
来应用管理的便利的同时,存在硬件性能不
足,本地扩展性差,容器容灾难,K8S管理
复杂等问题。
解决问题
1. 增强K8S扩展性:如何通过弹性裸金属
服务器的强劲硬件性能,实现云端资源
急速扩展,从容应对应用访问压力大的
问题。
2. 如何简化云端K8S运维:通过阿里云容
器服务(ACK)实现敏捷开发和部署落
地,加速企业业务迭代。
3. 如何综合考虑迁移和容灾:如何整合云
上和云下容器资源实现遇到故障时可
以通过健康检查实现自动容灾。
4. 如何不改应用上云:如何实现应用上云
数据库连接零修改。
5. 数据库上云及回退:如何实现上云回
退。
最佳实践频道 阿里云最佳实践技术分享群
2云服务器ECS(产品名称) 文档模板(手册名称)/文档版本信息
文档版本:20210810
文档版本:20210808(发布日期) 2
3自建K8S集群迁移ACK弹性裸金属集群 文档版本信息
文档版本信息
文本信息
属性 内容
文档名称 自建K8S集群迁移ACK弹性裸金属集群最佳实践
文档编号 035
文档版本 V2.1
版本日期 2021-08-10
文档状态 外部发布
制作人 衾影、七凌、明中
审阅人 -
文档变更记录
版本编号 日期 作者 审核人 说明
V1.0 2019-04-26 明中 敬海,行夜 创建
V1.1 2019-08-26 明中 - 方案刷新优化
V1.2 2019-10-20 明中,郁松 - 增加切换部分
V2.0 2021-02-22 七凌 - 方案刷新优化
V2.1 2021-08-10 衾影 1、CADT部署
2、K8S版本升
级
文档版本:20210810 I
4自建K8S集群迁移ACK弹性裸金属集群 前言
前言
概述
本实践探讨从线下IDC自建K8S零改造迁移云上K8S神龙版实践,包含自建K8S、
数据双向同步、流量管理等内容。
应用范围
线下IDC或其他云平台自建K8S迁移阿里云K8S平台
名词解释
VPC:VirtualPrivateCloud,简称VPC。基于阿里云创建的自定义私有网络, 不
同的专有网络之间二层逻辑隔离,可以在自己创建的专有网络内创建和管理云产
品实例,比如ECS、负载均衡、RDS等。在创建前,您需要结合具体业务,规划
VPC和交换机的数量及网段等。
RDS:RelationalDatabaseService,简称RDS,是一种稳定可靠、可弹性伸缩
的在线数据库服务。基于阿里云分布式文件系统和SSD盘高性能存储,RDS支
持MySQL、SQLServer、PostgreSQL、PPAS和MariaDB引擎,提供了容灾、
备份、恢复、监控、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。
DTS:DataTransmissionService,简称DTS,是一种集数据迁移、数据订阅及
数据实时同步于一体的数据传输服务。解决远距离、毫秒级异步数据传输难题。
全局流量管理:全局流量管理(GlobalTrafficManager),简称GTM,可以将应
用服务的用户访问流量路由至不同的IP地址。 全局流量管理不仅支持阿里云各
产品的IP地址,同时也可以支持非阿里云产品的IP地址,方便快速构建混合云
应用。
容器镜像服务:容器镜像服务(ContainerRegistry)提供安全的应用镜像托管能
力,精确的镜像安全扫描功能,稳定的国内外镜像构建服务,便捷的镜像授权功
能,方便用户进行镜像全生命周期管理。容器镜像服务简化了Registry的搭建运
维工作,支持多地域的镜像托管,并联合容器服务等云产品,打造云上使用Docker
的一体化体验。
弹性裸金属服务器(神龙):弹性裸金属服务器(ECSBareMetalInstance)是一
款同时兼具虚拟机弹性和物理机性能及特性的新型计算类产品,是基于阿里云完
全自主研发的下一代虚拟化技术而打造的新型计算类服务器产品。与上一代虚拟
文档版本:20210810 II
5自建K8S集群迁移ACK弹性裸金属集群 前言
化技术相比,下一代虚拟化技术的主要创新在于,不仅支持普通虚拟云服务器,
而且全面支持嵌套虚拟化技术,保留了普通云服务器的资源弹性,并借助嵌套虚
拟化技术保留了物理机的体验。
阿里云容器形态:容器服务提供高性能可伸缩的容器应用管理服务,支持用
Docker 和Kubernetes进行容器化应用的生命周期管理,提供多种应用发布方式
和持续交付能力并支持微服务架构。容器服务简化了容器管理集群的搭建工作,
整合了阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器运行环境。容
器服务Kubernetes版提供了三种Kubernetes集群形态:专有版Kubernetes、托
管版Kubernetes和ServerlessKubernetes,具体区别如下:
Dedicated Kuberne Managed Kuber ServerlessKubernetes
tes netes
Kubernetes Mast
Kubernetes Master er由容器服务创
和Worker均为用户 建,用户只需创建 无需创建和管理Master和
特点
创建,完全由用户管 Worker,简单、低 Worker
理 成本,Master免运
维
免费(用户承担 免费(用户承担
收 费 按容器实例的使用资源量
Master和Worker的 Worker的资源费
方式 和时长(秒)计费
资源费用) 用)
典 型 批量任务,突发扩容,
所有场景 所有场景
场景 CI/CD测试
容器服务:容器服务提供高性能可伸缩的容器应用管理服务,支持用 Docker 和
Kubernetes进行容器化应用的生命周期管理,提供多种应用发布方式和持续交付
能力并支持微服务架构。容器服务简化了容器管理集群的搭建工作,整合了阿里
云虚拟化、存储、网络和安全能力,打造云端最佳容器运行环境。
云解析(PrivateZone):PrivateZone,是基于阿里云专有网络VPC(VirtualPrivate
Cloud)环境的私有DNS服务。该服务允许您在自定义的一个或多个VPC中将私
有域名映射到IP地址。
NAT网关:它是一款企业级的公网网关,提供NAT代理(SNAT和DNAT)、高
达10Gbps级别转发能力以及跨可用区的容灾能力。
文档版本:20210810 III
6自建K8S集群迁移ACK弹性裸金属集群 前言
CADT:是一款为上云应用提供自助式云架构管理的产品,显著地降低应用云上管
理的难度和时间成本。本产品提供丰富的预制应用架构模板,同时也支持自助拖
拽方式定义应用云上架构;支持较多阿里云服务的配置和管理。用户可以方便的
对云上架构方案的成本、部署、运维、回收进行全生命周期的管理。
详见:https://www.aliyun.com/product/developerservices/cadt
文档版本:20210810 IV
7自建K8S集群迁移ACK弹性裸金属集群 目录
目录
文档版本信息..................................................................................................................................................................I
..........................................................................................................................................................................
法律声明 I
.................................................................................................................................................................................
前言 II
目录................................................................................................................................................................................V
................................................................................................................................................................
最佳实践概述 1
前置条件........................................................................................................................................................................1
........................................................................................................................................................................
资源规划 2
........................................................................................................................................................
1. 环境部署 5
2.模拟线下IDCK8S环境.......................................................................................................................................11
....................................................................................................................................
2.1. 配置ECS实例 11
2.2. 配置NAT网关....................................................................................................................................14
..................................................................................................................................
2.3. 部署数据库环境 16
......................................................................................................................................
2.4. 部署应用环境 21
2.4.1. 验证数据库访问,网络认证配置..............................................................................................21
....................................................................................................................
2.4.2. 各节点安装Docker 24
2.4.3. 创建自定义镜像..........................................................................................................................26
..............................................................................................................................
2.4.4. 配置应用程序 30
..................................................................................................................
2.4.5. 打包分发自定义镜像 35
2.4.6. 各节点安装K8S程序包............................................................................................................36
............................................................
2.4.6.1. master节点初始化K8S,加入三个node节点 37
2.4.6.2. master节点网络配置........................................................................................................38
.......................................................................................................
2.4.6.3. magentoServer部署 41
.......................................................................................................
2.4.7. 配置DNS解析,登录验证 42
3. 部署云上环境......................................................................................................................................................48
..............................................................................................
3.1. 创建容器镜像仓库,上传自定义镜像 48
3.2. 创建配置RDS数据库环境并同步数据...........................................................................................54
........................................................................................................................
3.2.1. 配置RDS数据库 54
.......................................................................................................................
3.2.2. 配置PrivateZone 60
3.2.3. 创建数据库DTS迁移链路........................................................................................................63
................................................................................................................
3.3. 创建部署K8S应用和服务 66
3.4. 配置双向同步链路..............................................................................................................................70
..................................................................................................................
3.4.1. 确定数据库迁移状态 70
............................................................................................................
3.4.2. 启动DTS双向同步链路 71
3.4.2.1. 修改单向同步为双向同步..................................................................................................71
......................................................................................................
3.4.2.2. 重新配置正向同步链路 73
3.4.2.3. 配置反向同步链路..............................................................................................................75
......................................................................................................
3.4.2.4. 双向同步链路建立完成 77
...................................................
3.5. 应用端数据写入验证,IDC和ACK环境故障切换和加权轮巡 78
3.5.1. 开通并配置全局流量管理..........................................................................................................78
......................................................................................................................
3.5.2. 配置全局流量管理 80
3.5.3. IDC自建K8S集群应用端创建用户,线上ACK集群登录验证..........................................86
文档版本:20210810 V
8自建K8S集群迁移ACK弹性裸金属集群 目录
3.5.4. IDC验证ACK集群写入数据....................................................................................................94
..............................................................................................................................................................................
F&Q 96
文档版本:20210810 VI