使用puppet配置本网站

以下只是一个示例,描述LNMP使用puppet配置的大致方案,里面的用户名和密码不是真实数据。

LNMP主要包含nginx,mysql,php和网站(site,这里是blog)模块。文件结构如下:

顶层的site.pp如下:

nginx其实很简单,就是package+service。

php也不难,这里仅安装了php5-fpm和php5-mysql。

mysql稍微复杂点,需要通过exec设置root password(参考这里),另外注意service的名字可能不是mysqld,而是mysql。mysql root password在site.pp中设定。

最后是最重要也是最复杂的网站设定,主要包括创建数据库,设置网站的nginx配置和复制wp-config.php(基于wordpress)。

nginx.conf.erb的内容如下(/var/www/blog是wordpress的目录,全新的,未作任何修改):

wp_config.php基本上只改了数据库配置,这里就不放了。最后,执行puppet apply,一个网站瞬间就OK了,是不是很爽啊?