Puppet安装详细步骤图解

在安装Puppet之前, 让我们看一些先决条件:
先决条件
在这里, 我们将使用两个安装了Ubuntu操作系统的虚拟机, 它们的静态IP地址和主机名已正确配置。

  • 一台虚拟机用于配置了静态IP地址的Puppet Master。
  • 一个虚拟机用于配置了静态IP地址的Puppet Client。
在这里, 我的虚拟机配置为:
Puppet大师:
主机名:puppetServer
IP地址:192.168.56.101
Puppet代理:
主机名:puppetClient
IP地址:192.168.56.103
我们可以通过ifconfig命令查看为虚拟机配置的IP:
$ ifconfig -a

Puppet安装详细步骤图解

文章图片
Puppet安装详细步骤图解

文章图片
删除防火墙规则
首先, 从两个VM(即Puppet Master和Puppet Agent)中删除防火墙规则。大多数Linux发行版中可用的默认防火墙是iptables。在两个VM上运行以下命令:
$ sudo iptabels -F$ sudo /sbin/iptables-save

Puppet安装详细步骤图解

文章图片
Puppet安装详细步骤图解

文章图片
编辑主机
  • 现在, 我们需要在主节点和代理节点上配置/ etc / hosts和etc / hostname文件, 以便它们能够相互通信。
$ sudo vim /etc/hostname

Puppet安装详细步骤图解

文章图片
Puppet安装详细步骤图解

文章图片
  • 在Puppet服务器和Puppet客户端计算机上编辑/ etc / hosts文件。你可以使用任何编辑器。
$ sudo vim /etc/hosts

在PuppetServer上, 输入系统的IP地址和主机名。

192.168.56.101puppetServer

Puppet安装详细步骤图解

文章图片
在PuppetClient计算机上, 键入你的puppet代理的IP地址和主机名。我们还需要指定你的Puppet主机的IP地址和为其指定的主机名。

192.168.56.103puppetClient192.168.56.101puppetServer

Puppet安装详细步骤图解

文章图片
添加存储库
  • 由于Puppet不在标准的Ubuntu发行版本存储库中, 因此我们需要添加Puppet Labs提供的自定义存储库。
在puppet主服务器和puppet代理计算机上运行以下命令。
$ wget http://apt.puppetlabs.com/puppetlabs-release-trusty.deb

Puppet安装详细步骤图解

文章图片
Puppet安装详细步骤图解

文章图片
$ sudo dpkg -i puppetlabs-release-trusty.deb

Puppet安装详细步骤图解

文章图片
Puppet安装详细步骤图解

文章图片
更新包
借助以下命令, 使用最新的软件包和存储库更新你的puppet master和puppet代理:
$ sudo apt-get update

Puppet安装详细步骤图解

文章图片
Puppet安装详细步骤图解

文章图片
在Puppet Master上启动NTP
充当Puppet主机的PuppetServer应该具有准确的系统时间。你可能应该使用NTP服务来设置确切的系统时间。在puppetServer中使用以下命令来启用NTP服务器:
$ apt-get -y install ntp$ service ntp restart

Puppet安装详细步骤图解

文章图片
你可以通过以下命令检查状态:
$ service ntp status

Puppet安装详细步骤图解

文章图片
Puppet大师安装
  • 现在, 我们将安装Puppet程序包, 它将获取所有必要的先决条件和要求。
要安装puppet master, 请在你的puppetServer中运行以下命令:
$ sudo apt-get install puppetmaster

Puppet安装详细步骤图解

文章图片
Puppet安装详细步骤图解

文章图片
  • 输出显示成功安装了Puppet大师及其运行的服务。要验证Puppet的版本, 请使用以下命令:
$ puppet -V

Or
$ puppet --version

Puppet安装详细步骤图解

文章图片
  • 使用以下命令安装Puppet common:
$ sudo apt-get install puppet-common

Puppet安装详细步骤图解

文章图片
  • 现在我们必须锁定Puppet版本的升级, 因为这会在升级Puppet时妨碍配置。在执行系统更新时, 它不会更改Puppet。我们可以通过使用以下配置创建一个新文件来进行这些设置:
$ sudo vim /etc/apt/preferences.d/00-puppet.pref

在文件中添加以下配置:
# /etc/apt/preferences.d/00-puppet.prefPackage: puppet puppet-common puppetmaster-passengerPin: version 5.4*Pin-Priority: 501

Puppet安装详细步骤图解

文章图片
Puppet安装详细步骤图解

文章图片
现在, 它不会在运行设备更新时更新Puppet。因此, 让我们在以下步骤中继续安装Puppet客户端。
  • 现在, 我们将更改Puppet配置文件。在编辑器中打开puppet服务器的puppet.conf文件, 并按如下所示配置其参数。
$ sudo vim /etc/puppet/puppet.conf

在[main]和[master]下添加新行并保存:
[main]ssldir = /var/lib/puppet/ssllogdir = /var/log/puppetrundir = /var/run/puppet[master] certname = puppetServer

Puppet安装详细步骤图解

文章图片
将所需的更改添加到配置文件后, 重新启动Puppet主服务。
$ service puppetmaster stop$ service puppetmaster start

Puppet安装详细步骤图解

文章图片
Puppet客户端安装
  • 由于我们已经安装了所有基本要求, 因此现在只需在puppetClient Ubuntu计算机上运行一个用于安装puppet代理的命令即可, 该命令将与Puppet主服务器(即puppetServer Ubuntu计算机)进行交互。
$ sudo apt-get install puppet

Puppet安装详细步骤图解

文章图片
  • 要检查Puppet的安装版本, 请使用以下命令:
$ puppet -V

Or
$ puppet --version

  • 现在, 按照与Puppet主服务器相同的步骤进行操作。我们必须锁定Puppet的版本, 以便在操作系统更新期间不会引起任何问题。
创建一个新文件:
$ sudo vim /etc/apt/preferences.d/00-puppet.pref

Puppet安装详细步骤图解

文章图片
并在文件中添加以下配置:
# /etc/apt/preferences.d/00-puppet.prefPackage: puppet puppet-common puppetmaster-passengerPin: version 5.4*Pin-Priority: 501

Puppet安装详细步骤图解

文章图片
现在, 它不会在运行设备更新时更新Puppet。因此, 让我们在以下步骤中继续配置Puppet客户端。
  • 现在, 我们将更改Puppet配置文件。在编辑器中打开puppet客户端的puppet.conf文件, 并按如下所示配置其参数。
$ sudo vim /etc/puppet/puppet.conf

注释掉[master]配置, 并在[main]和[agent]下添加新行并保存:
[main]ssldir = /var/lib/puppet/sslvardir = /var/lib/puppetlogdir = /var/log/puppetrundir = /var/run/puppet[agent] server=puppetServer

Puppet安装详细步骤图解

文章图片
  • 启动Puppet代理服务。
$ service puppet start

Puppet安装详细步骤图解

文章图片
建立安全连接
Puppet代理请求Puppet主证书以进行Puppet主和Puppet代理通信。因为在成功初始化Puppet客户端之后, 它将在接受来自Master puppet服务器的任何管理指令之前检查Puppet主服务器并发送证书请求。
一旦Puppet Master发送了证书, Puppet Agent就会生成自己的证书。然后, 它要求Puppet Master签署此证书。在Master签署此证书后, Puppet Master和Puppet Agent之间会形成安全链接。
  • 要在puppet master中生成CA证书, 请转到root用户并在puppetServer VM中运行以下命令:
$ sudo -i

上面的命令将允许用户切换到root用户。
Puppet安装详细步骤图解

文章图片
现在, 在PuppetServer上执行以下命令:
# puppet master --no-daemonize --verbose

上面的命令将创建包含适当的DNS名称的CA证书和一个Puppet主证书。
Puppet安装详细步骤图解

文章图片
我们可以忽略此警告消息。一旦收到” 通知:启动Puppet主版本5.4.0″ 消息, 请按ctrl + c, 因为我们现在无法启动Puppet主版本。
  • 现在, 启动并启用Puppet主服务。
# puppet resource service puppetmaster ensure=running

Puppet安装详细步骤图解

文章图片
# puppet resource service puppetmaster enable=true

Puppet安装详细步骤图解

文章图片
  • 现在, 将证书签名请求从Puppet代理发送到Puppet主服务器。
# $ puppet -t

Puppet安装详细步骤图解

文章图片
  • 在puppetServer中, 我们需要签署puppet代理请求的证书。要获取证书列表, 请在puppetServer计算机上运行以下命令:
# puppet cert list

Puppet安装详细步骤图解

文章图片
在这里, ” puppetclient.blr0.datrium.com” 是为PuppetClient计算机自动生成的DNS名称。
要签署Puppet代理请求的证书, 请执行以下命令:
# puppet cert sign puppetclient.blr0.datrium.com

Puppet安装详细步骤图解

文章图片
  • 签署请求的证书后, 启动Puppet代理。要启动并启用Puppet代理, 请运行以下命令:
# puppet resource service puppet ensure=running# puppet resource service puppet enable=true

Puppet安装详细步骤图解

文章图片
  • 通过在Puppet客户端计算机上运行以下命令, 我们还可以在客户端Puppet计算机上查看证书的指纹:
$ puppet agent --fingerprint

Puppet安装详细步骤图解

文章图片
【Puppet安装详细步骤图解】现在, p主机和and代理之间已建立安全连接。
因此, 我们已经成功安装并配置了一个Puppet主服务器, 并为Puppet代理设置了具有完整功能的Puppet实例的基本配置。

    推荐阅读