Puppet的目录是让管理员只集中于要管理的目标,而忽略实现的细节。Puppet便可以运行在单机上,也能够以C/S结构使用。在大规模使用puppet的状况下,一般使用C/S结构,在这种结构中puppet客户端只运行puppeclient,puppet服务端只运行puppemaster。node
服务器端的puppetmaster经过fast工具分析检测客户端的主机名,而后找到项目的主配置文件manifest里面对应的node配置,并对该部份内容进行解析,fast发送过来的信息能够做为变量处理.vim
为了保证安全,Client和Master之间是基于SSL和证书Puppet会让系统保持在人们所指望的某种状态并一直维持下去,如检测某个文件并保证其一直存在,保证SSH服务始终开启,若是文件被删除了或者ssh服务关闭了,puppet下次执行时(默认30分钟)会从新建立该文件或者启动SSH服务安全
服务器名称(主机名) | IP地址 | 须要的软件 |
---|---|---|
NTPserver | 192.168.10.11 | NTPserver |
puppetmaster | 192.168.10.12 | ntpdate |
puppetclient1 | 192.168.10.16 | ntpdate、puppet |
puppetclient2 | 192.168.10.17 | ntpdate、puppet |
修改NTP服务器主机名称服务器
vim /etc/hostname NTPserver init 6
全部服务器关闭防火墙和安全功能运维
systemctl stop firewalld.service setenforce 0
NTPserver配置dom
yum install ntp -y #安装NTP vim /etc/ntp.conf #编辑配置文件 server 127.127.1.0 fudge 127.127.1.0 stratum 8 systemctl enable ntpd.service systemctl start ntpd.service #开启ntpd服务 ntpstat //查看时间同步状态
修改puppetmaster服务器主机名指定hosts文件ssh
vim /etc/hostname # 修改主机名称 puppetmaster.localdomain vim /etc/hosts #修改hosts文件 192.168.10.12 puppetmaster 192.168.10.17 puppetclient1 192.168.10.18 puppetclient2 init 6 # 重启 yum install ntpdate -y #安装ntp客户端 ntpdate 192.168.10.11 #进行时间同步 yum install puppet-server -y #安装puppet服务端 systemctl enable puppetmaster.service systemctl start puppetmaster.service #启动puppet主程序
puppetclient1,puppetclient2配置,步骤相同ide
vim /etc/hostname # 修改主机名称 puppetmaster.localdomain vim /etc/hosts #修改hosts文件 192.168.10.12 puppetmaster 192.168.10.17 puppetclient1 192.168.10.18 puppetclient2 init 6 # 重启 yum install ntpdate -y #安装ntp客户端 ntpdate 192.168.10.11 #进行时间同步 yum -y install puppet #安装puppet客户端 vim /etc/puppet/puppet.conf #修改配置文件 [main] server = puppetmaster #指明puppetmaster ......
puppetclient端:工具
puppet agent --server=puppetmaster --no-daemonize --verbose #申请注册
3d
puppet cert --list #查看申请
对未注册的进行注册:
puppet cert sign --all #对未注册的进行注册
ll /var/lib/puppet/ssl/ca/signed/ #经过目录查看已经注册的客户端