在 Ubuntu 20.04 上安装和配置 Puppet在 Ubuntu 20.04 上安装和配置 Puppet在 Ubuntu 20.04 上安装和配置 Puppet在 Ubuntu 20.04 上安装和配置 Puppet
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

在 Ubuntu 20.04 上安装和配置 Puppet

Puppet 是一种流行的配置管理工具,可以简化大规模管理基础设施的过程。它允许您跨多个服务器和环境自动配置、配置和部署应用程序和服务。

Puppet 可以帮助您将基础设施的所需状态定义为代码(称为“清单”)。清单指定您希望 Puppet 管理的资源和配置,例如包、文件、用户和服务。 Puppet 确保目标系统上资源的实际状态与清单中定义的所需状态匹配。

Puppet 提供了令人兴奋的功能,例如声明性语言、资源抽象、幂等性、基于代理的架构和可扩展性。本教程提供了有关如何在 Ubuntu 20.04 上安装和配置 Puppet 的分步指南。

在 Ubuntu 20.04 上安装 Puppet 的先决条件

在 Ubuntu 20.04 上安装 Puppet 之前,您需要确保您的系统满足以下要求:

  1. 在目标系统上安装 Ubuntu 20.04

  2. 具有 sudo 权限的用户帐户

  3. 稳定的互联网连接,用于下载和安装所需的软件包

  4. 有足够的磁盘空间来安装和运行 Puppet

此外,您可能需要配置防火墙以允许 Puppet 服务器和代理以及任何其他所需端口之间的通信。您可能还需要配置 DNS 或主机文件条目来解析 Puppet 服务器的主机名。

在 Ubuntu 20.04 上安装 Puppet 的分步指南

满足先决条件后,您可以使用以下步骤在 Ubuntu 20.04 上安装 Puppet:

第 1 步:更新系统上的软件包索引使用以下命令更新软件包:

sudo apt update

该命令的输出如下所示:

此输出表明 Ubuntu 焦点 (20.04) 版本的软件包列表已更新,并且当前没有可用的新更新。输出还显示检查更新的源,例如主存储库和安全存储库。

第 2 步:安装 Puppet 存储库和依赖项使用以下命令安装必要的 puppet 存储库:

sudo apt install curl ca-certificates gnupg2
curl https://apt.puppet.com/DEB-GPG-KEY-puppet | sudo apt-key add -
echo "deb http://apt.puppet.com $(lsb_release -sc) puppet7" | sudo tee /etc/apt/sources.list.d/puppet7.list
sudo apt update

第一个命令安装三个软件包——curl、ca-certificates 和 gnupg2。如果这些软件包已安装,您将看到一条消息,指出它们已经是最新的。第二个命令将 Puppet 存储库 GPG 密钥添加到系统的可信密钥列表中。

第三个命令将 Puppet 存储库添加到系统的软件源列表中。在本例中,它添加了 Puppet 版本 7 的源,并使用“lsb_release –sc”命令的输出来确定系统上当前运行的 Ubuntu 版本的代号。

最后,第四个命令更新系统的软件包列表,包括新添加的 Puppet 存储库。输出显示了哪些存储库已更新,并表明可以升级 24 个包。

第 3 步:安装 Puppet 服务器和代理程序包继续使用以下命令安装 Puppet 服务器和代理程序包:

sudo apt install puppetserver puppet-agent

步骤 4:启用 Puppet 服务器和代理包使用以下命令启用 Puppet 服务器和代理包:

sudo systemctl start puppetserver
sudo systemctl enable puppetserver
sudo systemctl start Puppet
sudo systemctl enable Puppet

第 5 步:配置 Puppet 代理配置 Puppet 代理以与 Puppet 服务器进行通信。编辑 /etc/puppetlabs/puppet/puppet.conf 文件并将服务器参数设置为 Puppet 服务器的主机名。

第 6 步:测试通信使用以下命令测试 Puppet 服务器和代理之间的通信:

sudo /opt/puppetlabs/bin/puppet agent –test

示例输出如下所示:

此输出显示 Puppet 代理正在执行测试运行并应用当前配置版本。它首先创建一个新的 SSL 证书请求,然后检索插件信息、缓存证书、检索要应用的资源目录,最后应用配置。

创建和管理 Puppet 模块

Puppet 模块是可重用的代码集合,其中包含用于管理基础架构特定方面(例如安装包或配置服务)的资源和配置。要创建和管理 Puppet 模块,您可以按照以下步骤操作:

第 1 步:创建模块目录结构您可以使用以下代码来实现此目的:

sudo mkdir -p /etc/puppetlabs/code/environments/production/modules/mymodule/{manifests,files,templates}

步骤 2:创建清单文件使用以下命令创建清单文件:

sudo nano /etc/puppetlabs/code/environments/production/modules/mymodule/manifests/init.pp

完成后,添加所需的资源和配置,例如:

class mymodule {
  package { 'nginx':
    ensure => 'installed',
  }
  service { 'nginx':
    ensure => 'running',
    enable => true,
  }
}

示例输出如下图所示:

此输出表明 Puppet 代理已成功应用 mymodule 配置并安装并启动 Nginx 服务。通知消息显示 Puppet 已经编译了资源目录,然后创建了一个 Package 资源来安装 Nginx,随后创建一个服务资源以确保 Nginx 正在运行并启用。

步骤 3:将模块应用到目标系统继续将模块应用到目标系统,如下所示:

sudo /opt/puppetlabs/bin/puppet apply -e 'include mymodule'

该命令的输出类似于以下示例:

您还可以从 Puppet Forge(社区贡献的模块存储库)下载并使用现有模块。

结论

Puppet 是一款功能强大且灵活的配置管理工具,可让您大规模自动化和管理基础架构。借助 Puppet,您可以使用 Puppet 语言定义基础设施的所需状态,并在多个节点和环境中一致地应用更改。

©2015-2025 艾丽卡 support@alaica.com