我想用puppet来管理一些服务器。即使阅读了数十个文档页面,我也不清楚如何使用模块以及如何使用hiera。作为第一个实验,我想用户“admin”的被一个节点上创建的,发现这个模块 - >https://github.com/camptocamp/puppet-accounts傀儡hiera模块的基本用法
我/etc/puppet/hiera.yaml看起来这
---
:backends:
- yaml
:hierarchy:
- node/%{::fqdn}
- common
:yaml:
:datadir: /etc/puppet/hieradata
简单我的/等/傀儡/ hieradata /节点/ node1.example.com.yaml包含此
---
accounts::users:
admin:
uid: 1010
comment: admin
accounts::ssh_keys:
admin:
comment: ad
type: ssh-rsa
public: AAAAAAAAAAAAAA
这个工作,我把这个在我的/etc/puppet/manifests/site.pp后
hiera_include('classes')
class
{
'accounts':
ssh_keys => hiera_hash('accounts::ssh_keys', {}),
users => hiera_hash('accounts::users', {}),
usergroups => hiera_hash('accounts::usergroups', {}),
}
accounts::account
{
'admin':
}
这是一个很好的做法吗?对我来说,把这些东西放入site.pp是不对的,因为当我稍后使用更多模块时会变得混乱。但是在哪里放?我也不明白这是如何将数据与逻辑分开的,因为我在node1.example.com.yaml和site.pp(admin)中都有数据。一些帮助将会很棒..
我不同意。在Puppet 3.7.x及更高版本中,用户应该从一开始就使用环境。将自己限制在“生产”上是完全正确的,但忽略环境意味着Puppet设置必须在稍后的时间点进行更改,这总是很痛苦。 – 2015-03-17 09:26:35
你说得对。这是我的错误。这是你如何使用木偶基本树的例子。 @FelixFrank是对的! – 2015-03-17 12:44:28