Kubernetes遷移方案概述
本文整體簡(jiǎn)單介紹下如何通過(guò)6個(gè)步驟,將自建Kubernetes集群平滑遷移到阿里云Kubernetes集群,并盡量確保遷移期間對(duì)業(yè)務(wù)無(wú)影響。
遷移方案
遷移步驟
阿里云Kubernetes集群資源配置。
由運(yùn)維人員完成阿里云Kubernetes集群創(chuàng)建及集群維度資源配置,降低開(kāi)發(fā)人員應(yīng)用遷移復(fù)雜度。具體操作,請(qǐng)參見(jiàn)創(chuàng)建Kubernetes托管版集群。
集群創(chuàng)建和配置過(guò)程中,以下配置項(xiàng)為必選。
集群模板:建議您選擇托管集群Pro版。該集群的控制面由容器服務(wù)托管,您只需創(chuàng)建并管理Worker節(jié)點(diǎn),免控制面運(yùn)維。您需要承擔(dān)Worker節(jié)點(diǎn)的資源費(fèi)用。
操作系統(tǒng):您可以根據(jù)需要選擇操作系統(tǒng)。
推薦您使用阿里云Kubernetes集群默認(rèn)的操作系統(tǒng),CentOS7.6或AliyunLinux 2.1903。
若您對(duì)系統(tǒng)內(nèi)核版本有要求,可使用自定義鏡像。具體操作,請(qǐng)參見(jiàn)使用自定義鏡像創(chuàng)建ACK集群。
專有網(wǎng)絡(luò):您需要設(shè)置VPC和交換機(jī)信息。
配置 SNAT:您需要為專有網(wǎng)絡(luò)配置SNAT。
公網(wǎng)訪問(wèn):您需要使用EIP暴露API Server。
云監(jiān)控插件:您需要在ECS節(jié)點(diǎn)上安裝云監(jiān)控插件。
日志服務(wù):您需要安裝日志服務(wù)插件。
數(shù)據(jù)遷移。
數(shù)據(jù)庫(kù)遷移。
創(chuàng)建RDS數(shù)據(jù)庫(kù)。
配置數(shù)據(jù)庫(kù)白名單。
配置PrivateZone。
通過(guò)PrivateZone可以將數(shù)據(jù)庫(kù)域名解析到RDS域名,減少應(yīng)用改造。
遷移MySQL數(shù)據(jù)。
通過(guò)DTS遷移MySQL數(shù)據(jù),支持全量、增量、雙向同步。具體操作,請(qǐng)參見(jiàn)從自建MySQL遷移至RDS MySQL實(shí)例。
存儲(chǔ)遷移。
開(kāi)通OSS服務(wù)。
創(chuàng)建OSS存儲(chǔ)空間(Bucket)。
遷移存儲(chǔ)數(shù)據(jù)。
使用ossimport工具把存儲(chǔ)在服務(wù)器本地、第三方云存儲(chǔ)(S3、Azure、騰訊COS等)中的數(shù)據(jù)批量遷移到OSS。詳情請(qǐng)參見(jiàn)ossimport概述。
鏡像遷移。
創(chuàng)建ACR容器鏡像倉(cāng)庫(kù)。
設(shè)置鏡像服務(wù)訪問(wèn)憑證。
遷移鏡像數(shù)據(jù)。
使用image-syncer快速將容器鏡像批量遷移至ACR容器鏡像倉(cāng)庫(kù)服務(wù)。具體操作,請(qǐng)參見(jiàn)通過(guò)image-syncer工具遷移容器鏡像。
應(yīng)用配置遷移。
由運(yùn)維或者研發(fā)人員完成集群或者應(yīng)用配置遷移。具體操作,請(qǐng)參見(jiàn)自建Kubernetes集群應(yīng)用遷移至線上ACK集群。
應(yīng)用回歸測(cè)試。
在不影響線上流量情況下,由測(cè)試人員完成阿里云Kubernetes集群業(yè)務(wù)功能回歸測(cè)試。
配置應(yīng)用測(cè)試域名。
測(cè)試業(yè)務(wù)功能。
確認(rèn)應(yīng)用日志采集。
確認(rèn)應(yīng)用監(jiān)控。
客戶端流量切換。
由運(yùn)維人員做DNS切換,將流量切換至阿里云Kubernetes集群。
DNS流量切換:調(diào)整DNS解析配置實(shí)現(xiàn)流量切換。
客戶端流量切換:升級(jí)客戶端代碼或配置實(shí)現(xiàn)流量切換。
下線自建Kubernetes集群。
由運(yùn)維人員確認(rèn)阿里云Kubernetes集群服務(wù)訪問(wèn)正常后,下線自建Kubernetes集群資源。
確認(rèn)阿里云Kubernetes集群流量正常。
下線自建Kubernetes集群資源。
清理OSS Bucket中的備份文件。