使用Puppet将Azure客户端安装到所有节点

时间:2019-03-21 08:59:36

标签: azure azure-devops puppet puppetlabs-apache

首先,很抱歉提出一些基本而愚蠢的问题。 我是新手,在这种操作方面经验不足。

我已经从官方站点,tutorialspoint(向我提供了有关木偶工作原理的基本概念)站点上阅读了许多文档,但仍然很困惑,不知道从哪里开始。

由于我想将Azure安装到所有从属节点,所以我认为我必须创建

之类
class packages {

  # the first, most obvious solution is
  package { 'screen': ensure => 'installed' }
  package { 'strace': ensure => 'installed' }
  package { 'sudo':   ensure => 'installed' }


  # you can use a global package parameter
  Package { ensure => 'installed' }

  package { 'screen': }
  package { 'strace': }
  package { 'sudo':   }

  # you can specify the packages in an array ...
  $enhancers = [ 'screen', 'strace', 'sudo' ]
  package { $enhancers: ensure => 'installed' }


  # ... and even combine it a global package parameter
  Package { ensure => 'installed' }

  $enhancers = [ 'screen', 'strace', 'sudo' ]

  package { $enhancers: }

}

cr:https://www.puppetcookbook.com/posts/install-multiple-packages.html

但是,嘿!我应该将代码放在哪里?如何执行?他们不告诉我TT

我非常感谢您的好意和回答 谢谢

于2019年3月26日编辑

感谢所有评论,我已经阅读了该体系结构,现在能够创建一个类。

1 个答案:

答案 0 :(得分:2)

请注意,The Puppet Cookbook可以追溯到Puppet 3的时代。它仍然有用,但是它早于迭代和数据类型之类的现代语言功能,并且不再与现代最佳实践保持一致。

如今,我很少看到将软件包打包成这样的类。通常,程序包在Hiera中作为数据外部化,并通过程序包参数读入一个类,也许是“配置”或“安装”类。 (并不是说我建议使用packages类有什么问题。)

问题的主要部分:

  

但是,嘿!我应该将代码放在哪里?如何执行?他们不告诉我TT

要了解有关如何组织课程的更多信息,您需要了解Roles and Profiles模式。


更新:正如评论中所指出的,您可能对除组织类之外的更多基本知识感到困惑。在这一点上,我应该说Stack Overflow是一个用于询问具有特定答案的特定问题的网站。

请查看此页面here。我的建议是按照那里的建议加入Puppet Community Slack。该论坛中的人们将很高兴帮助您入门并实时回答您的问题。