使用Puppet管理服务器

2020年12月31日19:38:47 发表评论 51 次浏览

Puppet是服务器管理工​​具, 可自动启动, 配置和管理服务器。 Puppet使你可以设置服务器, 安装和配置软件包, 并确保一切正常。

如果你习惯于每次启动服务器时都手动执行这些任务, 那么从长远来看, Puppet可以为你节省大量时间和精力。

要求

  • 运行Linux的云服务器(Ubuntu 16.04)

安装人偶

要在Ubuntu 16.04上安装Puppet, 请首先更新软件包:

sudo apt-get update

然后使用以下命令安装Puppet:

sudo apt-get install puppet

安装过程完成后, 检查Puppet是否正在使用以下命令:

puppet --version

它将以版本号响应:

user@localhost:~# puppet --version
 3.8.5

学习使用木偶

一个简单的" Hello World"

木偶使用.pp作为清单文件的文件, Puppet将遵循的说明列表。首先, 转到你的主目录:

cd

我们将从一个简单的命令开始, 该命令将输出" Hello World"。创建一个Puppet清单文件, 并使用以下命令将其打开以进行编辑:

sudo nano hello-world.pp

将以下内容放入此文件:

notice("Hello World.")

保存并退出文件。

现在, 使用以下命令运行清单文件:

sudo puppet apply hello-world.pp

服务器将回复:

root@localhost:~# sudo puppet apply hello-world.pp
Notice: Scope(Class[main]): Hello World.
Notice: Compiled catalog for localhost.localdomain in environment production in 0.01 seconds
Notice: Finished catalog run in 0.01 seconds

关于mod_rewrite

作为基本介绍, 对于本教程, 我们将从一个简单的任务开始:使用Puppet命令行工具添加mod_rewrite到Apache Web服务器

mod_rewrite是一个Apache模块, 它允许重写URL。启用步骤mod_rewrite是:

  1. 启用模块用命令sudo a2enmod重写.
  2. 编辑主要的Apache配置文件并改变AllowOverride无to允许全部覆盖网站目录。
  3. 重新启动Apache用命令sudo服务apache2重新启动.

你可以验证mod_rewrite通过创建PHP信息页面未在服务器上启用:

sudo nano /var/www/html/phpinfo.php

将以下内容放入此文件:

<?php phpinfo() ?>

保存并退出文件。查看位于的文件http://example.com/phpinfo.php并使用Ctrl + F在页面上搜索" mod_rewrite"。如果未启用该模块, 则将找不到该短语。

使用Puppet启用mod_rewrite

Puppet使用自己的类似JSON的配置语言。这可以用来执行复杂, 复杂的任务。有关Puppet语法的更多信息, 查阅人偶官方文档。对于我们的示例, 我们将坚持基础知识。

首先, 安装广泛使用的Puppet模块stdlib, 它是便利的Puppet资源库:

sudo puppet module install puppetlabs-stdlib --version 4.14.0

接下来, 创建清单文件, 并使用以下命令将其打开以进行编辑:

sudo nano mod_rewrite.pp

将以下内容放入此文件:

# Enable mod_rewrite
exec { '/usr/sbin/whicha2enmod rewrite':
}

# Edit the main Apache configuration file
# Be sure to put a tab stop before "AllowOverride None"
file_line { '   AllowOverride None':
  path => '/etc/apache2/apache2.conf', line => 'AllowOverride All', }

# Restart Apache
exec { '/usr/sbin/service apache2 restart':
}

保存并退出文件。

重要:在运行此Puppet文件之前, 请使用以下命令制作主Apache配置文件的备份副本:

sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf-orig

创建完后, apache2.conf, 运行Puppet文件以启用mod_rewrite:

sudo puppet apply mod_rewrite.pp

当Puppet完成任务后, 刷新页面http://example.com/phpinfo.php在浏览器中, 然后使用Ctrl + F搜索" mod_rewrite"以验证模块已启用。

一盏木

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: