Linode跨节点迁移:从Tokyo到Fremont

背景

上一篇博客交代了如何在 Linode 上搭建邮件服务器,并配置好各种协议、记录来投入实际使用。

由于实践过程中,曾经尝试使用明文协议与服务器交流数据,可能泄露了账号、密码信息,造成之后被攻击发送垃圾邮件(详细情况类似于如下链接:链接 1,链接 2),IP 被上了黑名单,在 mail-tester.com 上的测试评分为 0 分,同时还收到了 Linode 的警告。

为了能继续使用邮箱服务,我只好想着法子给 Linode 换一个 IP。但原则上 Linode 是不支持换 IP 的。幸运的是,它支持 VPS 的迁移,而且方便快捷。从 Tokyo 节点迁移到 Fremont 节点后 IP 一般会发生变动(对于网络延迟,权衡了下大家的说法,Fremont 还不错:官方测速),这样就可以间接的更换 IP 了。

迁移过程很简单,这里做一下记录。

迁移准备

发出迁移请求

Linode 有比较完善的 Support。对于迁移这种情况,可以在 Support 页面发出如下请求:

1
2
3
4
5
6
7
Hi,

I've met with some problems with my server. And I think it's a solution to migrate my server from Tokyo to Fremont.

Could you please do me a favor?

Thanks a lot!

1 分钟之后,我就收到了技术支持的回复:

1
2
3
4
5
6
7
8
9
10
Hello,

Your migration to our Fremont datacenter has been configured. Please log into the Linode Manager, shut down, and click the migrate button to move to your new server. Your disk images will be moved with you. The migration should take approximately 10-15 minutes per gigabyte of data to complete. Please note that any existing backups for this Linode will be purged and will not be recoverable after you initiate the migration.

Your new IP address is: xxx.xxx.xxx.xxx

We ask that you begin this migration within 24 hours and let us know when it is complete. Thanks in advance!

Regards,
Jack Stitt

此时,Linode 控制面板中已经多了一个迁移的提醒:You have a migration pending!

不过先不要着急迁移,因为迁移过程是不可恢复的,我们需要首先将 VPS 中得重要数据备份到本地。注意如回复中所说,这种备份不同于 Linode 中的备份服务。

备份数据

找到一份科学的全盘备份数据方式:linode 用户通过 ssh+dd 命令复制整个磁盘。不可否认 dd 做传输比 scp 一个个拷贝文件快得多,但由于需要将整个盘 5G 数据全部通过网络传输,而家里网速慢,传输数据只有大概 100KB/s 的速度,需要等待太长时间。

实际上,我所需要备份的文件无非是/home目录下得所有数据和部分服务的配置数据(比如 postfix、dovecot、nginx 等),总共大概也就 100MB,于是决定选择性的用 scp 传输备份数据:

scp root@vps-ip:/backup /home/backup #vps-ip 替换为服务器 IP 地址

同时由于零散的传输文件效率不高,可以考虑先将服务器端所有小文件使用 tar 命令压缩到一个包里:

tar zcvf backup.gz /home /etc/nginx/sites-enable

在本地的解压缩命令如下:

tar zxvf backup.gz

当然,实际上我们都不会希望备份数据需要被使用到啦,而迁移 vps 丢失数据的概率应该也是很小的。

修改 DNS 记录

由于迁移过程需要大概一个多小时,网站服务的不可访问是无法避免了。只好尽可能将迁移过程放在深夜没有用户访问需求的时候。

从这个角度讲,DNS 的修改也没有特别的及时性要求。在前已完成前修改好 DNS 服务器中的 A 记录、MX 记录等配置即可。

迁移

在正式迁移之前,需要关闭服务器。

然后点击 Linode 控制面板中的 migration 按钮。接下来,就是一个多小时的等待。

后续

完成迁移之后,开启 VPS,还需要注意修改服务中 IP 相关的配置。比如 shadowsocks 里的 json.config 中的 server ip。

一切顺利完成后,别忘了去 Support 界面回复 Ticket =).

如果你考虑租用 Linode 机器,而又不吝啬使用我的推荐码,本博客不胜感激=).

posted @ 2014-05-26 19:49  biaobiaoqi  阅读(1267)  评论(0编辑  收藏  举报