推荐的 Puppet 服务器目录布局是什么?

Ton*_*ony 5 puppet puppetmaster

我只是在设置一个新的 puppet 服务器并想找出最佳实践目录结构是什么?我在不同的论坛和木偶网站上四处看看,让我印象深刻的是每个人似乎都以不同的方式展示它。没有推荐的方式和目录结构吗?

到目前为止,我有:

puppet/
   + manifests/
      + site.pp  
      + nodes/
          + production/
              + nodes.pp
          + dev/
              + nodes.pp
   + modules/
Run Code Online (Sandbox Code Playgroud)

在这之后我有点卡住了:)

所以我想我想把它分成服务器角色,比如“webserver”,它有一个服务,比如“httpd”或“nginx”

什么是最好的方法来解决所有这些问题,因为它让我发疯,似乎没有一种首选方法可以做到这一点,或者我可能只是在所有其他信息中错过了它:(

这是您构建目录的方式吗?

puppet/
   + manifests/
      + site.pp  
      + nodes/
          + production/
              + nodes.pp (Nodes have roles)
          + dev/
              + nodes.pp
       + roles/
           + web-server-apache.pp (Roles have modules)
   + modules/
       + web-server-apache/
           + manifests/
               + init.pp (This is where "httpd" gets defined and installs latest httpd)
           + templates/
           + files/
Run Code Online (Sandbox Code Playgroud)

Sha*_*den 2

是的,标准目录布局看起来像这样 - 您看到这个结构有哪些变化?

您的不同服务(httpd、nginx)均应由modules目录中的模块处理,而将这些模块附加到节点以包含在其配置目录中将发生在manifests.

您希望如何定义自己的角色?一般来说,这应该在您的节点定义中完成,无论是nodes.pp清单目录中由 加载的文件site.pp,还是使用 Hiera 进行节点定义(如果您愿意的话,我绝对会推荐它)。