📅  最后修改于: 2021-01-08 04:58:16             🧑  作者: Mango
人偶模块是文件,类,模板和资源的集合。每个模块处理基础架构中的特定任务,例如安装和配置软件。
由于模块允许您将代码分为多个清单,因此在组织p代码方面非常有帮助。模块是人偶中的可重用和共享的单元。
必须在人偶模块路径中安装模块。模块路径是/ etc / puppet / modules目录。
在任何Puppet模块中,我们都有两个分区,这使我们能够定义代码的结构并控制面额。
[puppetmasterd]
...
modulepath = /var/lib/puppet/modules:/data/puppet/modules
木偶允许在其他位置存储模块。我们可以将模块存储在机器的其他文件系统中。只有一种情况是必须在称为模块路径的配置变量中定义模块的所有路径。 modulepath是路径变量,其中puppet在其中搜索所有模块目录,并在启动时加载所有模块目录。
默认路径是:
/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 Forge中有超过6,000多个预先存在的模块。
让我们看看下载和安装这些预先存在的人偶模块的步骤。
在这里,我们将从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 module install dhoppe-vim --version 1.4.1