割接驗(yàn)證
本文介紹批量助手功能的使用流程,幫助您快速掌握如何使用割接計(jì)劃功能進(jìn)行遷移后的割接驗(yàn)證。
支持產(chǎn)品以及驗(yàn)證方法
支持的產(chǎn)品 | Count | TopN | SumX | CheckSum |
MySQL | 獲取Table的row數(shù)量 | 獲取Table的前n個row并比較 | 獲取Table的指定字段的和 | 獲取Table的校驗(yàn)和 |
Redis | 給定key, 對value利用其size做校驗(yàn)。 | 給定key, 對value中的N個屬性做比較 | 抽樣/選定一定數(shù)量(100)個key,比較源端和目標(biāo)端的value | 暫不支持 |
MongoDB | 獲取Collection的document數(shù)量 | 獲取Collection的前n個document并比較 | 獲取Collection的指定字段的和 | 暫不支持 |
ElasticSearch | 獲取Index中的document數(shù)量 | 獲取Index的前n個document并比較 | 暫不支持 | 暫不支持 |
Redis有序結(jié)構(gòu)利用topN做抽樣校驗(yàn),無序結(jié)構(gòu)用Size做比較。
1. 啟動Agent
在云遷移中心頁面,依次點(diǎn)擊割接->割接驗(yàn)證進(jìn)入產(chǎn)品界面,首次進(jìn)入會看到Agent在線狀態(tài)是離線的,因此需要先將Agent在服務(wù)器上啟動。
1.1 申請License
首次使用或License過期時(shí)需要申請License,點(diǎn)擊申請License按鈕即可。
之后,可以在彈窗中對License進(jìn)行復(fù)制。
完成后可以看到License的有效時(shí)間,若過期再次點(diǎn)擊即可。
1.2 下載工具包
點(diǎn)擊下載Agent工具包,解壓后得到三個文件
其中agent.jar是運(yùn)行的jar包,datasource.config是數(shù)據(jù)源相關(guān)配置,start.sh是啟動腳本。
1.3 修改數(shù)據(jù)源配置參數(shù)
首先需要打開datasource.config,修改數(shù)據(jù)源配置:
第一行為源端的相關(guān)信息。第二行為目標(biāo)端的相關(guān)信息。每一行共有6個配置項(xiàng),以英文逗號(,)分隔,其中:
name:數(shù)據(jù)源的名字,可以自定義去配置,需要保證名字唯一,會在控制臺進(jìn)行展示和選擇。
type:數(shù)據(jù)源的類型,當(dāng)前僅支持MySQL、Redis、MongoDB、ES(區(qū)分大小寫)。填寫內(nèi)容參考下面的數(shù)據(jù)源枚舉值。
host:連接的IP地址,用戶根據(jù)不同的數(shù)據(jù)源去做不同的配置。
port:端口號。
username:用戶名。Redis若沒有用戶名則可以不填寫,需要置為空,不可省略該項(xiàng)。
password:密碼。
數(shù)據(jù)源type枚舉值:
支持的數(shù)據(jù)源類型 | MySQL | Redis | MongoDB | ElasticSearch |
配置文件中對應(yīng)的type | MySQL | Redis | MongoDB | ES |
1.4 修改腳本
配置好數(shù)據(jù)源相關(guān)的信息之后,需要修改啟動腳本start.sh:
java -jar agent.jar
--agent.config_file=datasource.config
--agent.hostPublicAddress=hostPublicAddress
--agent.hostPrivateAddress=hostPrivateAddress
--agent.license=yourLicense
--access_key=your_access_key
--secret_key=your_secret_key
--endpoint=apds.cn-hangzhou.aliyuncs.com
--server_port=your_port
--region=cn-hangzhou
其中:
agent.config_file:配置的是1.2中的數(shù)據(jù)源配置文件。
agent.hostPublicAddress:公網(wǎng)模式配置的是能夠直接進(jìn)行訪問的地址,當(dāng)前僅支持HTTP請求,且包含端口號(格式為:http://111.111.XXX.XXX:8086,這里的端口號要與server_port配置的端口號保持一致)。私網(wǎng)連接模式下,該地址可以為空,但是不能刪除該配置項(xiàng)(即保留"--agent.hostPublicAddress= "即可)。
Agent所在的ECS安全組打開端口入方向,來源限制出口IP見產(chǎn)品界面管控操作提示。
通過SLB或WAF轉(zhuǎn)發(fā)方式暴露到公網(wǎng)。
agent.hostPrivateAddress:私網(wǎng)模式地址。在私網(wǎng)連接模式下,agent部署的私網(wǎng)地址,當(dāng)前僅支持HTTP請求,且包含端口號(格式為:http://192.0.168.XXX:8086,這里的端口號要與server_port配置的端口號保持一致)。在公網(wǎng)連接模式下可以為空,但是不能刪除該配置項(xiàng)(即保留"--agent.hostPrivateAddress= "即可)。
agent.license:用戶在CMH控制臺看到的與CMH交互的license憑證。注意,這里的配置必須與在CMH控制臺查看的保持一致,否則校驗(yàn)不通過,會導(dǎo)致功能無法正常使用。
access_key:用戶阿里云賬號的AK,需要授權(quán)CMH的fullaccess權(quán)限策略(AliyunAPDSFullAccess)。
secret_key:用戶阿里云賬號的SK,需要授權(quán)CMH的fullaccess權(quán)限策略(AliyunAPDSFullAccess)。
endpoint: 配置endpoint。默認(rèn)為中國的apds.cn-hangzhou.aliyuncs.com。如果用戶要訪問國際站,請將endpoint修改為apds.ap-southeast-1.aliyuncs.com。
server_port: 用戶自行配置的端口號。默認(rèn)為8086。這里的端口號與host里面的端口號要保持一致。
region:agent部署的地域(如cn-hangzhou,不能為空)。
若使用公網(wǎng)模式連接,則需要配置agent.hostPublicAddress,agent.hostPrivateAddress置為空即可。私網(wǎng)鏈接反之。
若使用私網(wǎng)連接模式,agent部署機(jī)器必須保證能訪問到CMH的服務(wù)。無論使用私網(wǎng)連接模式還是公網(wǎng)連接模式,agent.hostPublicAddress和agent.hostPrivateAddress配置項(xiàng)都不能同時(shí)為空。
1.5 啟動服務(wù)
注意:agent部署的機(jī)器必須保證能夠訪問到配置的數(shù)據(jù)源(例如數(shù)據(jù)庫需要給服務(wù)器加白等)。
修改完之后執(zhí)行下列命令,啟動服務(wù)即可:
sh start.sh
啟動之后可以看到服務(wù)已經(jīng)順利啟動,之后在控制臺上進(jìn)行操作即可。
1.6 注意事項(xiàng)
當(dāng)agent關(guān)閉之后,會產(chǎn)生.db的數(shù)據(jù)庫文件,用戶需要在下一次啟動agent之前刪除該文件,否則會出現(xiàn)數(shù)據(jù)源混淆的問題,從而導(dǎo)致agent不能正常啟動,如下圖:
需要刪除數(shù)據(jù)庫文件刪除之后,agent便可以正常啟動。
2.連接網(wǎng)絡(luò)
完成Agent啟動之后,返回CMH控制臺,可以看到Agent狀態(tài)變成了已啟動(網(wǎng)絡(luò)未連接)狀態(tài),單擊去連接。
2.1公網(wǎng)連接
在彈出的彈窗中選擇公網(wǎng)連接,根據(jù)提示在ECS安全組打開端口入方向的IP限制,單擊確認(rèn)按鈕即可。
連接完成后可以看到agent狀態(tài)為在線狀態(tài)。
2.2私網(wǎng)連接
當(dāng)前僅杭州region支持私網(wǎng)連接模式,如您在其他region下有私網(wǎng)連接校驗(yàn)的需求,請您和我們聯(lián)系。
在彈出的彈窗中,選擇私網(wǎng)連接后,單擊下一步。
在第二步,您可以看到CMH提供給您的終端節(jié)點(diǎn)服務(wù)信息。之后需要您前往VPC控制臺(單擊前往VPC控制臺,)創(chuàng)建反向終端節(jié)點(diǎn)(請確保選擇的是我們向您提供的終端節(jié)點(diǎn)服務(wù))。
在跳轉(zhuǎn)的專有網(wǎng)絡(luò)控制臺中,選擇反向終端節(jié)點(diǎn),單擊創(chuàng)建終端節(jié)點(diǎn)。
完成表單填寫,創(chuàng)建終端節(jié)點(diǎn),注意這里選擇終端節(jié)點(diǎn)服務(wù)需要核對是否與CMH控制臺中提示的CMH終端節(jié)點(diǎn)服務(wù)信息一致。
a. 當(dāng)前僅支持杭州region的私網(wǎng)連接模式,如您在其他region有私網(wǎng)連接進(jìn)行數(shù)據(jù)校驗(yàn)的需要,請與我們聯(lián)系。
b. 在杭州region下,創(chuàng)建反向終端節(jié)點(diǎn)時(shí),選擇的vswitch一定保證是可用區(qū)I。(如您沒有滿足條件的vswitch,請創(chuàng)建之后重新配置)。
創(chuàng)建終端節(jié)點(diǎn)之后,請您耐心等待,確保終端節(jié)點(diǎn)的狀態(tài)為可用時(shí)再進(jìn)行下一步。
完成終端節(jié)點(diǎn)創(chuàng)建之后,返回CMH控制臺,單擊下一步按鈕,
選擇剛才創(chuàng)建的終端節(jié)點(diǎn),單擊確認(rèn)按鈕,首次配置連接時(shí)間可能較長,請稍作等待。
連接完成后可以看到agent狀態(tài)為在線狀態(tài)。
3. 創(chuàng)建割接計(jì)劃
3.1 新建割接計(jì)劃
完成agent啟動和連接網(wǎng)絡(luò)之后,可以看到agent已經(jīng)變成在線狀態(tài)。點(diǎn)擊新建割接計(jì)劃按鈕,填寫基本信息完成割接計(jì)劃的創(chuàng)建。
填寫完成后,點(diǎn)擊確認(rèn)按鈕即可完成創(chuàng)建。
3.2 創(chuàng)建校驗(yàn)任務(wù)
點(diǎn)擊計(jì)劃名稱進(jìn)入目標(biāo)計(jì)劃的詳情頁,然后點(diǎn)擊新建任務(wù)按鈕,進(jìn)行校驗(yàn)任務(wù)的創(chuàng)建。
或者在創(chuàng)建割接計(jì)劃時(shí),可以直接點(diǎn)擊確認(rèn)并創(chuàng)建校驗(yàn)任務(wù)按鈕進(jìn)行校驗(yàn)任務(wù)的創(chuàng)建。
進(jìn)行表單填寫后點(diǎn)擊下一步按鈕,目前共支持4種驗(yàn)證方式:Count,CheckSum,SumX,TopN(需要額外填寫排序數(shù)量N)。
系統(tǒng)會將選擇的源端庫中的表解析并展示,選擇需要進(jìn)行數(shù)據(jù)校驗(yàn)的表后點(diǎn)擊下一步。
CMH提供了正向選擇(校驗(yàn)選中的表),反向選擇(校驗(yàn)選中的表以外的所有表),全部(校驗(yàn)全部表)三種選擇方式。
最后,確認(rèn)選擇的校驗(yàn)表是否符合預(yù)期,完成后點(diǎn)擊保存按鈕,即可完成校驗(yàn)任務(wù)的創(chuàng)建。
注意:若選擇的是SumX的校驗(yàn)方法,需要在校驗(yàn)范圍確認(rèn)階段選擇驗(yàn)證字段。
若選擇的是TopN的校驗(yàn)方法,則需要額外在校驗(yàn)范圍確認(rèn)階段選擇驗(yàn)證字段和排序字段。
驗(yàn)證字段:根據(jù)所選擇的字段進(jìn)行數(shù)據(jù)校驗(yàn)。
排序字段:根據(jù)驗(yàn)證結(jié)果進(jìn)行排序展示的字段。
3.3 發(fā)起校驗(yàn)任務(wù)
校驗(yàn)任務(wù)創(chuàng)建完成后,可以點(diǎn)擊發(fā)起驗(yàn)證按鈕直接發(fā)起所有校驗(yàn)任務(wù)。同時(shí)也支持勾選后,點(diǎn)擊批量發(fā)起驗(yàn)證按鈕進(jìn)行部分任務(wù)的發(fā)起。
點(diǎn)擊發(fā)起任務(wù)后,任務(wù)的狀態(tài)會置為驗(yàn)證中,等待后刷新頁面即可觀察到任務(wù)的執(zhí)行結(jié)果。
若發(fā)現(xiàn)執(zhí)行結(jié)果不符合預(yù)期,支持?jǐn)?shù)據(jù)訂正之后,點(diǎn)擊重新運(yùn)行任務(wù)按鈕,重新發(fā)起校驗(yàn)。