本文概述
- 模块配置
- 模块来源
- 模块内部组织
- 安装Puppet模块
由于模块允许你将代码分为多个清单, 因此在组织p代码方面非常有帮助。模块是Puppet中可重复使用和共享的单元。
模块必须安装在Puppet模块路径中。模块路径是/ etc / puppet / modules目录。
模块配置 在任何Puppet模块中, 我们都有两个分区, 这使我们能够定义代码的结构并控制面额。
- 模块的搜索路径在puppetmasterd或masterd中配置, 并使用冒号分隔的目录列表。其他部分使用modulepath参数配置。
即::
[puppetmasterd] ... modulepath = /var/lib/puppet/modules:/data/puppet/modules
- 第二个分区是fileserver.conf中文件服务器模块的访问控制设置。我们不需要为该模块指定路径, 如果你指定该路径, 它将发出警告。
默认路径是:
/etc/puppet/modules:/usr/share/puppet:/var/lib/modules
模块内部组织 在Puppet中创建新模块时, 它使用相同的结构, 并添加以特定目录结构组织的分布式文件, 清单, 模板和插件, 如下面的代码所示。
MODULE_PATH/ downcased_module_name/ files/ manifests/ init.pp lib/ puppet/ parser/ functions provider/ type/ facter/ templates/ README
创建模块后, 它将在清单目录中的特定修复位置添加init.pp清单文件。 init.pp是一个默认文件, 该文件首先在任何模块中运行, 并且包含与该模块相关的所有类的列表。
例子
让我们看一个示例, 以创建一个autofs模块, 该模块安装固定的auto.homes映射并从模板生成auto.master:
class autofs { package { autofs: ensure =>
latest } service { autofs: ensure =>
running } file { "/etc/auto.homes": source =>
"puppet://$servername/modules/autofs/auto.homes" } file { "/etc/auto.master": content =>
template("autofs/auto.master.erb") } }
该文件系统将包含以下文件:
MODULE_PATH/ autofs/ manifests/ init.pp files/ auto.homes templates/ auto.master.erb
安装Puppet模块 开源Puppet有许多预先存在的模块。这些模块是由Puppet社区编写和开发的。任何人都可以更新现有模块。这些是内置的公共模块, 任何人都可以下载, 安装和使用它。 Puppet Forge中有6, 000多个预先存在的模块。
让我们看看下载和安装这些预先存在的Puppet模块的步骤。
在这里, 我们将从Puppet Forge下载vim模块。 Vim包含在软件包中, 该软件包是Linux操作系统中的免费开放源代码文本编辑器。
第1步:点击此处以打开官方的Puppet Forge页面。
当你单击链接时, 它将显示以下页面:
文章图片
步骤2:在搜索栏中, 输入要下载的模块的名称。在这里, 我们将下载vim模块:
文章图片
步骤3:当你点击” 搜索” 按钮时, 它将显示多个结果。选择合适的一个。要决定选择, 你可以单击各个模块以查看完整的详细信息。在我们的例子中, 我们将使用dhoppe vim。
文章图片
步骤4:要下载该模块, 请单击页面右侧的下载按钮, 我们将以tarball格式获取该模块。
文章图片
步骤5:下载完成后, 执行以下命令以从tarball安装模块:
puppet module install /path/dhoppe-vim-1.4.1.tar.gz
在上面的命令中, ” path” 是你的tarball保存目录的路径。
我们也可以在线安装Puppet模块。
【Puppet模块使用示例】要从Puppet模块工具下载并安装模块, 请执行以下命令:
puppet module install dhoppe-vim --version 1.4.1
文章图片
推荐阅读
- 看这一篇就够了!Python Openpyxl完整开发实例分析
- Puppet清单
- Puppet配置管理
- Puppet组件详解
- Puppet编码样式
- Puppet类用法示例
- 处理新SSH开发环境搭建扫描mapper文件的主要配置
- 搜狗地图下载|搜狗地图app下载
- .NET跨平台开发之Xamarin.Android介绍与生命周期