我是Puppet (开源版)的新手,有一个相对直接的问题。 当我启动一个新的主机时,我想让puppet将新主机的公共rsa密钥添加到/ etc / ssh / ssh_known_hosts中,所以更新后的ssh_known_hosts文件将被puppet代理提取。 我试过了sshkey资源: # /etc/puppet/modules/ssh/manifests/client.pp sshkey { $hostname: ensure => present, type => "rsa", key => $sshrsakey, } 但是,ssh_known_hosts似乎没有在puppetmaster或代理上进行修改。 我的清单通过语法validation,当我运行puppet parser validate client.pp和运行puppet agent –test代理不报告任何问题。 为了使用sshkey资源,我必须设置Stored Configs吗? 我喜欢存储configuration的function,但它似乎是我所需要的矫枉过正,似乎增加了大量的开销。 我的另一个select是将$sshrsakey事实吐到一个file ,但是它需要检查公钥的存在,所以它不会被添加多次。
目前我有2个VPS,设置和configuration几乎完全一样 ,有一些其他的小Nginxconfiguration。 我手动完成了这一切 我想得到几个其他的VPS和部署完全相同的设置和configuration,但我不知道使用哪个工具。 所有的VPS都有root访问和SSH。 我已经阅读了关于Puppet,Cobbler和CloneZilla等项目的ServerFault,据我所知,Puppet和Cobbler服务于不同的目的,但是CloneZilla在这方面做得怎样? 我可以从一台服务器克隆使用CloneZilla的全新安装/设置,部署到另一台服务器,并使用Puppet + Cobblerpipe理未来的更新等? 你也会给第一次使用这些工具的build议吗? 每个VPS位于不同的位置,并提供不同的网站(根本不连接) 精确设置= LEMP +清漆+ WordPress [Munin + Nagios + Awstats]
我正在使用puppetlabs apache模块来pipe理我的apacheconfiguration。 我已经configuration了一切,除了mod_prefork的服务器设置。 有一个prefork的模板,它初始化类时变得可变,但我不完全确定如何。 我不想手动更改模板中的服务器设置,因为我在多个主机上运行apache,并且不希望更改模板本身的值。 你有什么想法如何做到这一点? 链接到模块在这里 。 我已经阅读了文档,但我无法弄清楚如何去做。
configuration木偶模块的最佳做法是什么? 我有傀儡2.7.11 。 我觉得这种方式很混乱,看起来像使用全局variables。 node default { $always_apt_update = true include apt } 我应该创buildinheritance原来大部分configuration的类吗? 文档似乎有太多的版本,我不知道哪一个适用于我。 更新: 当我尝试这个: class { 'apt': always_update => 'true', } 我收到一个错误: Error 400 on SERVER: Invalid parameter always_update at /etc/puppet/manifests/nodes.pp:32
我希望~/.bashrc在任何时候改变其内容。 我用这样的东西创build了一个bashrc类: file { "/root/.bashrc": ensure => present, owner => root, group => root, mode => 0644, source => "puppet:///bashrc/root/.bashrc" } exec { "root_bashrc": command => "source /root/.bashrc", subscribe => File["/root/.bashrc"], } 但是如你所知, source是一个shell内置的命令,在运行agent的时候,我得到了下面的错误: # puppet agent –no-daemonize –verbose notice: Starting Puppet client version 2.7.1 info: Caching catalog for svr051-4170 info: Applying configuration version '1311563901' […]
我们使用puppet来pipe理一组Ubuntu,并且很快就要求每台服务器共享一个通用的SSL证书,以便通过HTTPS为网站提供服务。 当然,我们想使用木偶来pipe理证书,但是意识到将它放入VCS(从木偶大师获取模块的地方)这一事实可能不是一个好主意,因为这会影响安全性。 有没有更好的解决scheme,任何人都知道?
我有点卡住了一个问题,我试图把我的头包裹好几天了。 这是我在做什么: 通过使用Veewee,我创build一个VirtualBox图像,然后我从它创build一个Vagrant框。 看到这里 , 在这里 最后我从Vagrant运行puppet来安装RabbitMQ,请看这里 。 Veewee,Vagrant和VirtualBox都运行在MacOS X 10.7.4上。 stream浪盒本身就是CentOS 6.2。 这工作很好,相当一段时间,直到我几天前重新创buildVirtualBox图像。 在puppet运行期间安装rabbitmq-plugins期间,我现在得到以下错误: /Stage[main]/Rabbitmq/Exec[rabbitmq-plugins]/returns: erlexec: HOME must be set 我的RabbitMQ puppetconfiguration可以在我的GitHub仓库find,但是这里是最重要的部分: $version = "2.8.7" $url = "http://www.rabbitmq.com/releases/rabbitmq-server/v${version}/rabbitmq-server-${version}-1.noarch.rpm" package{"erlang": ensure => "present", } package{"rabbitmq-server": provider => "rpm", source => $url, require => Package["erlang"] } exec{"rabbitmq-plugins": path => "/usr/bin:/usr/sbin:/bin", command => "rabbitmq-plugins enable rabbitmq_management", require […]
我对Puppetconfigurationpipe理系统感兴趣,但是想知道启动与Puppet之间的优势在哪里? 今天,我在启动(由Cobbler提供支持)中执行了很多任务,包括一些自定义分区。 问题是,如果更好地将所有内容(除了自定义分区和puppet包)都移动到Puppet中,可以进行更灵活的pipe理? 或者有一些明确的指导方针呢? 谢谢。
我需要通过木偶安装exim4。 由于此安装需要交互式configuration,因此我需要一个响应文件,但是我不知道如何生成一个响应文件。 那么,我如何生成一个响应文件?
我使用func在我们的服务器上执行并行命令。 有一天,我们遇到了一个问题,通过func的服务重启puppet使我们所有的服务器同时击中了我们的puppetmaster 。 我的问题:如何在一组服务器上执行相同的确切命令,同时在各个服务器上执行延迟之前添加延迟? 例如: random_delay && service puppet restart 我对命令的random_delay部分感兴趣。