Ubuntu系统下自动化部署工具puppet的安装和使用教程

2020-02-03 13:52:53刘景俊

在代理节点上使用下面的命令下载 puppet 实验室提供的软件包:

复制代码
# cd /tmp/
# wget https://apt.puppetlabs.com/puppetlabs-release-trusty.deb
--2015-06-17 00:54:42-- https://apt.puppetlabs.com/puppetlabs-release-trusty.deb
Resolving apt.puppetlabs.com (apt.puppetlabs.com)... 192.155.89.90, 2600:3c03::f03c:91ff:fedb:6b1d
Connecting to apt.puppetlabs.com (apt.puppetlabs.com)|192.155.89.90|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 7384 (7.2K) [application/x-debian-package]
Saving to: ‘puppetlabs-release-trusty.deb’
puppetlabs-release-tr 100%[===========================>] 7.21K --.-KB/s in 0.04s
2015-06-17 00:54:42 (162 KB/s) - ‘puppetlabs-release-trusty.deb’ saved [7384/7384]
在 ubuntu 15.04 上我们使用 debian 包管理系统来安装它,命令如下:</p> <p># dpkg -i puppetlabs-release-trusty.deb

使用 apt 包管理命令更新一下本地的软件源:

复制代码
# apt-get update

通过远程仓库安装:

复制代码
# apt-get install puppet

Puppet 代理默认是不启动的。这里我们需要使用文本编辑器修改 /etc/default/puppet 文件,使它正常工作:

复制代码
# nano /etc/default/puppet

更改 START 的值改成 "yes" 。

复制代码
START=yes

最后保存并退出。

9. 使用 Apt 工具锁定代理软件的版本
和上面的步骤一样为防止随意升级造成的配置文件混乱,我们要使用 apt 工具来把它锁定。具体做法是使用文本编辑器创建一个文件 /etc/apt/preferences.d/00-puppet.pref:

复制代码
# nano /etc/apt/preferences.d/00-puppet.pref

在新建的文件里面加入如下内容

复制代码
# /etc/apt/preferences.d/00-puppet.pref
Package: puppet puppet-common
Pin: version 3.8*
Pin-Priority: 501

这样 puppet 就不会随着系统软件升级而随意升级了。

10. 配置 puppet 代理节点
我们需要编辑一下代理节点的 puppet.conf 文件,来使它运行。

复制代码
# nano /etc/puppet/puppet.conf

它看起来和服务器的配置文件完全一样。同样注释掉 templatedir 这行。不同的是在这里我们需要删除掉所有关于[master] 的部分。

假定主控服务器可以通过名字“puppet-master”访问,我们的客户端应该可以和它相互连接通信。如果不行的话,我们需要使用完整的主机域名 puppetmaster.example.com

复制代码
[agent]
server = puppetmaster.example.com
certname = puppetnode.example.com

在文件的结尾增加上面3行,增加之后文件内容像下面这样: