Articles of 木偶

puppet清单文件中的资源/类执行顺序

我在configurationCQ5在stream浪者pipe理的虚拟机上工作。 configuration是使用puppet完成的。 我有查询方面的木偶清单文件中的类/资源的执行顺序。 请在下面find清单文件cqsite.pp include java include apache cq::instance {myauthor: installation_type => author, } cq::instance {mypublish: installation_type => publish, } 在提供过程中,puppet最初​​selectcq资源(cq :: instance)而不是java。 但是必须先安装java才能在cq :: instance.pp文件中执行一些命令。 所以它抛出一个错误。 请帮我find解决办法

意外地吊销了所有的木偶大师证书

我运行puppet cert clean –all ,认为它只会清除尚未签署的证书。 有大约300个节点依靠木偶大师。 据我所知,傀儡代理仍然在他们身上,但我认为这是因为有一个证书的caching副本的地方。 任何方式来纠正这种情况,而不必手动login到300个不同的服务器? 谢谢 编辑:我应该提到/ var / lib / puppet由于某种原因没有被备份。

我可以与主厨一起pipe理Amazon RDS实例吗? 盐? 木偶? Ansible?

从表面上看,我需要能够在目标节点上安装一些软件守护进程,以使这些工作起作用。 如果我不能这样做(例如Amazon RDS实例),我有什么select? 同样,Ansible似乎基于SSH。 这可以用来configurationRDS吗? 感谢您的反馈 – 讨论导致我在这里更有针对性的问题: https : //serverfault.com/questions/588237/whats-a-good-cm-tool-for-managing-a-cloud-cluster-由分集资源交stream

负载平衡与木偶

我试图build立一个负载平衡系统。 我的负载均衡器(nginx)有一个conf文件,我应该列出上游服务器的所有IP。 我可以把IP地址手动,但这种方式,我需要改变每次我添加/删除上游服务器的configuration文件。 现在我想出了两个不同的想法,但我不喜欢很多: 1 – 让每台上游机器使用导出的资源创build一个带有IP的文件。然后,负载平衡器服务器将有一个“include conf_directory / *”,并加载所有由upstrem服务器创build的文件。 由于负载平衡器使用nginx这可以做到,但如果我不想后者configuration的东西,没有“包括”的conf文件,这种解决scheme将无法正常工作。 2 – 如果configuration不支持“include”命令,那么我们可以再次使用“导出的资源”来创build一个带有IP的文件,后面的那个,负载平衡器执行一个命令,文件并生成configuration 两个版本都采用相同的技术,不同之处在于,当服务器(需要生成一个conf)不能识别类似“include”的命令时,会使用版本2。 现在,我的问题是,有没有办法以不同的forms做到这一点? 我怀疑是否有,因为傀儡是pipe理多台服务器,似乎有点奇怪,没有一个简单的方法来configuration负载平衡器。 编辑:毕竟,第一个解决schemedidens't工作还因为我不能使用Nginx的上游内的包括指令conf

清理Puppet仪表板中节点的旧域名

我将一些服务器的域名(即web1.foo.com)更改为web1.baz.com。 在我的Puppet仪表板中,我看到两个条目现在为同一台服务器。 我可以销毁一个类似rake node:fast_del name=web1.foo.com这似乎工作(Web界面销毁不起作用,请参阅http://projects.puppetlabs.com/issues/6828 ),但只有暂时的,最终老域回来了。 我检查了主机上的facter ,并且在那里我没有看到旧域的任何迹象,不知道为什么旧域回来?

有条件地将站点特定的configuration片段加载到基本configuration文件模板中

我的最终目标是将特定于站点的configuration片段包含到通用基本模板中。 我的第一个想法是从基本模板中调用模板函数,例如: performance: … $domain = "www.example.com" … 模板: server { # Common configuration items here. … # Load site-specific configurations here. <%= scope.function_template("sites/$domain/config.erb") %> } 但是,在函数调用中似乎没有可能使用variables(请纠正我,如果我错了)。 还有一个特定于站点的模板必须存在的问题。 所以,我的下一个想法是在清单中使用一个包含从模板加载的站点特定configuration内容的variables。 performance: … $domain = "www.example.com" $site_specific_content = template("sites/$domain/config.erb") …. 模板: server { # Common configuration items here. … # Load site-specific configurations here. <%= site_specific_content %> […]

如何通过Puppet将Linux服务器添加到SolarWinds?

我们使用Puppet进行configurationpipe理。 我们也使用SolarWinds进行监控。 有没有人有任何经由Puppet自动添加服务器到SolarWinds的经验? 你是怎么做到的?(比如你在木偶和SolarWinds方面做了什么)?

如何重新定义子类中的参数?

我正在尝试在我自己的通用模板模块中包含puppet模块( https://github.com/puppetlabs/puppetlabs-puppet/blob/master/manifests/init.pp )。 但是,只能为我的主节点设置master => true 。 但是我收到这个错误: err: Could not retrieve catalog from remote server: Error 400 on SERVER: Only subclasses can override parameters at /etc/puppet/modules/template/manifests/puppetmaster.pp:5 on node puppet1.mydomain.com 我的常见模板如下所示: class template :: common { 包括ssh 包括用户::基础设施 包括用户::系统 包括packages :: common class { “傀儡”: puppet_server =>'puppet.mydomain.com', } } 这包括在我的所有节点(包括我的木偶大师),其中也包括这个模板: class template :: puppetmaster inherits […]

乘客抛出未定义的方法` – @“为”master“:Puppet 3.0.0升级后的string

我的木偶大师正在使用乘客服务。 升级到Puppet 3.0.0后,我收到以下错误: PhusionPassenger :: Rack :: ApplicationSpawner中的exceptionNoMethodError(未定义的方法“ – @”代表“是”主“string)(进程17576,线程#): 从config.ru:7开始 from /usr/lib/ruby/gems/1.8/gems/rack-1.4.1/lib/rack/builder.rb:51:in`instance_eval' from /usr/lib/ruby/gems/1.8/gems/rack-1.4.1/lib/rack/builder.rb:51:in`initialize' 从config.ru:1:在新` 从config.ru:1开始 我的config.ru如下所示: # a config.ru, for use with every rack-compatible webserver. # SSL needs to be handled outside this, though. # if puppet is not in your RUBYLIB: # $LOAD_PATH.unshift('/opt/puppet/lib') $0 = "master" # if you want debugging: # […]

Ubuntu上的木偶代理冻结

我有40个Ubuntu 12.04服务器。 这些服务器是用木偶pipe理的。 有时我和傀儡代理有问题。 木偶代理产卵subprocess(sh),这个过程失败。 Sh是僵尸进程。 木偶不工作,我必须重新启动木偶代理,使其工作。 我用木偶来pipe理文件,软件包和服务。 有问题的代理在失败之前没有做任何改变,服务器是最新的。