[MediaTemple]从(dv)3.0升级到3.5

从(dv)3.0升级到(dv)3.5,其实我理解最大的差别就是php5, centos5了,其它的也有[一些,包括硬件上的](http://paulstamatiou.com/2008/02/06/media-temple-beefs-up-dv-to-35),不管怎样,新的应该好,升级之。

升级主要依据KB里的这篇文章:[(dv) HOWTO: Using the Plesk Migration Manager](http://kb.mediatemple.net/questions/241/%28dv%29+HOWTO%3A+Using+the+Plesk+Migration+Manager),英文好的直接去看,不用听我唠叨了。

升级之前

升级的准备条件:要知道旧主机的域名(废话),有旧主机的root权限(早有了),超过50%的磁盘剩余空间(这个没问题,我们用得比较省)。

升级之前,要通过support request申请新的(dv)3.5主机,为什么要通过support request而不是直接下订单购买呢?我也不知道。新主机不能和旧主机使用同样的域名,可以用个假的,比如new.fwolf.com,升级完成后可以调过来。申请的时候,我还要了2个新ip,打算把旧ip全部换掉。

可能是周末的原因,反应速度稍微慢一些,将近12个小时之后才得到消息,先是一个回复说已经添加了新的主机方案(默认一年,可以调整成按月的),然后另外一个回复说ip已经添加完毕,另外还有一封Service Activation Letter邮件,告知新主机的登录信息。

由于我们并没有使用主机上的DNS,所以DNS部分的调整略过。

备份资料

首先是备份旧主机上的资料,主要是文档和数据库。

文档就是把/var/www/vhosts打包下载即可,虽然我们并没有使用太多的空间,但打包之后还是有1.5G,下载得花点时间,早知道我就在等待新主机的时候作了。

然后就是备份数据库了,这个用脚本会方便些:

# mysql -u admin -p -e "show databases;" > mysql_backup.sh

然后用vi加工一下这个文件,删掉第一行标题Database,然后用正则替换:

:%s/^\(.*\)$/mysqldump --add-drop-table --default-character-set=utf8 --user=admin --password=your_passwd --extended-insert=false \1 > \1.sql

加上可执行属性之后,就可以运行这个脚本了,会在当前目录下生成一堆sql文件,打包下载到本地即可。这个文件终于小一点,才17M。

设置新的主机

按照MT Service Activation Letter中的登录信息,登录新的主机,完成主机设置。

plesk setup step 1

hostname、默认ip都不用动,所有ip改为shared类型,并更改管理员密码。

plesk setup step 2

这些都是联系信息,按照KB中的说明,I would like to create a default client account要选中。

完事之后,简单对比了一下新、旧主机,发现除了centos和plesk有升级之外,硬件居然还略微下降了一点点,这个是旧主机的:

mediatemple old vps

这个是新主机的:

mediatemple new vps

用unixbench算了一下,果然要差一些:

Start Benchmark Run: Sun Jul 13 02:52:13 PDT 2008
 02:52:13 up 1 day,  3:19,  3 users,  load average: 0.07, 0.12, 0.05

End Benchmark Run: Sun Jul 13 03:02:39 PDT 2008
 03:02:39 up 1 day,  3:30,  3 users,  load average: 14.05, 6.09, 2.71


                     INDEX VALUES            
TEST                                        BASELINE     RESULT      INDEX

Dhrystone 2 using register variables        376783.7 10407496.2      276.2
Double-Precision Whetstone                      83.1     1363.3      164.1
Execl Throughput                               188.3     3177.3      168.7
File Copy 1024 bufsize 2000 maxblocks         2672.0    70892.0      265.3
File Copy 256 bufsize 500 maxblocks           1077.0    17388.0      161.4
File Read 4096 bufsize 8000 maxblocks        15382.0   376396.0      244.7
Pipe-based Context Switching                 15448.6   224834.4      145.5
Pipe Throughput                             111814.6   619968.9       55.4
Process Creation                               569.3    11806.2      207.4
Shell Scripts (8 concurrent)                    44.8      270.9       60.5
System Call Overhead                        114433.5   280994.4       24.6
                                                                 =========
     FINAL SCORE                                                     131.3

[原来得分是207.1的](406),只好阿Q一下,希望MT不同配置的硬件所带的vps数量不同,另外软件上的优化也能弥补一些差距。

开始升级

左边菜单里点Server,然后在右边页面的Services组中选择Migration Manager,然后点Start a new migration开始新的服务器转换:

plesk migration step 1

由于磁盘空间足够,可以一次转换,所以很方便,填上原主机名称和登录信息即可。不小心还发现/使用的是reserfs,并且默认安装耗费4%的空间,也就是大概600M。

确认之后,plesk自动到旧主机上查出信息:

plesk migration setp middle

plesk migration setp 2

当然要选择Migrate all clients and domains,同时还看到plesk还能从其它主机管理软件,比如从cPanel转换数据。Advanced里还有一些选项,包括旧主机的空间占用信息,一般不用动的:

plesk migration step 2-1

确认之后:

plesk migration step 3

设置新、旧主机上的ip对应关系,我们旧主机上有2个ip(虽然显示3个,有一个其实已经退掉了),新主机上打算大多数人用一个ip,管理后台用单独的一个,免得被封了之后连后台都进不去(plesk通过代理登录总有问题)。

下一步:

plesk migration setp 4

Mysql设置,没什么好设置的,直接继续,就可以喝茶等机器干活儿了,先备份信息:

plesk migration step 5

然后拷贝文件:

plesk migration step 5-1

传输速度10MB/s左右,基本上相当于100M局域网对拷了。拷贝完成后再逐个进行部署:

plesk migration step 5-2

最后,终于完成,不过发现了错误:

plesk migration error

好像是因为plesk没有装中文语言包,不是很严重的错误,到[Parallels](http://www.parallels.com/en/download/plesk/utilities/)下载一个语言包,在plesk -> Server -> Interface Prefenences -> Add Locale里上传语言包。网站上显示有错误,简体中文实际上是链接向荷兰语的,繁体中文链接是指向简体中文的。上传成功后又发现无法启动,原来Maximum number of language packs只有1,难道新的主机方案只能安装一个语言包?大家只能暂时都用英文界面了。

升级回顾、检查、补漏

plesk的migration只是把所有client、domain的设置和文件都压缩、拷贝、解压部署到了新主机上,其余的东西还得自己动手:

  • root账号没有开,developer tools没有安装,这两个可以在account center里作;
  • Virtuozzo -> System Services里的服务大部分都和旧主机一样,有一点不同,手工修改了;
  • root目录下的文件都需要手工拷贝过来;
  • 用户$HOME下除系统自建目录之外的文件都没有转过来,需要手工处理,比如.bashrc, .vimrc
  • chroot环境里原来配置的可执行文件都没了,需要重新配;
  • plesk中的client模板也没转换过来,需要自己重新新建;
  • Apache配置文件/etc/httpd/conf/httpd.conf,php配置文件/etc/php.ini,mysql配置文件/etc/my.cnf,需要手工处理;
  • 原来手工更改为PHP5的用户,需要参照[KB: Reverting PHP5 for (dv) 3.0 after migrating to a (dv) 3.5](http://kb.mediatemple.net/article.php?id=814)进行修改,删除原来添加的PHP5 fcgi处理部分,然后/usr/local/psa/admin/sbin/websrvmng -a -v即可;
  • 为了安装其他东西方便,这回我先装个yum,从[这里](http://rpm.pbone.net/index.php3/stat/4/idpl/8078547/com/yum-3.2.8-9.el5.centos.1.noarch.rpm.html)下载,i386的;
  • denyhosts还是要装的,从[这里](http://rpm.pbone.net/index.php3/stat/4/idpl/5781548/com/denyhosts-2.6-7.el5.kb.noarch.rpm.html)下载;
  • ssl证书,虽然是没有公信力的,但还是自己的看着舒服;

vi里中文乱码,需要编辑/etc/sysconfig/i18n,把里面的4行原来注释了的取消注释,原来没注释的加上注释,即:

# cat /etc/sysconfig/i18n 
LANG="en_US.UTF-8"
SUPPORTED="en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
#LANG="C"

这个需要重启生效。这个好像只对root有效,jail的ssh用户仍然不行,取消了chroot之后就好了;

另注:我migration的时候,虽然大部分文件都过来了,但因为语言包的原因失败了,所以有些内容可能是因为这个原因没有migration过来。

后记、感想

  • 下次再升级之前,一定把自己修改过的脚本备份打包,便于修改新主机上的配置;
  • migration的范围如果能扩大到系统配置,然后系统配置不是覆盖,而是像svn那样能智能merge就好了;
  • plesk功能虽然丰富,可速度是那么得慢,慢到我可以一边等待一边写这些记录,时不时的操作一下对写作思路还有干扰。不止我一个人这么说哦:[使用plesk的感想](http://blog.fesite.com/2007/07/02/plesk/)。
  • 现在的web服务器选择真是太多了,我知道的除了apache还有lihttpd和nginx,[鼓捣php的时候](411)还发现同一种服务还有N种实现方式,学无止境阿。

升级之后

升级结果信息总体保存在/usr/local/psa/PMM/var/2008-07-11-20.05.45.106523,这个目录下面有个archives子目录,是升级时旧服务器上打包的所有文件,确认升级没问题后,可以删掉以节省控件。如果升级完全成功,应该会自动删除这些文件吧。

还得停掉原来的旧主机,可以在Account Center里自助进行:billing > request to close,比如:

plesk migration: close old service

注意并不是一申请就立刻关闭,而是按整月计的,比如:我的旧主机是2007年7月19号租下的,migration到新主机后,新主机将从2008年7月19号开始计算日期;同时我申请关闭旧主机的时候,也只能选择在7月19号、8月19号、9月19号等没有19日关闭,也就是凑够整月。

这个简单的问题疑惑了我很久呢,嘟噜嘟噜问了客服N回,后来自己点点这个功能试试,一切就都清楚了。如果不关闭的话,下一年的账单可又是$500哦。

参考

  • [MediaTemple rolls out (dv) 3.5 for new customers…old ones have to migrate themselves (UPDATED)](http://icecrums.com/2008/02/06/mediatemple-rolls-out-dv-35-for-new-customersold-ones-have-to-migrate-themselves/)
  • [CakePHP on Media Temple (dv) 3.5](http://marcgrabanski.com/article/cakephp-media-temple-dv-3)
  • [Configuring a Media Temple (dv) Base for WordPress](http://davidseah.com/blog/comments/configuring-a-media-temple-dv-base-for-wordpress/),其中禁用apache中不需要的module值得参考,理论上可以节省一些内存使用。

Update @ 2008-07-20

补充说明一下,刚才看了一下账单,旧主机的“时间”并没有“续”到新服务器上,新服务器的钱是另外单算的,但时间确实是以19号为期限。即:旧主机不动,新主机从2008-07-11到2008-07-18还要收$11,之后才是从2008-07-19到2009-07-18的年费$500。另:ip一年是$12,应该还算便宜吧。

Update @ 2008-07-22

MT还不愿自动关闭旧主机,都21号了,我怕再出什么变故,提交了一个support request询问了一下,今天才“正式”被关闭了。我在想,如果我不要求关闭,会不会一直开下去,还不收钱呢。。。?

关闭之后再访问旧主机页面,好嘛,已经被“升级”到dv 3.5了,这次手可够快的,哼哼。

Update @ 2011-07-16

今天将主机又升级到了 DV4,再用 Unix Bench 算一下,速度大增啊,赚了:

BYTE UNIX Benchmarks (Version 4.1-wht.1)
System -- Linux fwolf.com 2.6.18-028stab091.2 #1 SMP Fri Jun 3 00:02:40 MSD 2011 x86_64 x86_64 x86_64 GNU/Linux
/dev/vzfs             30000000   8393836  21606164  28% /

Start Benchmark Run: Sat Jul 16 05:26:18 EDT 2011
 05:26:18 up  2:57,  1 user,  load average: 0.16, 0.11, 0.03

End Benchmark Run: Sat Jul 16 05:36:23 EDT 2011
 05:36:23 up  3:08,  1 user,  load average: 17.75, 7.10, 3.02


                     INDEX VALUES            
TEST                                        BASELINE     RESULT      INDEX

Dhrystone 2 using register variables        376783.7 27501042.5      729.9
Double-Precision Whetstone                      83.1     1779.1      214.1
Execl Throughput                               188.3     6382.8      339.0
File Copy 1024 bufsize 2000 maxblocks         2672.0   280904.0     1051.3
File Copy 256 bufsize 500 maxblocks           1077.0    65361.0      606.9
File Read 4096 bufsize 8000 maxblocks        15382.0  2573713.0     1673.2
Pipe-based Context Switching                 15448.6   164684.0      106.6
Pipe Throughput                             111814.6  3194647.9      285.7
Process Creation                               569.3    20258.7      355.9
Shell Scripts (8 concurrent)                    44.8     2845.5      635.2
System Call Overhead                        114433.5  2355994.7      205.9
                                                                 =========
     FINAL SCORE                                                     424.3

One thought on “[MediaTemple]从(dv)3.0升级到3.5”

Leave a Reply

Your email address will not be published. Required fields are marked *