天天看点

实战Packer创建chef server镜像

packer是一个从单一配置文件为多平台创建一致镜像的轻量级的开源工具。能够运行在主流的操作系统上,并行高效的创建多平台的虚拟机镜像,它为代码即基础结构提供了坚实的基础,通过packer较大的降低了了创建用户自定义镜像的难度,并且将创建镜像的过程从人工的随机过程变成可以配置管理代码,可测试的过程,从而减少了用户应用上云的障碍之一。下面就从实战的角度来构建一个chef server镜像来学习packer的使用。

实战Packer创建chef server镜像

然后打开终端,导航到下载目录下,执行如下命令,如果得到如下图的输出,packer就安装好了:

将其中的"variable"部分的"access_key"和"secret_key"的值替换为你自已的access key和secret key,或者在终端中执行

实战Packer创建chef server镜像

然后在<b>access key管理</b>页面点击右上角的"创建access key"按钮,创建新的access key id和access key secret,将值替换模板中或者设置如上的环境变量。

然后修改如下两行的值

在文件所在的目录执行

实战Packer创建chef server镜像

然后基于这个自定义的镜像创建ecs实例,我的结果如下图,(注:如果创建的ecs实例是经典网络,需要登录到ecs实例上手动执行user_data.sh脚本)

实战Packer创建chef server镜像

你就可以看到chef的web界面了。(注:注意更改成你自已实例的ip地地址)

实战Packer创建chef server镜像

继续阅读