如何在 Ubuntu 20.04 上安装 Puppet

Puppet 是一个开源的、自动化的 admin 用于远程执行管理任务和服务器管理的引擎。 此工具可在 Linux、Unix 和 Windows 上使用。 此配置管理工具将帮助您自动化服务器基础架构的管理和配置。 遵循本教程后,您应该已经在 Ubuntu 系统上完全设置了 Puppet 主节点和客户端节点。

本教程帮助您在 Ubuntu 20.04 Linux 系统上安装和配置 Puppet 主节点和代理节点。

先决条件

你必须有:

  • 两个或多个运行 Ubuntu 20.04 系统,一个用于主客户端和其他客户端。
  • 通过 Shell 访问所有系统 sudo 特权帐户。
  • 所有系统必须通过专用或公共网络相互连接。

步骤 1 – 配置主机

Puppet 主节点和客户端节点使用主机名相互通信。 所以最好从为每个节点分配一个唯一的主机名开始。

1. 一一登录master和各个client节点并编辑 /etc/hosts 文件:

sudo nano /etc/hosts  

2. 在每个主机文件的末尾添加以下条目:

10.132.14.239 puppetmaster puppet 10.132.14.240 puppetclient1 10.132.14.241 puppetclient2 

这里:

  • 10.132.14.239 是主节点的IP地址。
  • 10.132.14.240 是客户端节点的 IP 地址。
  • 10.132.14.242 是另一个客户端节点的 IP 地址。
  • 添加更多客户端节点,您需要

Save 你的文件和 close 它。 要使用 nano 编辑器保存文件,请按 Ctrl + X 然后输入 Y 并按 Enter 保存更改并 close 文件。

步骤 2 – 安装 Puppet Server(主节点)

现在,使用 shell 访问权限登录到 Master 节点

3.安装最新的Puppet debian包,在master节点上配置PPA:

wget https://apt.puppetlabs.com/puppet7-release-focal.deb  sudo dpkg -i puppet7-release-focal.deb  

4. 添加 PPA 后,使用以下命令更新 Apt 缓存并安装 Puppet 服务器:

sudo apt update  sudo apt install puppetserver -y  

5. 成功安装所有 Puppet 包后。 使用以下命令编辑 puppet 服务器文件:

sudo nano /etc/default/puppetserver 

默认的 Puppet 服务器文件配置为使用 2GB 内存。 如果您的服务器没有足够的内存。 将内存大小减少到 1GB 或任何其他值:

JAVA_ARGS="-Xms1g -Xmx1g -Djruby.logger.class=com.puppetlabs.jruby_utils.jruby.Slf4jLogger" 

Save 你改变和 close 木偶服务器文件。 要使用 nano 编辑器保存文件,请按 Ctrl + X 然后键入 Y 以保存更改。

6. 接下来,启动 Puppet 服务并将其设置为在系统启动时自动启动:

sudo systemctl start puppetserver  sudo systemctl enable puppetserver  

7. 服务启动后,使用以下命令验证服务状态:

sudo systemctl status puppetserver  

您将看到服务状态为正在运行。

现在,从所有客户端节点的配置开始。

第 3 步 – 安装 Puppet 代理(客户端节点)

首先,确保您已经在所有客户端节点中更新了步骤 1 中定义的主机文件条目。

8. 现在,下载并安装最新的 Puppet debian 包以在您的客户端节点上配置 PPA:

wget https://apt.puppetlabs.com/puppet7-release-focal.deb  sudo dpkg -i puppet7-release-focal.deb  

9. 配置 PPA 后,在所有客户端服务器上安装 Puppet 代理程序包。

sudo apt update  sudo apt install puppet-agent -y  

10. 一旦软件包安装完成。 编辑木偶配置文件:

sudo nano /etc/puppetlabs/puppet/puppet.conf  

将以下条目添加到 Puppet 配置文件的末尾以定义 Puppet 主节点详细信息:

[main] certname = puppetclient1 server = puppetmaster 

Save 你的文件和 close 它。

11. 接下来,在所有客户端节点上启动 Puppet 代理服务,并将其设置为在系统启动时自动启动:

sudo systemctl start puppet  sudo systemctl enable puppet  

12. 完成后,验证 Puppet 代理服务是否正常运行:

sudo systemctl status puppet  

您应该在所有代理系统上看到运行状态

第 4 步 – 签署 Puppet 代理证书

13. 您已经完成了配置。 现在,登录 Puppet 主节点并运行以下命令以列出所有可用证书:

sudo /opt/puppetlabs/bin/puppetserver ca list --all  

14. 接下来,使用以下命令签署所有客户端证书:

sudo /opt/puppetlabs/bin/puppetserver ca sign --all