從Windows Azure Linux遷移到阿里云最佳實踐
本***實踐以Windows Azure遷移至阿里云為例,提供了一種無須重新部署,自服務(wù)模式完成導(dǎo)出Windows Azure中的虛擬機鏡像文件、并上傳至阿里云的方法。
·本文以阿里云及Windows Azure都支持的Ubuntu OS 14為例,其他Linux版本可以參考本流程。
· 阿里云支持Linux版本見URL:
http://help.aliyun.com/knowledge_detail.htm?spm=5176.775974417.3.1.dqlLNZ&knowledgeId=5974415&keyWords=&categoryId=8314830
·Windows Azure支持Linux版本見URL:
http://www.windowsazure.cn/zh-cn/documentation/articles/linux-endorsed-distributions
待遷移環(huán)境信息收集
1、 登陸Azure VM記錄主機相關(guān)管理員用戶名、密碼。
2、 先將待遷移Azure VM停機,這樣可以確保所有內(nèi)存里的數(shù)據(jù)全部寫入磁盤,否則會有數(shù)據(jù)一致性問題。
下載Azure VM鏡像文件
阿里云兼容Windows Azure磁盤格式,遷移Linux系統(tǒng)時,只需要將原Azure的磁盤下載到用戶本地即可。為了方便用戶操作,以圖形界面為例。
1. 找到左邊的“存儲”項,依次點進去,找到對應(yīng)的VHD文件
2. 點擊下載按鈕后,這樣就能下載鏡像文件到本地了,下載的VHD文件大小等同于在Azure申請的存儲空間大小一致,下載耗時與存儲文件大小及下載者本地網(wǎng)絡(luò)帶寬有關(guān)。
3. 下載到本地文件的文件見下圖,
下載到本地的VM VHD磁盤文件大小為29GB。
4. 以本實驗為例,共下載了兩個VHD文件,共76G大小。請大家下載VHD文件之前,先確保Azure賬戶有足夠的余額。
阿里云存儲空間申請
根據(jù)下載的VHD文件大小,需要到阿里云官網(wǎng)上申請一個臨時OSS用于上傳該鏡像文件,為了使用工具上傳VM磁盤文件,您需要獲取AccessKey和AccessSecret Key,這兩個Key是用來請求阿里云API的憑證。
1、 申請登陸aliyun.com,點擊產(chǎn)品,再點擊開放存儲服務(wù)OSS
2、 申請完畢后,需要進入用戶中心,
3、 點擊我的服務(wù)
4、 點擊左邊狀態(tài)欄的底部“安全認證”,
5、 如下圖所示,如果沒有Access Key,則列表為空,可以創(chuàng)建您自己的Access Key。在下圖“操作”一欄中,選擇“啟用”,然后再點擊第二欄“Access Key Secret”中的“顯示”鏈接,記錄該字符串及***欄對應(yīng)的“Access Key ID”。
6、 通過界面管理控制臺創(chuàng)建OSS Bucket,點擊阿里云首頁的管理控制臺
7、 點擊開放存儲服務(wù)OSS
8、 在杭州地域新建一個用于臨時暫存上傳VHD文件的Bucket,讀寫權(quán)限選擇“私有”,
填寫了Bucket的基本信息后,新的Bucket實例就創(chuàng)建好了。
使用上傳工具將VM上傳至阿里云
首先下載上傳工具,link地址為
http://oss.aliyuncs.com/aliyunecs/aliyun_vm_upload.tgz
使用該工具請先確認當(dāng)前Python版本在2.6到3.0之間,查看Python版本命令如下圖所示
確認Python版本符合要求后,使用工具可以上傳vhd文件,上傳工具語法說明如下
aliyun upload –ossbucket=[oss bucket] --file=[vhd file] --os=[os version] --ostype=[64|32] --region=[region id] --id=[accessid] --key=[accesskey]
[oss bucket] – 剛才創(chuàng)建的vmtest OSS bucket名稱
[vhd file] -待上傳VM的vhd文件名
[os version] – vhd文件OS版本,如
Ubuntu10.10
Ubuntu12.04
Ubuntu14.04
OpenSUSE13.1
CentOS5.4
CentOS5.7
CentOS5.8
CentOS5.10
CentOS6.3
CentOS6.5
CentOS7.0
[64|32] – OS的操作系統(tǒng)位數(shù),指明32位或64位操作系統(tǒng)
[region id] – 指明VM未來啟動的區(qū)域,可選的區(qū)域名稱為cn-hangzhou cn-qingdao cn-shenzhen
[accessid]– 通過阿里云控制臺獲得
[accesskey] – 通過阿里云控制臺獲得
[threads count] – 上傳并發(fā)線程數(shù),支持1-10個線程,建議選擇4
工具命令行顯示如下:
使用該工具上傳剛剛下載的vm-temp-vm-temp-Ubuntu14.vhd文件到用戶自己的bucket
./aliyun upload --ossbucket=071470 --file=/tmp/vm-temp-vm-temp-Ubuntu14.vhd --os=Ubuntu14.04 --ostype=64 --region=cn-hangzhou --id=XXXXX --key=XXXXX --multithread=4
上傳成功后,工具會自動返回阿里云生成的一個鏡像自定義名稱,見下圖紅色箭頭所示,請用戶記錄該文件名,后續(xù)可以根據(jù)該名稱到阿里云控制臺查詢對應(yīng)的自定義鏡像。
在阿里云控制臺使用自定義鏡像創(chuàng)建VM并啟動
VHD文件上傳后,阿里云后臺自動完成自定義鏡像創(chuàng)建,用戶登陸阿里云管理控制臺可以使用該自定義鏡像創(chuàng)建VM。
后續(xù)操作
為了創(chuàng)建的VM能夠正常遠程維護,建議在創(chuàng)建時選擇一個”公網(wǎng)帶寬”。
使用ssh連接啟動的VM,依次下載3個阿里云腳本壓縮包,分別用于更新NTP、軟件源、云盾客戶端。
腳本壓縮包下載地址:
http://oss.aliyuncs.com/aliyunecs/update_source.tgz
http://oss.aliyuncs.com/aliyunecs/update_ntp.tgz
http://oss.aliyuncs.com/aliyunecs/update_aegis.tgz
先切換用戶到root權(quán)限,執(zhí)行下列命令
sudo su - root
使用tar命令依次解壓后,
使用
bash update_source.sh
bash update_ntp.sh
bash update_aegis.sh
至此,遷移工作正式完成。