Puppet教程:配置Puppet Master

时间:2020-03-21 11:46:40  来源:igfitidea点击:

在这篇文章中,我们将继续一些初始配置。

我们将从Puppet主服务器(theitroad1)上的初始基本配置开始。
我们将浏览必要的配置文件。

Puppet.conf是puppet的主要配置文件。
在大多数发行版中,此文件位于/etc/puppet /目录下。
在大多数情况下,此文件(/etc/puppet/puppet.conf)是在安装过程中自动创建的。
但是,如果它不存在,则可以通过以下命令轻松创建它。

[root @ theitroad1~] puppetmasterd --genconfig> /etc/puppet/puppet.conf

Puppet.conf文件更容易理解,并且很容易说明。
其分为以下不同的部分。

[agent]-此部分用于提及agent的特定参数。

[master]-本节用于指定Puppet主的选项。

[main]-此部分将包含所有全局配置选项。

主要部分将包含日志目录,pid目录等选项(不要担心,我们将继续进行所有配置,请耐心等待

第一步是使用puppet master的ip及其FQDN(完全合格域名)配置/etc/hosts文件和DNS条目。

我将我的Puppet主名称保留为puppet.theitroad.com。
因此,我的主机条目将如下所示。

[root@theitroad1 ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               theitroad1.theitroad.com theitroad1 localhost.localdomain localhost
::1             localhost6.localdomain6 localhost6
192.168.0.102 theitroad1.theitroad.com puppet puppet.theitroad.com

同样不要忘记为基础设施在DNS服务器中添加相同的DNS条目。

现在,让我们配置puppet.conf文件的[master]部分。

到目前为止,我们只会在[master]部分中添加certname参数。
如果puppet.conf文件中没有master部分,请创建它。
我的主要部分如下所示。

[master]

certname = puppet.theitroad.com

现在,让我们在p主配置中配置一个重要文件。
它是site.pp文件。
该文件告诉需要将哪些配置应用于客户端(代理)。

我们将把这个site.pp文件放在/etc/puppet/manifests /目录中。
只需创建一个没有任何内容的名为site.pp的文件。
稍后,我们将在此文件中添加配置内容。

Puppet的manifests是什么?

manifests不过是一个伪造的名字,用来调用那些包含客户端配置选项的文件。

需要注意的重要事实是,所有列表文件的扩展名都将与site.pp文件相同。

我们可以在manifestup和puppet.conf文件中的列表选项的帮助下更改列表和site.pp文件的位置。

正如我在文章中提到的,Puppet的工作原理Puppet通过SSL进行所有通信。

SSL证书的默认目录是/var/lib/puppet。

[root@theitroad1 ~]# ls /var/lib/puppet/
bucket        client_data  facts  reports  server_data  state
clientbucket  client_yaml  lib    rrd      ssl          yaml

现在,让我们启动puppetmaster,它将启动主服务器侦听端口8140。
启动puppet主服务器还将为该主服务器创建一个自签名证书,该证书可以在/var/lib/puppet/ssl/ca/signed /中找到。

[root@theitroad1 signed]# /etc/init.d/puppetmaster start
Starting puppetmaster:
[root@theitroad1 signed]# ls /var/lib/puppet/ssl/ca/signed/
puppet.theitroad.com.pem
[root@theitroad1 signed]# lsof -i :8140
COMMAND    PID   USER   FD   TYPE DEVICE SIZE NODE NAME
puppetmas 3552 puppet    7u  IPv4   9583       TCP *:8140 (LISTEN)
[root@theitroad1 signed]#

如上面的示例所示,我们已经启动了puppet master,这反过来又为我们的puppet master创建了一个签名证书(请注意,证书名称与puppet.conf文件中的certname完全相同)。

可以使用哪些方法来启动Puppet主服务器?

可以通过以下方法来启动Puppet Master。

#/etc/init.d/puppetmasterd start

或者

#puppetmasterd

或者

#puppet  master

为了进行故障排除,我们可以按以下方式运行puppet master。

#puppet master --verbose --no-daemonize