是否可以在一台主机上运行具有不同用户权限的多个 Puppet 代理?
我有一台服务器,应该由两个不相关的用户通过 puppet 进行管理。(一个用户帐户用于开发人员,一个根帐户用于服务器团队)
答案1
非 root 帐户可以运行puppet agent --one-time --no-daemonize
任何其他类型的puppet agent
。
配置和持久数据将被查找并存储在
~/.puppet/
适用于 Puppet 3.x 及更早版本~/.puppetlabs/
适用于 Puppet 4.x 及更高版本
您想要通过以下方式确认的事情~/.puppet/puppet.conf
:
- 您
certname
对辅助代理使用不同的设置 - 您可能还想使用替代方案
server
,以便证书不受主主机信任(是的,如果您想要这样,您将需要一个新的 Puppet 主机) vardir
及其子项(如ssldir
和)statedir
与系统中心位置不同,并且对用户可写入(这是最安全的不是完全触碰这些 - 默认值是相当合理的;另请参阅puppet agent --configprint all
)。
此外,清单应仅限于非特权代理可以管理的资源,例如
- 用户拥有的文件
- 用户的 cron 任务
- 安装在用户主目录中的 Ruby gems
ETC。