本***实践以Windows Azure迁移至阿里云为例,提供了一种无须重新部署,自服务模式完成导出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
待迁移环境信息收集
1、 登陆Azure VM记录主机相关管理员用户名、密码。
2、 先将待迁移Azure VM停机,这样可以确保所有内存里的数据全部写入磁盘,否则会有数据一致性问题。
下载Azure VM镜像文件
阿里云兼容Windows Azure磁盘格式,迁移Linux系统时,只需要将原Azure的磁盘下载到用户本地即可。为了方便用户操作,以图形界面为例。
1. 找到左边的“存储”项,依次点进去,找到对应的VHD文件
2. 点击下载按钮后,这样就能下载镜像文件到本地了,下载的VHD文件大小等同于在Azure申请的存储空间大小一致,下载耗时与存储文件大小及下载者本地网络带宽有关。
3. 下载到本地文件的文件见下图,
下载到本地的VM VHD磁盘文件大小为29GB。
4. 以本实验为例,共下载了两个VHD文件,共76G大小。请大家下载VHD文件之前,先确保Azure账户有足够的余额。
阿里云存储空间申请
根据下载的VHD文件大小,需要到阿里云官网上申请一个临时OSS用于上传该镜像文件,为了使用工具上传VM磁盘文件,您需要获取AccessKey和AccessSecret Key,这两个Key是用来请求阿里云API的凭证。
1、 申请登陆aliyun.com,点击产品,再点击开放存储服务OSS
2、 申请完毕后,需要进入用户中心,
3、 点击我的服务
4、 点击左边状态栏的底部“安全认证”,
5、 如下图所示,如果没有Access Key,则列表为空,可以创建您自己的Access Key。在下图“操作”一栏中,选择“启用”,然后再点击第二栏“Access Key Secret”中的“显示”链接,记录该字符串及***栏对应的“Access Key ID”。
6、 通过界面管理控制台创建OSS Bucket,点击阿里云首页的管理控制台
7、 点击开放存储服务OSS
8、 在杭州地域新建一个用于临时暂存上传VHD文件的Bucket,读写权限选择“私有”,
填写了Bucket的基本信息后,新的Bucket实例就创建好了。
使用上传工具将VM上传至阿里云
首先下载上传工具,link地址为
http://oss.aliyuncs.com/aliyunecs/aliyun_vm_upload.tgz
使用该工具请先确认当前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] – 刚才创建的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的操作系统位数,指明32位或64位操作系统
[region id] – 指明VM未来启动的区域,可选的区域名称为cn-hangzhou cn-qingdao cn-shenzhen
[accessid]– 通过阿里云控制台获得
[accesskey] – 通过阿里云控制台获得
[threads count] – 上传并发线程数,支持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
上传成功后,工具会自动返回阿里云生成的一个镜像自定义名称,见下图红色箭头所示,请用户记录该文件名,后续可以根据该名称到阿里云控制台查询对应的自定义镜像。
在阿里云控制台使用自定义镜像创建VM并启动
VHD文件上传后,阿里云后台自动完成自定义镜像创建,用户登陆阿里云管理控制台可以使用该自定义镜像创建VM。
后续操作
为了创建的VM能够正常远程维护,建议在创建时选择一个”公网带宽”。
使用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权限,执行下列命令
sudo su - root
使用tar命令依次解压后,
使用
bash update_source.sh
bash update_ntp.sh
bash update_aegis.sh
至此,迁移工作正式完成。