Packer装CentOS 5.11心得

用Packer在VirtualBox中安装CentOS 5.11真是一个神奇的经历。它结合了CentOS的Kickstart无值守安装技术,使得整个过程变成一个完全自动化过程。

当然,首先你要经历一个反复试验各种设置的try and error过程。Packer 0.75还是不太稳定,比如,如果SSH配置有误而导致Packer不能登录,那么即使虚拟机创建好了,它仍旧会不分青红皂白地把整个虚拟机全部删掉。这使得你很难诊断问题的症结所在。又如,Packer的Vagrant post processor可以生成box文件(这个其实是我研究使用Packer最初动因),但是如果你把box文件指定在某个子目录下,那么Packer不会生成box文件,而且它的命令行还不会报错。变通办法只有把box文件指定在工作目录中,而不是子目录下。还有就是ssh_wait_timeout的文档说明比较误人子弟,文档认为默认值20分钟足够长了。该参数用来控制Packer等待VirtualBox执行安装程序并使得虚拟机的SSH服务可用的总的时间,超过这个时间段,Packer就认为虚拟机失败,然后就把它个停机并删除。这个参数的默认设置为20分钟,这对于像CentOS 5.x的系统本身安装比较缓慢,启动也要花上几分钟的是完全不是恰当的。根据本人经验,在VirtualBox中安装CentOS 5.11 64 bit,无论在装备了固态硬盘的MacbooPro上还是机械硬盘的Windows 7上,都需要1小时左右。

解决了以上问题的Packer虚拟机构建模板文件我Github上的vmbot项目里有完整示例。以下是链接:

https://github.com/schnell18/vmbot

 

更正: CentOS装的慢是因为kickstart文件写错了,用了通过http方式下载软件包,而不是从DVD上复制软件。但是要注意如果你要在kickstart里装超出你所用的DVD盘收录的软件包的话,这些软件不会被安装。比如kernel-devel不在CentOS 6.6的minimal CD里。

 

你可能感兴趣的:(centos)