Questions tagged «puppet»

Puppet是一种配置管理工具(Unix和Windows),具有自己的域特定语言。


4
跨多个服务器或PXE与cfEngine / Chef / Puppet管理应用程序
我们有一个运行在几个(大约5个,并且将会增长)的盒子上的应用程序。所有机器的硬件都是相同的,理想情况下软件也应相同。到目前为止,我一直在手工管理它们,现在不再想要(静态IP地址,禁用所有必需的服务,安装必需的软件包...)。任何人都可以平衡以下选项的利弊,或提出更明智的建议吗? 1:分别在所有盒子上安装centos并使用Chef / cfengine / puppet管理配置。那样很好,因为我想找一个借口来学习使用其中一种应用程序,但是我不知道这是否是最佳解决方案。 2:使一个盒子完美并成像。通过PXE提供映像,每当我要进行修改时,都可以从新映像中重新启动包装盒。集群专家通常如何处理/ etc / sysconfig / network-scripts / ifcfg *文件中具有mac地址的问题?我们也使用infiniband,如果hwaddr错误,它也拒绝启动。这些可以在启动时正确生成吗? 我倾向于PXE解决方案,但是我认为使用munin或nagios进行监视会更加复杂。任何人都有这类问题的经验吗? 所有服务器中都装有SSD,并且功能强大且快速。 谢谢,马特

2
Puppet的多站点高可用性选项
我维护着两个数据中心,并且随着我们越来越多的重要基础架构开始受到puppet的控制,如果我们的主站点发生故障,第二个站点上的puppet master工作非常重要。 更好的做法是进行某种主动/主动设置,以使第二个站点的服务器不会通过WAN进行轮询。 有多站点木偶高可用性的任何标准方法吗?

3
分散式木偶体系结构的优缺点
我们目前大约有300台RHEL服务器正在连接到Puppetmaster服务器。但是,我们注意到了一些性能瓶颈,这是我们系统中的故障点。我一般对puppet还是陌生的,我正在考虑创建一个分散的puppet体系结构,而不是让Puppet客户端连接到Puppetmaster服务器。除了我会怀疑会发生的事情(例如性能提升,缺乏对新机器的签名和交换SSL证书)之外,建立分散式架构还有其他利弊吗?

1
如何使用with递归地镜像目录及其内容?
假设我有一个模块files/etc/foo/{conf0, conf1, conf2, conf3, etc}。当文件数量很少时,放置每个文件非常简单: file { 'conf0': path => '/etc/foo/conf0', ensure => true, source => 'puppet:///.../etc/foo/conf0', } 并重复。但是涉及到很多重复,如果有多个配置文件,要进行维护很繁琐。我想确保将files/etc/foo/其镜像到给定的路径。也就是说, file { 'etc foo confs': path => '/etc/foo', ensure => recursive, source => 'puppet:///.../etc/foo', } 将创建/etc/foo/conf0,/etc/foo/conf1依此类推。这可能吗?
14 puppet 

3
如何从人偶管理已挂载的分区(fstab +挂载点)
我想从puppet管理已安装的分区,包括修改/etc/fstab和创建用作安装点的目录。在mount资源类型更新fstab就好了,但使用file创建的挂载点是有点棘手。 例如,默认情况下,目录的所有者为root,如果安装的分区的根(/)具有另一个所有者,则puppet会尝试更改它,但我不希望这样做。我知道我可以设置该目录的所有者,但是为什么我应该关心挂载分区上的内容?我要做的就是挂载它。有没有办法使p不关心用作安装点的目录的权限? 这是我现在正在使用的: define extra_mount_point( $device, $location = "/mnt", $fstype = "xfs", $owner = "root", $group = "root", $mode = 0755, $seltype = "public_content_t" $options = "ro,relatime,nosuid,nodev,noexec", ) { file { "${location}/${name}": ensure => directory, owner => "${owner}", group => "${group}", mode => $mode, seltype => "${seltype}", } mount { …
14 linux  puppet 

4
木偶:测试是否定义了资源或创建了它
我一直在尝试找出一种方法来测试另一个文件中是否已经定义了资源,是否没有创建它?一个简单的例子: if File[$local_container] { alert("Testing - It existed $local_container") } else { file{ "$local_container": ensure => directory, } } 但是- File[$local_container]似乎总是评估为真。有没有办法做到这一点?
14 puppet 

2
由于某些SSL错误,新服务器无法从Puppetmaster获取配置
生产环境中的三台机器存在一些硬件问题,已经退役。基础架构团队已重新安装它们,并为它们提供了相同的主机名和IP地址。目的是在这些系统上运行Puppet,以便可以再次调试它们。 尝试 1)通过发出以下命令,从Puppetmaster中删除了旧的Puppet证书: puppet cert revoke grb16.company.com puppet cert clean grb16.company.com 2)删除旧证书后,通过从重新安装的节点之一发出以下命令来创建新的证书请求: [root@grb16 ~]# puppet agent -t Info: csr_attributes file loading from /etc/puppet/csr_attributes.yaml Info: Creating a new SSL certificate request for grb16.company.com Info: Certificate Request fingerprint (SHA256): 6F:2D:1D:71:67:18:99:86:2C:22:A1:14:80:55:34:35:FD:20:88:1F:36:ED:A7:7B:2A:12:09:4D:F8:EC:BF:6D Exiting; no certificate found and waitforcert is disabled [root@grb16 ~]# 3)一旦证书请求在Puppetmaster上可见,就会发出以下命令来对证书请求进行签名: [root@foreman …


5
修复使用puppet在/ etc / default /中禁用的服务?
我正在使用puppet(理论上)在安装时启动npcd,但是在Ubuntu上,该服务以RUN =“ no”的/ etc / default / npcd中的默认设置安装: $ cat /etc/default/npcd # Default settings for the NPCD init script. # Should NPCD be started? ("yes" to enable) RUN="no" # Additional options that are passed to the daemon. DAEMON_OPTS="-d -f /etc/pnp4nagios/npcd.cfg" 我认为这组人偶配置会处理一些事情: service { "npcd": enable => true, ensure => "running", …
13 ubuntu  puppet  service 

3
如何手动创建Puppet CA和证书?
我想知道如何手动(使用openssl代替puppet ca命令)创建可供Puppet使用的CA?目标是对此类CA进行脚本创建,以将其部署到多个puppetmasters上,而不是通过puppet cert命令在其上创建证书。 关于如何做的任何想法?我只能找到类似的内容:https : //wiki.mozilla.org/ReleaseEngineering/PuppetAgain/HowTo/Set_up_a_standalone_puppetmaster,但是它无法正常工作-在创建CA和客户端证书并将它们应用于puppetmaster之后,它抱怨: Feb 16 09:35:20 test puppet-master[81728]: Could not prepare for execution: The certificate retrieved from the master does not match the agent's private key. Feb 16 09:35:20 test puppet-master[81728]: Certificate fingerprint: 4F:08:AE:01:B9:14:AC:A4:EA:A7:92:D7:02:E9:34:39:1C:5F:0D:93:A0:85:1C:CF:68:E4:52:B8:25:D1:11:64 Feb 16 09:35:20 test puppet-master[81728]: To fix this, remove the certificate from both …

2
使用p设置主机名?
有没有办法使用puppet设置服务器的主机名? 我可以编写一个自定义类型,但是也许有一个更简单的方法。 谢谢 [编辑]抱歉,我应该提到我无主运行puppet,puppet首先安装,然后再设置其他所有内容。
13 puppet 

2
为Linux命令添加随机延迟
我正在使用func在我们的服务器上执行并行命令。 前几天,我们遇到了一个问题,当puppetvia 的服务重新启动func使我们所有的服务器同时受到攻击puppetmaster时。 我的问题:如何在一组服务器上执行相同的确切命令,同时增加在各个服务器上执行之前的延迟? 例如: random_delay && service puppet restart 我对random_delay命令部分很感兴趣。

4
在Puppet中,如何保护密码变量(在这种情况下为MySQL密码)?
我正在使用Puppet为MySQL提供参数化类: class mysql::server( $password ) { package { 'mysql-server': ensure => installed } package { 'mysql': ensure => installed } service { 'mysqld': enable => true, ensure => running, require => Package['mysql-server'], } exec { 'set-mysql-password': unless => "mysqladmin -uroot -p$password status", path => ['/bin', '/usr/bin'], command => "mysqladmin -uroot …

4
木偶:获取用户主目录
我创建一个用户如下 user { $username: comment => "$name", shell => "$shell", managehome => false, password => "$password", groups => $groups } 现在,如您所见,我正在做一个managehome是false。 现在稍后,我需要将文件推送到用户的主目录。 $key = "${homedir}/${name}/file" file { $key: ensure => present, owner => $username, group => $username, mode => 600, content => "$keyvalue", subscribe => User[$username], } 我该如何获取用户的主目录?
13 linux  puppet 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.