如何在Ubuntu 14.04中安装Puppet Master和Client
时间:2020-03-05 15:32:31 来源:igfitidea点击:
Puppet是一个配置管理系统,它使我们可以定义IT基础结构的状态,然后自动执行正确的状态。
无论我们是仅管理几台服务器还是数千台物理和虚拟机,Puppet都能自动执行系统管理员通常手动执行的任务,从而节省了时间和精力,使系统管理员可以处理可带来更大业务价值的项目。
它确保一致性,可靠性和稳定性。
它还促进了系统管理员与开发人员之间的紧密协作,从而可以更有效地交付更干净,设计更好的代码。
1.配置主机
我们有2台机器:
IP地址为192.168.1.102和主机名的主控Puppet:puppetmaster
IP地址为192.168.1.103和主机名的Puppet客户端:puppetclient
现在,将这两行添加到两台机器上的/etc/hosts中
nano /etc/hosts
192.168.1.102 puppetmaster.example.com puppetmaster
192.168.1.103 puppetclient.example.com puppetclient
除了客户端和服务器都必须具有时间同步之外,还将在客户端和服务器计算机中按以下方式进行处理:
ntpdate pool.ntp.org ; apt-get update && sudo apt-get -y install ntp ; service ntp restart
2.安装Puppet软件包(客户端和主服务器)
$sudo apt-get update
客户
$sudo apt-get install puppet
主服务器
$sudo apt-get install puppet puppetmaster
现在在服务器上定义列表。
$sudo nano /etc/puppet/manifests/site.pp
package { ‘apache2′: ensure => installed } service { ‘apache2′: ensure => true, enable => true, require => Package['apache2'] } package { ‘vim’: ensure => installed } # Create “/tmp/testfile" if it doesn’t exist. class test_class { file { “/tmp/testfile": ensure => present, mode => 600, owner => root, group => root } } # tell puppet on which client to run the class node puppetclient { include test_class }
通过此配置,Puppet Master 将部署apache的安装,并将创建具有上述所有权的/tmp/testfile。
现在启动Puppet master:
sudo /etc/init.d/puppetmaster start
在Puppet客户端中定义服务器:
编辑/etc/puppet/puppet.conf并添加
sudo nano /etc/puppet/puppet.conf
puppet] server = puppetmaster.example.com # Make sure all log messages are sent to the right directory # This directory must be writable by the puppet user logdir=/var/log/puppet vardir=/var/lib/puppet rundir=/var/run
现在,运行下面的命令并开始部署。
# puppetd -server puppetmaster.example.com -waitforcert 60 -test
返回服务器并检查谁在等待
# puppetca --list
现在回到“客户端”,我们将看到:
从客户端检查测试文件是否已创建,并且具有与主服务器上定义的所有权相同的所有权600
$sudo ls -ltr /tmp/testfile
检查apache是否与
$ps -ef | grep apache2
重新加载Puppet客户端
# puppetd -v -o
现在检查apache是否已安装并正在运行
ps -ef | grep apache2