Articles of puppet

最小化CentOS和Vagrant VM安装的磁盘空间

我正在构build一个用于Vagrant和/或Puppet的基础虚拟机。 我已经完成了最小的CentOS 6.3安装32位。 它仍然是大约800 MB的大小。 从我发现的那里,人们已经build立了大约300 MB的磁盘基础虚拟机。 我已经清除了yumcaching。 我看到很多地区数据,但是我不确定是否应该删除它们,因为最终可能需要Web开发和国际化。 任何人有一些提示来帮助我? 我没有find很多。 请注意:没有安装桌面。

使用puppet与Microsoft iSCSI部署Windows备份

我们目前已经开始使用以下策略进行Windows备份,我希望通过puppet进行部署: iSCSI启动器在客户端服务器上启用。 iSCSI虚拟磁盘+ VHDconfiguration在备份服务器上,VHD文件分布在众多RAID容器中。 同样在备份服务器上,configuration了一个新的iSCSI目标,指向该虚拟磁盘,仅限于客户服务器的DNS名称或IP。 随机的用户名/密码被configuration。 客户端服务器上的iSCSI启动器configuration为连接到新目标,并通过磁盘pipe理添加虚拟磁盘。 最后,windows备份被configuration为在本地指向VHD,以执行备份。 我刚刚开始使用puppet,到目前为止,我的主要挑战是必须按照特定顺序configuration两个单独的节点(例如,iSCSI启动器在存在之前无法连接到目标)。 可能的解决scheme 导出的资源集合 我一直在寻找一种方法来做到这一点,到目前为止,我能find的最适合的configuration模式是Exported Resource Collection 。 我已经看了一些使用Nagios的例子,似乎需要我定义一个新的types,这本质上是Ruby代码,以便对导出的资源执行操作。 尽pipe我有编程经验,但是我的同事却不这样做,而且我尽量保持尽可能简单。 单独的节点条目 我正在尝试的一个想法是,而不是尝试从客户端节点定义整个备份(目标服务器和启动器)所涉及的复杂性,只需在每个节点中定义两个独立的angular色即可。 然后为了简化事情,虽然configuration应该按照特定的顺序来完成,但我只是依靠puppet来继续尝试运行configuration,最终所有的预先要求都会被满足。 (例如,第一次,木偶可能会尝试连接到iSCSI目标,但在第二次尝试时,另一个节点应该已经完成​​创build目标,所以如果puppet第二次尝试,它应该suceed。) 就像是: node 'backup-server' { windows_backup::server::target { 'client01': dns_name => 'client01.example.com', username => '', password => '', drive_letter => '', drive_size => '', }, windows_backup::server::target { 'client02': dns_name => 'client02.example2.com', username => '', password => […]

如何将远程pipe理工具(puppet或chef)与同步工具(例如rsync)结合使用将多个服务器的日志文件发送到中央服务器?

概要 我如何使用远程pipe理工具(puppet或chef)与同步工具(例如rsync)和调度程序(cron)结合将日志文件从多个服务器发送到中央服务器? 上下文 我们的系统pipe理员(正确)收紧了开发人员访问生产服务器的权限。 其中一个后果就是:在支持客户问题时,开发者尤其不能轻松访问日志文件。 目标:将文件发送到通用日志服务器 我想设置日志自动复制到中央“日志服务器”。 支持问题时,开发人员/支持人员可以读取“日志服务器”文件系统。 这是我们的文件系统结构的一个例子。 每个客户一个目录。 在此,每个应用程序一个目录。 每个应用程序有不同的子目录结构和日志文件名称。 Server A d:/ Instances/ CustomerFoo App 101/ logs server.log access.log App 201/ logs stdout.log jdbc.log timing.log CustomerBar/ App 101/ …. App 301/ logs/ monitor.log 这些将会到一个像这样的结构的中央服务器。 (客户名称在企业内是唯一的,所以我们不会有任何碰撞) LogServer d:/ logfiles/ CustomerFoo App 101/ logs/ App 201/ logs/ … CustomerBar/ App 101/ …. App 301/ […]

相同的Vagrant VM安装pip包的方式不同吗?

我有一个stream浪虚拟机通过Puppet供应。 我正在testing这两个不同的Ubuntus,12.04和13.10,都使用“标准”precise32框。 我正在testing的应用程序是使用Python的setuptools(通过执行pip install /vagrant ) pip install /vagrant的Django应用程序。 使用13.10作为主机,虚拟机似乎configuration得很好。 然而在12.04,一些后来的Puppet规则开始失败,取决于我的manage.py脚本: vagrant@precise32:~$ sudo -u buffet ~buffet/project/manage.py collectstatic Traceback (most recent call last): File "/home/buffet/project/manage.py", line 11, in <module> import settings File "/home/buffet/project/settings.py", line 3, in <module> import pkg_resources File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2727, in <module> add_activation_listener(lambda dist: dist.activate()) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 700, in subscribe callback(dist) File […]

Windows上的木偶默默地失败

我新添加的Windows Puppet节点似乎都不起作用,尽pipe没有任何错误。 我的Linux节点工作正常。 我在我的nodes.pp中尝试了下面的这一行,并且puppet kick没有错误地运行,但是什么都不做(其他Linux框在相同的nodes.pp中做他们应该做的)。 C:\test存在。 node 'my-winserver.mydomain.org' { file { 'C:\test\Puppet_Works': ensure => present } 我试图通过开始菜单中的Puppet目录打开“打开木偶与命令提示”选项,并试图这样做: puppet apply -e "file { 'C:\PuppetFile': ensure => present}" 再次,它默默地失败,没有错误,只是不做蹲。 盒子出现在cert list –all的木偶大师 – 所有。 你看到这个Windows盒子的PuppetMaster日志中有很多GET和PUT。 木偶2.7(Win客户端2.7.23)主操作系统RHEL 5服务器,Win客户端OS服务器2003,2008

在centos 6.5上用puppetlabs / apache设置suPHP

我试图在puppetlabs / apache模块的centos 6.5盒子上设置suPHP。 Apacheconfiguration file { "/var/www/vhosts": ensure => "directory", owner => "root", group => "root", mode => 755, } class { '::apache': require => File['/var/www/vhosts'], } include ::apache::mod::suphp Vhosts例子 apache::vhost { $site: port => '80', serveraliases => [ $root, "www.${site}", "development.${site}", "www.development.${site}", ], options => ['Indexes', 'FollowSymlinks'], suphp_engine => 'on', suphp_addhandler => 'x-httpd-suphp', […]

无法使用puppetlabs apache模块访问www

这些虚拟主机是用puppetlabs-apache模块pipe理的,我不能用www访问网站,但是我可以不用它。 当我使用www我得到一个空白页面,并没有任何错误日志和非www工作正常。 这里是网站的conf文件 # ************************************ # Vhost template in module puppetlabs-apache # Managed by Puppet # ************************************ <VirtualHost *:80> ServerName www.example.com ## Vhost docroot DocumentRoot "/var/www/vhosts/example.com/httpdocs" ## Directories, there should at least be a declaration for /var/www/vhosts/example.com/httpdocs <Directory "/var/www/vhosts/example.com/httpdocs"> AllowOverride ALL Order allow,deny Allow from all AddHandler x-httpd-php .php .php3 .php4 .php5 suPHP_UserGroup jasonnarog jasonnarog […]

尝试自动注册一个Nagios NSCA客户端

我正在使用NSCA设置Nagios监视,以便从受监视的主机上报告,并且所有监视都使用被动检查。 目前,受监视的主机在定义其地址,主机组等的nagios等文件夹中都有一个configuration文件。 为了简化添加新主机和启动dynamic环境的能力, 我试图想出一种方法来自动注册新的受监控主机。 我们的nagios环境是全新的,所以我们接受各种方法。 我们的环境也有GitHub企业和Puppet,我有一种感觉可以用在解决scheme中,我们希望利用。 这些服务器在AWS中托pipe。 我们只使用Nagios Core,而不是Nagios XI。

木偶撤销OpenSSL证书

我正在经历木偶大师的一些authentication复兴,这种行为似乎是随机的。 我刚刚检查了一个CA证书,我发现这个: # openssl crl -text -in /var/lib/puppet/ssl/ca/ca_crl.pem Certificate Revocation List (CRL): Version 2 (0x1) Signature Algorithm: sha1WithRSAEncryption Issuer: /CN=Puppet CA: puppet.master Last Update: Dec 16 11:55:15 2015 GMT Next Update: Dec 14 11:55:16 2020 GMT CRL extensions: X509v3 Authority Key Identifier: keyid:FF:9D:F6:0B:4A:17:27:A6:7D:DF:3A:8A:FC:D1:99:73:24:CA:87:08 X509v3 CRL Number: 83 Revoked Certificates: Serial Number: 02 Revocation Date: Nov […]

CentOS 6上的远程主机识别(SSH)定期更改

当我尝试使用SSH连接时出现以下错误: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that the RSA host key has just been changed. The fingerprint for the RSA key sent by the remote host is […]