前言
最近由于腾讯云服务器快到期了,就想把上面的资料和测试留下的服务迁移到阿里云上。原因是个人在阿里云上有一个镜像,镜像里有各种实验留下来的资料。通常是把这个镜像当做了一个备份,需要时也可开启上面的服务。这篇文章主要是记录的遇到的问题。
迁移镜像
由于镜像当初是放到了国外的可用区,使用自定义镜像创建云服务器是不可以跨地域的。就是说 同一个/不同账号 无法使用杭州的自定义镜像,去创建北京的云服务器。这时就需要把镜像复制到需要创建云服务的区域。
区域最好是和腾讯云服务器的区域在一个地区,例如都在上海。如果一个在美国,一个在上海,传输数据当然就慢了。
复制镜像可把镜像复制到其他地域
共享镜像可把镜像共享到其他账号
<1>复制镜像
<2>选择要复制到的地区,编辑镜像名称
可选择加密
<3>进入该账号复制时指定的目标地域,等待即可
待完成后,旧镜像可删除或者验证新镜像后再删除。每一个镜像都是要收费的。
创建云服务器
可手动根据镜像创建一个云服务器,或使用阿里云API脚本,启动模板等方式创建一个按量付费的云服务器,先测试新镜像是否有问题。
问题
使用迁移后的新镜像创建的云服务器出现一些问题。
<1>分配了公网ip和私有ip。外网使用一台主机无法ping通公网ip。
<2>使用Workbench连接公网ip或私网ip 提示网络不通,有可能安全组需要添加白名单
查看安全组,安全组使用自定义,但是并不会导致这个问题,远程端口 也没有对访问IP进行限制
<3>使用VNC登录,查看系统后,发现没有ip,且无法ping通外网及其他ip,iptables也未启用
(当时没截图)
<4>手动配置ip,配置dns并重启后,也无法ping通外网
解决
后来发现,每在一个区域创建一个云服务器,其都会自动创建一个该区域的专有网络。如果将A区域的镜像,复制到B区域。当在B区域,使用复制的镜像创建云服务器,B区域就会创建一个专有网络,为云服务器分配该地址段的ip。
部分对网络有调整的自定义镜像这时就会水土不服,出现路由异常,导致上面的问题。
解决方法是调整路由。
<1>由于不知道该专有网络的网关ip,就使用公共镜像在此区域临时创建一个按量付费的云服器,查看它的路由
<2>进入网络有异常的云服务器,添加路由
route add default gw 172.18.255.253
<3>如果网卡配置文件是dhcp,重启一下network即可
也可配置为静态ip,网关配置为172.18.255.253
生成镜像
接着从腾讯云服务器往阿里云传数据即可。
如果想传输的快点,调整腾讯云的带宽,按量快但是相对贵点。
传输完成后,就可以使用这个实例,再创建一个镜像,将旧镜像删除。