在上云服务器迁移的过程中最烦的可能就是操作系统镜像的迁移操作了,如果在本地操作系统中已经有了非常复杂的软件部署这时候迁移上云或者在不同公有云之间迁移就让不少人犹豫不决了。而阿里云提供的迁云工具就是为这个迁移痛点而生的。
介绍 迁云工具直接使用公网迁移用户的系统,无需占用额外的本地存储空间,大大减轻了迁移的负担和迁移成本;同时本工具在易用性方面做了很多努力,相比以前的版本工具极大的简化了使用条件、降低了使用门槛,使用户的系统一键迁移到阿里云成为可能。 总而言之它的特性就是:操作复杂度低,迁移速度块,系统还原度高。 迁云工具支持的镜像包括:Windows Server 和常见的主流 Linux 发型版,支持P2V(物理机迁云)、V2V(虚拟机/公有云迁云)。
注意: 因为会临时开通一个按量ECS进行同步所以阿里云账户余额需要大于等于 100 元 需要为可连接公网的 物理机、虚拟机、公有云 服务器
教程 教程中以腾讯云 CVM 为例介绍 Linux 发型版的迁移,将腾讯云·上海地域的镜像迁移至阿里云上。建议带宽较小的实例可以考虑制作一个自定义镜像并用此镜像创建一个按流量计费100M带宽的按量实例,如果是物理机传输量非常大还可以考虑使用阿里云的高速通道服务建立传输专线。
准备 安装基础库 一、安装基础必备软件 Rsync 库: CentOS、RHEL: yum install epel-release -y yum install rsync git python python-pip –y Debian、Ubuntu: apt install rsync git python python-pip –y
编译安装 cloud-init 一、下载 cloud-init 源码: git clone https://git.launchpad.net/cloud-init cd cloud-init 二、安装 Python 库依赖: pip install -r requirements.txt 三、编译安装: python setup.py install 四、修改配置文件: mv /etc/cloud/cloud.cfg /etc/cloud/cloud.cfg.bak cd /etc/cloud/ wget https://gitee.com/yunvy/codes/p0omxzqs8ecaj5iwtu9b175/raw?blob_name=cloud.cfg -O cloud.cfg
创建权限子账户 由于期间操作是自动通过命令行实现的,所以需要用到一个 Access Key 的过程,但是默认的 Access Key 是全局全权限的,所以我们应该使用 访问控制 RAM 来创建一个只有 ECS 管理权限的子账户。 不过由于篇幅限制不适合再展开讲访问控制了,查看第四步 四、在开通访问控制服务中的步骤。
下载迁云工具 一、下载源码包 cd /root/ wget http://p2v-tools.oss-cn-hangzhou.aliyuncs.com/Alibaba_Cloud_Migration_Tool.zip unzip Alibaba_Cloud_Migration_Tool.zip 二、解压后会有两个压缩包,一个是 Linux 一个是 Windows 的,很清楚,我们当然是 Linux。 [root@VM_199_173_centos ~]# unzip Alibaba_Cloud_Migration_Tool.zip Archive: Alibaba_Cloud_Migration_Tool.zip inflating: go2aliyun_client1.2.5_linux.zip inflating: go2aliyun_client1.2.5_windows.zip 三、解压 Linux 工具包: unzip go2aliyun_client1.2.5_linux.zip cd go2aliyun_client1.2.5_linux/ 四、目录中有两个目录: [root@VM_199_173_centos go2aliyun_client1.2.5_linux]# ls go2aliyun_client1.2.5_linux_i386 go2aliyun_client1.2.5_linux_x86_64 i386 即 32位系统的,x86_64 即 64 位系统的,不过服务器默认都用 64 位的,所以我们进 go2aliyun_client1.2.5_linux_x86_64 目录。 cd o2aliyun_client1.2.5_linux_x86_64
配置 一、修改 user_config.json 文件,这个一个 json 配置文件 { "access_id": "", "secret_key": "", "region_id": "", "image_name": "", "system_disk_size": 40, "platform": "", "architecture": "", "data_disks": [], "bandwidth_limit": 0 } 具体参数介绍:
所以,我就可以创建出一个配置文件为: { "access_id": "LTAIXeadblog.juncdt.com", "secret_key": "VHVQ1Tzblog.juncdt.comvH8pIMoMSA", "region_id": "cn-shanghai", "image_name": "JuncDT-QIANYUN-IMAGE-001", "system_disk_size": 50, "platform": "CentOS", "architecture": "x86_64", "data_disks": [], "bandwidth_limit": 0 } 特别注意的是 platform 一定要注意大小写! 二、rsync_excludes_linux.txt 中的目录是不进行迁移的目录,以避免不必要的空间浪费,我们可以在里面自行添加不必要的目录。
迁移 cd /root/go2aliyun_client1.2.5_linux/go2aliyun_client1.2.5_linux_x86_64 chmod +x ./go2aliyun_client ./go2aliyun_client 然后就会自动创建一个所选地域的临时按量 ECS 进行同步,同步完成后就会自动创建一个快照并创建为自定义镜像。 这时候我们就啥都不用管了,冲一杯咖啡,小憩一会儿就是了。 出现 Enter any key to Exit... 就表示我们迁移已经完成了。
然后在快照列表就可以看到,创建的这个快照:
当然最终我们还是要用这个快照创建的自定义镜像来进行ECS云服务器的创建。
相关主题 |