服務一個客戶,告訴我阿里雲上跑的一臺Ubuntu包年包月虛擬機即將到期了,因爲很多種原因(不便深說)客戶認爲還是Azure得服務和體驗是很棒的,決定在到期停機之前把這臺業務虛擬機遷移到Azure上了,怎麼做呢?我想到的是之前給大家介紹過得AWS遷移至Azure文章的方法,使用ASR吧,之前的文章主要介紹了遷移Windows虛擬機,那麼這次我就給大家分享從阿里雲上遷移Ubuntu系統到Azure吧,其實不難,怎麼做呢?
在阿里雲上有一臺虛擬機Ubuntu14.04 x64,這臺就是要遷移的業務虛擬機
接下來爲了遷移這臺Ubuntu的虛擬機到Azure上,我採用Azure ASR來進行遷移,首先需要再阿里雲上新建一臺虛擬機Windows Server 2012 R2英文版作爲配置服務器,選擇機型大小
選擇操作系統及磁盤大小
設置虛擬機網絡和帶寬(這裏我懶得弄專有網絡了)
設置管理員密碼和主機名
確定訂單即可
創建實例
Windows Server 2012 R2英文版的虛擬機就創建好了
登錄進去可以看到該虛擬機有一長內部IP的網卡,一張公網IP的網卡(這點和Azure和企業內部的網絡有點不一樣,呵呵)
接下來回到Azure管理門戶,這裏我準備好了需要遷移的目標虛擬網絡和子網,這裏我就不再贅述,之前的文章有寫,這裏我新建一個ASR
下一步
在阿里的Windows Server 2012 R2服務器上下載這些配置服務器的安裝包和密鑰
等待下載完成
下載完成後執行安裝
下一步
選擇密鑰所在位置(我下載到桌面的)
下一步
安裝條件檢查
設置MYSQL的密碼
選擇NO,下一步
下一步
這裏我通過公網IP來遷移
安裝
等待安裝完成
安裝完成
點擊YES後立刻打開記事本粘貼這個生成的密碼,並將這個記事本保存到桌面上,接着重啓該服務器
點擊Cspconfigtool工具添加Ubuntu的root賬號和密碼
這裏我採用和阿里該Ubuntu一樣的計算機名進行配置
這是Azure門戶上也可以檢測到這臺配置好的Windows Server 2012 R2配置服務器了
確定
確定
創建關聯策略
完成後點擊確定
確定
啓用複製
選擇存儲賬戶和遷移到Azure的虛擬網路
添加需要遷移複製的Ubuntu的計算機名以及公網IP
等待發現成功
發現成功,確定
選擇推送Agent的賬戶,就是上面我們在Windows Server 2012 R2用Cspconfigtool工具添加Ubuntu的root賬號和密碼得那條信息,選擇即可
確定
啓用複製
復製作業開始
Windows Server 2012 R2配置服務器成功給Ubuntu推送了Agent並啓動複製
開始複製同步
等待複製同步完成
複製同步完成,是受保護的狀態
接下來我就不再執行測試故障轉移了,直接故障轉移了
開始故障轉移
請勿取消正在進行的故障轉移:在故障轉移開始前,停止 VM 複製。 如果取消正在進行的故障轉移,故障轉移會停止,但 VM 將不再進行復制;當作業處於“啓動故障轉移”時,請在阿里上將Ubuntu虛擬機關機
查看作業狀態
可以看到虛擬機開始創建
等待作業完成
這個虛擬機只能通過該虛擬網絡下的其他機器去連接或者部署了站點到站點的×××或者點到站點的×××去連接這臺虛擬機
那麼給該虛擬機加一個公網IP,點擊網絡接口
點擊圖示位置
點擊IP配置的下圖所示位置
新建一個該虛擬機的公網IP資源
保存
接下來創建一個網絡安全組
輸入新安全組的名稱和選擇資源組後點擊創建
創建好以後點擊這個新建的安全組,關聯
關聯IZ28SIQEBL2Z虛擬機的網絡接口
接下來添加入站規則SSH訪問端口
最後驗證是否可以連接
沒問題後就可以點擊完成遷移
最後再更新下源倉庫和安裝Azure Linux代理即可
參考: http://www.windowsazure.cn/zh-cn/documentation/articles/virtual-machines-linux-create-upload-vhd/
以 Ubuntu 14.04 爲例,其他Linux版本可參考以上鍊接。
在源虛擬機命令行窗口中執行,無需切換至Linux圖形界面、Windows系統或依靠Hyper-V等第三方工具。
將阿里雲映像中的現有源倉庫替換爲 Azure 源倉庫。
# cp /etc/apt/sources.list /etc/apt/sources.list.bak
# sed -i s/mirrors.aliyun.com/azure.archive.ubuntu.com/g /etc/apt/sources.list
# sed -i /aliyuncs/d /etc/apt/sources.list
添加有效的 DNS 服務器。
編輯“/etc/resolv.conf”,添加如下DNS服務器:
nameserver 8.8.8.8 #Google
nameserver 223.5.5.5 #Ali
安裝 Azure Linux Agent。(此操作將會移除NetworkManager和NetworkManager-gnome程序包)
# apt-get update
# apt-get install walinuxagent
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
備註如果執行不了apt-get update可以查詢是否之前錯誤的執行導致進程已存在
ps axu | grep apt-get
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
最後再檢查一下Agent服務是否啓動
重啓該系統就可以檢查agent的狀態是否OK
最後清理ASR,把Configuration Servers和複製策略點進去清除再刪除乾淨即可收工。
到這裏就完成阿里雲的Ubuntu虛擬機遷移至Azure上運行了。