2

我是 Puppet 的新手,所以也许你会发现我的问题有点愚蠢......所以,我正在寻找可以在我的机器上安装和运行 Mongodb 2.2 的 puppet 配方。通过谷歌搜索,我找到了这个模块http://forge.puppetlabs.com/puppetlabs/mongodb但我不明白我该怎么做?它说我必须先在 puppet 节点上安装模块。究竟是什么意思?比方说,我有一组必须通过 puppet 配置的机器。为了达到这个目标,我必须在 puppet 食谱中添加什么?

4

3 回答 3

2

如果有人可能对安装 MongoDB 的最新版本感兴趣,这对我来说效果很好。在撰写本文时,最新的稳定版本是MongoDB 3.0.3

首先通过 puppet apt 模块更新您的操作系统存储库(如果您使用的是 Debian 或 Ubuntu 发行版)。根据您的发行版和版本更改以下数据。查看此处获取 MongoDB 官方存储库信息:http ://docs.mongodb.org/manual/administration/install-on-linux/#recommended

# $::lsbdistcodename should contain what you usually get
# with the `lsb_release -sc` command
$server_lsbdistcodename = downcase($::lsbdistcodename)

apt::source { 'mongodb-org-3.0':
    location    => 'http://repo.mongodb.org/apt/debian',
    release     => "${server_lsbdistcodename}/mongodb-org/3.0",
    repos       => 'main',
    key         => '7F0CEB10',
    key_server  => 'keyserver.ubuntu.com',
    include_src => false
}

然后mongodb::globals正确设置类以确保您获得MongoDB 3。我正在使用的 MongoDB puppet 模块就是这个

class { 'mongodb::globals':
    manage_package_repo => false, # disable the 10gen repository
    server_package_name => 'mongodb-org',
    service_name        => 'mongod',
    version             => '3.0.3',
}->
class { '::mongodb::server': }
于 2015-05-26T13:01:53.520 回答
1

使用 puppet 安装 mongodb 并不像看起来那么容易。获取官方 Puppet Labs 模块 v0.8.0 来安装 mongodb 2.6.3 有点困难。你最终得到一个关于mongodb-10gen=2.6.3 not being found的恰当错误。已经有问题和补丁,但尚未发布。

所以这就是你需要做的:

git clone https://github.com/puppetlabs/puppetlabs-mongodb.git

然后使用以下 puppet 配置:

class { '::mongodb::globals':
  manage_package_repo => true,
  server_package_name => 'mongodb-org',
  version => '2.6.3'
}->
class { '::mongodb::server': }

这对我有用。

于 2015-04-21T07:42:45.103 回答
0

如果您正在独立运行 puppet,则您已经安装了 puppet gem 并拥有puppet可执行文件。要安装模块,请运行puppet module install puppetlabs/mongodb. 模块安装后,您可以简单地在节点定义中包含 mongodb 模块

node 'myhost' {
    include mongodb
}

如果要运行需要访问模块的多个节点,则必须设置 puppetmaster 并安装节点。有关详细信息,请参阅 [基本代理/主设置][1]。确保在 puppet.conf 中启用了 pluginsync=true,以便模块可以访问远程代理。

然后 puppetmaster 需要一个文件,通常site.pp用它应该配置的节点来定义。最后,在要运行 mongodb 的每个节点上包含 mongodb 模块,您应该可以启动并运行。

于 2012-12-08T23:02:59.473 回答