五.模板应用(添加虚拟主机)
文件存放在 templates 目录中,以*.erb 结尾
1. vim /etc/puppet/modules/httpd/manifests/init.pp
2.vim /etc/puppet/modules/httpd/templates/httpd_vhost.erb
3.vim /etc/puppet/manifests/nodes/server3.pp
4.修改配置文件 vim /etc/puppet/modules/files/httpd.conf
5.测试 (记得添加虚拟主机的解析)
Client:puppet agent --server server1.example.com --no-daemonize -vt
六.以web的方式管理puppet ( puppet-dashboard )
1.安装软件
server :
yum install -y puppet-dashboard-1.2.12-1.el6.noarch.rpm rubygem-rake-0.8.7-2.1.el6.noarch.rpm ruby-mysql-2.8.2-1.el6.x86_64.rpm
注意:
2.创建数据库
mysql -pwestos -e "create database dashboard_production character set utf8 "
mysql -pwestos -e "create user dashboard@localhost> mysql -pwestos -e "grant all on dashboard_production.* to dashboard@localhost "
3.修改配置服务
server :
vim /usr/share/puppet-dashboard/config/database.yml
------ 只留下生产环境配置
cd /usr/share/puppet-dashboard/config
rake RAILS_ENV=production db:migrate
------ 建立 dashboard 所需的数据库和表
rake time:zones:local
----- 查看本地支持的时区
puppet-dashboard 默认时区不正确,需要修改:
vim /usr/share/puppet-dashboard/config/settings.yml
4.启动服务
/etc/init.d/puppet-dashboard start
chmod 666 /usr/share/puppet-dashboard/log/production.log
/etc/init.d/puppet-dashboard-workers start
5.实时报告汇总:
server :
vim /etc/puppet/puppet.conf
/etc/init.d/puppetmaster> Client :
vim /etc/puppet/puppet.conf
puppet agent --server server1.example.com --no-daemonize -vt
访问 172.25.23.3:3000
若配置文件没有改变,则刷新后可看到绿色部分unchanged增加
若修改了配置文件,则蓝色部分changed增加
点击server3.example.com -> Recent reports -> log 可看到日志
6.在客户端安装完 puppet 后,并且认证完后,我们可以看到效果,那怎样让它自动与服务器同步呢?默认多少分钟跟服务器同步呢?怎样修改同步的时间呢,这时候我们需要配置客户端
(1) 配置 puppet 相关参数和同步时间:
vim /etc/sysconfig/puppet
PUPPET_SERVER=puppet.example.com #puppet master 的地址
PUPPET_PORT=8140#puppet 监听端口
PUPPET_LOG=/var/log/puppet/puppet.log #puppet 本地日志
#PUPPET_EXTRA_OPTS=--waitforcert=500 【默认同步的时间,我这里不修改这行参数】
(2) 默认配置完毕后,客户端会半个小时跟服务器同步一次,我们可以修改这个时间。
vim /etc/puppet/puppet.conf
[agent]
runinterval = 60 #代表 60 秒跟服务器同步一次
/etc/init.d/puppet> 七.nginx+passenger
puppet 默认使用基于 Ruby 的 WEBRickHTTP 来处理 HTTPS 请求,单个服务器使用Apache/Nginx+Passenger 替换掉 WEBRickHTTP,Passenger 是用于将 Ruby 程序进行嵌入执行的Apache 模块,实现对 puppet 的负载均衡。
gem install rack passenger
yum install -y gcc gcc-c++ curl-devel zlib-devel openssl-devel ruby-devel
passenger-install-nginx-module
确保所有的都是yes,为no的则退出,安装相应软件
脚本会自动安装 nginx 支持,按提示操作,基本就是一路回车,除了上图所示
vim /opt/nginx/conf/nginx.conf
......
mkdir /etc/puppet/rack/{public,tmp} -p
cp /usr/share/puppet/ext/rack/config.ru /etc/puppet/rack/
chown puppet.puppet /etc/puppet/rack/config.ru
/etc/init.d/puppetmaster stop
/opt/nginx/sbin/nginx -t
/opt/nginx/sbin/nginx
puppetmaster 不需要启动 , nginx 启动时会自动调用 puppet。
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com