标签: puppet

当我在Windows 7命令行上使用"Vagrant Up"时,为什么Vagrant不会进入我的虚拟框?

每当我尝试Vagrant Up时,它会加载盒子并完成大部分工作,但是因为我正在尝试使用Puppet来配置这个CentOS 6.3最小化,我需要SSH在Vagrant Up期间工作(如果我希望它尽可能自主) .

我从Vagrant的INFO日志中获得以下信息:

DEBUG virtualbox_4_2:   - [1, "ssh", 2222, 22]
 INFO ssh: Connecting to SSH: 127.0.0.1:2222
 INFO ssh: SSH not up: #<Timeout::Error: execution expired>
 INFO subprocess: Starting process: ["C:\\Program Files\\Oracle\\VirtualBox\\VBoxManage.exe", "showvminfo", "c2e7375d-159f-4014-9bda-ff9914423f4c", "--machinereadable"]
DEBUG subprocess: Selecting on IO
DEBUG subprocess: stdout: name="Vagrant-Apache-Nick_1360372174"
Run Code Online (Sandbox Code Playgroud)

ssh virtualbox puppet windows-7 vagrant

6
推荐指数
1
解决办法
1万
查看次数

如何使用puppet为不同的用户设置自定义bash环境?

我刚刚开始使用puppet(和vagrant)为我们的团队设置开发环境,该团队由8个以上的开发人员组成,每个开发人员都有他们特定的bash配置等等.我已经安装了所有的软件.用于快速部署新开发虚拟机的系统,但我不确定以自动方式为每个特定用户设置开发环境的最佳方式(我们最终会有几个开发环境,编写一次会很方便)并完成).

例如,我想设置一个用户joe,从github克隆Joe的配置repo,然后在该github存储库中运行一个脚本来为Joe设置环境.关于Joe以及Jimmy,James,Julie,Jane,Jim,Jake和Jimbo如何做到这一点的任何建议?

如果有任何帮助,开发机器几乎肯定是ubuntu系统.

puppet vagrant

6
推荐指数
1
解决办法
522
查看次数

在Puppet中,如何在定义的类型中访问变量/属性?

我想在已定义类型的实例中引用变量.例如,我可以做什么来引用$x$yfoo ab

 define foo($x, $y) {
  }

  define bar($foo) {
          notify { "${::$foo::x}": } # <- how to make this reference work?
  }

  foo { 'a':
          x => 'oh bar may you reference me',
          y => 'please'
  }

  bar { 'b':
          foo     => Foo['a'],
          require => Foo['a']
  }
Run Code Online (Sandbox Code Playgroud)

我希望这个工作的原因是foo实例可能包含许多值,我不想重复这些值可能需要它们的每个资源.我不是一次又一次地传递这些值,而是重复自己,而是将参考传递给他们的容器.

我一直在寻找并尝试了很多东西,但似乎无法在任何地方找到这个问题的答案.我知道可以修改属性,引用资源和读取类属性,但是是否可以读取资源/定义类型的属性?如果不是那么最好的工作呢?

puppet

6
推荐指数
1
解决办法
7581
查看次数

如何检测木偶运行是否完整

我需要一种方法来检测puppet已经完成初始运行(成功),因此我可以在启动AWS EC2和/或OpenStack上的机器时启动其他操作之前等待.我怎么检查这个?

到目前为止,一些想法是:

  1. 完成(成功)后木偶触摸文件,然后我可以只查看该文件
  2. 完成(成功)后,木偶写了一个事实,我可以通过mcollective检查事实.(不确定是否可以在木偶运行中写入puppet db)

puppet amazon-ec2 amazon-web-services openstack

6
推荐指数
1
解决办法
4270
查看次数

Facts.d - 在木偶运行期间无法检索到Pluginfacts

我刚刚将木偶环境升级3.4.23.4.3.通过puppetlabs的apt repos.我正在升级代理商主人.执行代理程序运行会导致以下错误:

Info: Retrieving pluginfacts
Debug: Failed to load library 'msgpack' for feature 'msgpack'
Debug: file_metadata supports formats: pson yaml b64_zlib_yaml raw
Debug: Failed to load library 'msgpack' for feature 'msgpack'
Debug: file_metadata supports formats: pson yaml b64_zlib_yaml raw

Error: /File[/var/lib/puppet/facts.d]: Could not evaluate: Could not retrieve information from environment production source(s) puppet://<puppetserver>/pluginfacts

Debug: Finishing transaction [...]
Run Code Online (Sandbox Code Playgroud)

尽管如此,我从master中检索了一个目录,因此代理程序运行仍然有效并且似乎可以执行它应该执行的操作.(或者说,如果出现与错误消息相关的错误,我实际上无法确定.)

但是,我想摆脱错误消息.

puppet --version在 …

upgrade puppet facter

6
推荐指数
1
解决办法
1万
查看次数

puppet:无法备份<file>:已经传递了新内容的总和

我有一个问题,我希望有人可能有答案.基本上我正在做的是尝试确保我总是使用一个固定的,稍微旧版本的phpunit,我把它放在我模块的文件资源中.

清单:

    file
    {
            "/usr/bin/phpunit":
            ensure => file,
            owner => 'root',
            group => 'root',
            mode => 0755,
            source => "puppet:///modules/php/phpunit"
    }
Run Code Online (Sandbox Code Playgroud)

准备:我下载当前('错误')的phpunit版本并将其放在/ usr/bin中.

所以第一次运行的木偶成功了:

Notice: Compiled catalog for <hostname> in environment production in 3.06 seconds
Notice: /Stage[main]/Php/File[/usr/bin/phpunit]/content: content changed '{md5}9f61f732829f4f9e3d31e56613f1a93a' to '{md}38789acbf53196e20e9b89e065cbed94'
Notice: /Stage[main]/Httpd/Service[httpd]: Triggered 'refresh' from 1 events 
Notice: Finished catalog run in 15.86 seconds
Run Code Online (Sandbox Code Playgroud)

然后我下载当前(仍然'错误')的phpunit版本并再次将它放在/ usr/bin中.

这次木偶运行失败了.

Notice: Compiled catalog for <hostname> in environment production in 2.96 seconds
Error: Could not back up /usr/bin/phpunit: Got passed new contents …
Run Code Online (Sandbox Code Playgroud)

puppet

6
推荐指数
1
解决办法
4039
查看次数

使用augeas with puppet将属性添加到根节点

所以我正在尝试做一些看起来与" 通过augeas向XML根节点添加属性的问题"相同的问题,但是提供的答案对我不起作用.没有insert命令,我收到此错误消息(在puppet agent -t --debug --verbose模式下):

Debug: Augeas[context.xml](provider=augeas): /augeas/files/usr/share/tomcat/conf/context.xml/error/message = Failed to match 
    { /#attribute/ }?({ /#text/ = /(\\]\\]\\]*[^]\001-\004<>][^]\001-\004<]*\\]|(\\][^]\001-\004<]|[^]\001-\004<][^]\001-\004<])[^]\001-\004<]*\\]|[^]\001-\004<]\\])(\\]\\]*[^]\001-\004<>][^]\001-\004<]*\\]|[^]\001-\004<][^]\001-\004<]*\\])*(\\]\\]*([^]\001-\004<>][^]\001-\004<]*|)|[^]\001-\004<][^]\001-\004<]*|)|\\]\\]\\]*([^]\001-\004<>][^]\001-\004<]*|)|(\\][^]\001-\004<]|[^]\001-\004<][^]\001-\004<])[^]\001-\004<]*|\\]|[^]\001-\004<]/ } | { /#comment/ = /([^\001-\004-]|-[^\001-\004-])*/ } | <<rec>> | { /[:A-Z_a-z][.0-:A-Z_a-z-]*/ = /#empty/ } | { /#pi/ })*
  with tree
    { "#text" = "

    " } { "#comment" = " Default set of monitored resources " } { "#text" = "
    " } { "WatchedResource" } { "#text" = "
    " } { "#comment" = " Uncomment …
Run Code Online (Sandbox Code Playgroud)

xml puppet augeas

6
推荐指数
0
解决办法
1013
查看次数

仅在详细或调试模式下通知

我正在寻找一种在使用时notify { ... }在puppet客户端运行期间显示消息的方法

  • puppet apply <--verbose | --debug>
  • puppet agent <--verbose | --debug>

我想在客户端交互/手动运行puppet时显示调试消息.然而,我无法找到一种方法来评估我的木偶清单中的这些开关.我怎么能为傀儡4.x实现这个目标?

puppet

6
推荐指数
1
解决办法
760
查看次数

如何将两个或多个变量传递给Puppet中的Define

我试图在define中传递多个参数.

以下是我的代码.我想在define中传递两个数组,但是我只能传递一个如下所示.

 class test {   
    $path = [$path1,$path2]
    $filename = [$name1,$name2]
    define testscript { $filename: } // Can able to pass one value. 
 }

 define testscript () {
     file {"/etc/init.d/${title}": //Can able to receive the file name.
           ensure  => file,
           content => template('test/test.conf.erb'), 
 }
Run Code Online (Sandbox Code Playgroud)

从我上面的代码,我可以检索filename定义资源内部.我还需要path在模板中设置值.我无法在模板中发送/检索第二个参数.

有没有办法改进我的代码以传递定义资源中的两个值($path$filename)?

任何帮助深表感谢.

puppet puppet-enterprise librarian-puppet

6
推荐指数
1
解决办法
2807
查看次数

jenkins,Github和Puppet如何互动

首先,我应该披露我只管理供应商关系,缺乏深厚的技术知识.

我刚刚与我们的一个分包商召开了一次电话会议,他们要求我签署4个不同服务器的PO(一个用于Jenns,另一个用于Github,第三个用于Puppet,第四个用作测试盒).

当我问他问题时,技术架构师似乎非常防守.我知道不是我的工作来质疑他的能力,但我确实有预算要管理,我担心他们过度设计了这个(或者至少他们提到的3种产品似乎重叠很多).有人会非常友好地向我清楚地解释每个人扮演的角色.

我还要感谢他们是否确实需要4台服务器以及所提到的某些技术是否可以在同一台服务器上共存.(即Jenkins,Github和Puppet都可以在一个Ubuntu服务器上运行吗?).

github puppet jenkins

5
推荐指数
1
解决办法
5108
查看次数