我有我的木偶主服务器上的2个环境的文件结构。 在主服务器上运行ls /etc/puppetlabs/code/environments/返回两个文件夹beta和production 。 然而,当我去我的代理和运行puppet apply -t –environment beta我得到的错误: /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/environments.rb:38:in `get!': Could not find a directory environment named 'beta' anywhere in the path: /etc/puppetlabs/code/environments. Does the directory exist? (Puppet::Environments::EnvironmentNotFound) 在主服务器上,我可以成功应用beta版清单,并使用puppet apply /etc/puppetlabs/code/environments/beta/manifests/site.pp 。 我想弄清楚为什么Puppet没有检测到文件夹。 我怎么去debugging呢? 我还尝试了puppet agent -t –environment betabuild议的puppet agent -t –environment beta ,它返回: 注意:本地环境:“beta”与服务器指定的节点环境“生产”不匹配,将代理切换到“生产”。 /etc/puppetlabs/puppet/puppet.conf (在代理上)如下: # This file can be used to […]
当我和puppet一起工作时,我发现自己想要自动化更复杂的设置,例如X个网站的虚拟主机。 当我的木偶performance变得更加复杂时,我发现很难应用DRY(不要重复自己)的原则。 下面是我之后的简化片段,但是不起作用,因为puppet会根据我使用的类或定义抛出各种错误。 我想从一些经验丰富的傀儡老师那里得到一些关于他们如何接近这个解决scheme的反馈。 # site.pp import 'nodes' # nodes.pp node nodes_dev { $service_env = 'dev' } node nodes_prod { $service_env = 'prod' } import 'nodes/dev' import 'nodes/prod' # nodes/dev.pp node 'service1.ownij.lan' inherits nodes_dev { httpd::vhost::package::site { 'foo': } httpd::vhost::package::site { 'bar': } } # modules/vhost/package.pp class httpd::vhost::package { class manage($port) { # More complex […]
我有以下的Linux脚本 cre_disk=$(ls /dev/sd[bz]) for disk in $cre_isk do pvcreate $i done 从上面的代码我的理解是,它是检查sdb,sdc..sdz磁盘文件。 如果存在,那么做物理卷创build。 我的要求是什么,需要把上面的linux转换成puppet(lvm创build)。 我知道创build物理卷的命令 physical volume{'/dev/sdb': ensure => 'present' } 我不知道如何检查物理磁盘(cre_disk = $(ls / dev / sd [bz]))。 有没有资源可用或木偶会照顾没有任何资源。 注:我已经在以前的问题post中以不同的格式发布了相同的问题。 请忽略该话题,话题名称为“查看物理磁盘目录”
我想知道是否有办法撤销一些来自我的木偶大师的证书请求 例如 $ sudo puppet cert –list "(none)" (SHA256) E6:91:40:DB:E6:C7:B7:56:7F:73:D3:3C:ED:FB:C7:DA:AC:A9:5B:CE:02:3A:38:19:AC:02:6D:A8:94 "test2" (SHA256) DB:0F:37:51:F1:12:86:9F:61:01:3E:B7:82:D5:57:5E:6E:83:BD:2F:23:93:F6:2B:34:85:D2:F0:27 我有这些证书请求,我想要一起删除,所以它不显示下一次我运行命令 任何想法都会有所帮助
我有傀儡代理守护神 # service puppet status * agent is running 并且可以确认它正在从主设备中检索configuration # cat /var/lib/puppet/state/last_run_summary.yaml | grep last last_run: 1385262693 # date –date @1385262693 Sun Nov 24 03:11:33 UTC 2013 但是自从last_run以来,我对configuration小时所做的更改没有被应用。 他们只适用于我运行 # puppet agent –test 为什么当puppet被守护进程时configuration不被应用? 这里是我的木偶客户端上的/etc/puppet/puppet.conf的内容 [main] logdir=/var/log/puppet vardir=/var/lib/puppet ssldir=/var/lib/puppet/ssl rundir=/var/run/puppet factpath=$vardir/lib/facter templatedir=$confdir/templates prerun_command=/etc/puppet/etckeeper-commit-pre postrun_command=/etc/puppet/etckeeper-commit-post pluginsync=true [master] # These are needed when the puppetmaster is […]
我有一台运行apache / passenger的Scientific Linux 6.4服务器,安装了puppet-server。 还安装了福尔曼1.4。 当我将代理升级到3.4.2时,他们开始了所有的日志logging:使用安全性较低的序列化报告和查询参数来与老式木偶主人兼容。 要删除此通知,请将您的主人升级到Puppet 3.3或更高版本。 所以我看着服务器,并升级puppet-server到puppet-server-3.4.2-1.el6.noarch我已经重新启动httpd(apache)… 基本上,代理人仍然抱怨。 我也更新木偶傀儡 – 3.4.2-1.el6.noarch没有运气… 我只是希望代理停止logging每次运行的警告…乘客是否不使用系统安装的rpm? 我找不到任何文档,而且Puppet IRC只给了我安装puppet-server的build议(我实际上没有安装,我的服务器正在工作…) 木偶用户组没有回答我… 感谢您的任何想法…
我有两个文件 class hadoopfile::file { $diskname = [aaa,bbb,ccc,ddd,eee,'] $filename = [02,03,04,05,06] hadoopfile::diskcreate_def { '$diskname:','$filename:' } #hadoopfile::diskcreate_def { $filename: } } define hadoopfile::diskcreate_def ( $diskname,$filename = $title) { physical_volume {["/dev/$diskname"]: ensure => present, } file { 'opt/db/$filename': ensure => directory, } mount { filemount: ensure => mounted, name => "opt/db/$filename", fstype => 'ext4', options => 'defaults', atboot […]
我想在Puppet中创build一个物理卷。 以下是我的代码 class lvm::crelvm { physical_volume { '/dev/sdb2': ensure => present } volume_group { 'vg_cas': ensure => present, physical_volumes => '/dev/sdb2', } } 但是我得到了下面的错误 Error: Execution of '/sbin/pvcreate /dev/sdb2' returned 5: Device /dev/sdb2 not found (or igored by filtering). Error: /Stage[main]/Lvm::Crelvm/Physical_volume[/dev/sdb2]/ensure: change from absent to present failed: Execution of '/sbin/pvcreate /dev/sdb2' returned 5: Device /dev/sdb2 […]
我已经将我的木偶(v3.6.2)服务器(RHEL 7.1)重新configuration到支持的环境中,如下所示。 /etc/puppet puppet.conf auth.conf environments Project_A modules manifests/site.pp environment.conf Project_B modules manifests/site.pp environment.conf environment.conf文件由…组成 modulepath=/etc/puppet/environments/$environment/modules manifest=/etc/puppet/environments/$environment/manifests/site.pp 每个环境的site.pp文件由 include 'nodes.pp' include 'selinux.pp' include 'check_mode.pp' $puppetserver=<SERVER> Package { allow_virtual=>true, } 在我运行命令时在代理上 puppet agent –no-daemonize –trace –debug –noop –verbose 我得到错误 错误:无法从远程服务器检索目录:服务器上的错误400:无法find<SERVER上> <SERVER>的类节点 在/var/log/puppet/masterhttp.log我得到的错误 [2015-09-09 15:43:12] <'IP'> – – [2015/09/09:15:43:12 AEST]“POST / Project_A / catalog / <'SERVER'> HTTP […]
我试图从puppet检索一个文件使用以下内容: file { '/etc/shibboleth/attribute-map.xml': ensure => 'present', source => file( "puppet:///private/etc/shibboleth/attribute-map.xml", "puppet:///public/etc/shibboleth/attribute-map.xml", ), require => Package['shibboleth'], notify => Service['shibd'], } 然而,这给了我一个错误,指出这两个文件都不能find。 在我的/etc/puppetlabs/fileserver.conf有以下内容: [public] path /etc/puppetlabs/puppet/files/common allow * [private] path /etc/puppetlabs/puppet/files/%H allow * 怎么会去debugging呢?