Puppet-Master/Agent模式實現redis主從
server1:ip 172.16.13.134 hostname server1.tingjie.com
server2:ip 172.16.13.135 hostname server2.tingjie.com
實現步驟:
1、在master端安裝puppet-server
yum install puppet-server
2、所有主機都實現名字解析:主機不多時可以使用下面這種方式,主機多時搭建DNS服務比較好。
vim /etc/hosts 添加如下行
172.16.13.133 master.tingjie.com master
172.16.13.134 server1.tingjie.com server1
172.16.13.135 server2.tingjie.com server2
所有主機時間同步:
vim /etc/chrony.conf
server 172.16.0.1 iburst
systemctl restart chronyd.service
chronyc sources 查看有幾個同步源,以及正在使用哪個源同步時間
3、master端操作:
①查看初始化過程:
puppet master -v --no-daemonize
②啟動服務:
systemctl start puppetmaster.service
ss -ntl 查看是否打開了8140端口
③修改模塊文件的權限:模塊的實現請參看博客:http://blog.51cto.com/13150617/2053837
chown -R puppet /etc/puppet/modules/redis/*
4、agent端操作:
①編輯puppet配置文件,添加一條記錄,方便以後使用命令時不用每次都指明maser是誰
vim /etc/puppet/puppet.conf
server = master.tingjie.com
②查看初始化過程:
puppet agent -v --noop --no-daemonize
5、在master端簽署請求:
puppet cert --sign server1.tingjie.com 簽署證書
puppet cert --sign server2.tingjie.com
puppet cert --
list 查看未簽署的證書
all 查看全部的證書
sign 簽署證書
revoke 吊銷證書
簽署完之後在agent端再次初始化查看一下,會發現已經緩存到證書以及吊銷列表等
6、master端定義站點清單:路徑及文件名都是固定的
vim /etc/puppet/manifests/site.pp
node 'server1.tingjie.com' {
include redis::master
}
node 'server2.tingjie.com' {
include redis::slave
}
重啟服務:
systemctl restart puppetmaster.service
7、agent端操作測試:
puppet agent -v --noop --no-daemonize
啟動服務:
systemctl start puppetagent.service
Puppet-Master/Agent模式實現redis主從