Articles of puppet

将stream浪Ubuntu VM迁移到物理机器

我正在尝试使用vagrant和puppet工作stream来configuration一个Ubuntu生产服务器VM,它将托pipe一个Web应用程序。 我希望能够重复使用这个工作stream程来在未来configuration多个相同的虚拟机。 VMconfiguration完成后,我正在尝试创build映像并将VM迁移到物理机器。 我计划使用像雾这样的PXE映像服务来创buildVM的映像,然后将其部署在裸机上。 我的问题是: 我会碰到任何不兼容问题/有没有存在,我需要一个类似于sysprep的实用程序? 是否有更有效的工具可以/应该用于这种情况? 任何援助感谢!

使用Puppet使用angular色 – configuration文件模式时设置SSL密钥

这是一个场景。 我有两个Web应用程序(让我们称之为webapp1和webapp2)需要apache,php(有一些模块)和web应用程序自己的代码。 这是我设置这个(我使用angular色configuration文件模式): modules/ apache/ php/ webapp1/ # responsible for cloning the repo and setting up config files webapp2/ # responsible for cloning the repo and setting up config files profiles/ manifests/ webapp1.pp # responsible for putting the stack together webapp2.pp # responsible for putting the stack together profiles / manifests / webapp1.pp看起来像这样: class profiles::webapp1 […]

configurationpuppet从PPA安装特定的Apache版本

我的问题类似于使用Puppet从PPA安装包,但我不知道如何使它工作。 我希望Puphpet能够安装Apache 2.4.23-5.0这个PPA而不是正常的deb回购。 在deb repo中已经有一个同名的版本,所以重要的是我得到这个包含backport的自定义版本。 我想使用@msanford提供的解决scheme ,但不知道从哪里开始。 我可以只追加这个片段: apt::ppa { 'ppa:ondrej/apache2':} package { 'apache2': ensure => 'installed', require => Apt::Ppa['ppa:ondrej/apache2'] 到… / vm / profile / my-box / puphpet / puppet / modules / apt / manifests / init.pp?

在exec环境中设置的puppetvariables不能在课程的其他地方访问

我正在尝试使用基于检查的日志path来configuration日志configuration,以查看该日志文件是否存在。 但是,if语句总是返回true,即使我知道/var/log/hermes/hermes.log不存在。 我已经testing了exec {“service_log_check”onlyif正在工作,所以这与if语句有关。 我曾想过在每个exec中添加像environment => [“FOO = true”的内容,然后将if语句更改为if FOO == true,但似乎在exec环境中设置的variables只能在exec中访问,而不是整个类。 这让我疯狂!!! 我们正在使用木偶v3.7 class hermes :: fluentd($ service_name ='hermes',$ logs ='/ var / log / test / test.log'){ exec {"service_log_check": command => '/bin/true', onlyif => '/usr/bin/test -e /var/log/hermes/hermes.log', } exec {"service_log_json_check": command => '/bin/true', onlyif => '/usr/bin/test -e /var/log/hermes/hermes-json.log', } exec {"request_log_check": command => […]

寻找书籍来进一步提高我的培训,主要思科ASA和networking

工作已经提供了订购书籍,让我学习新的东西,所以我一直在Google上search,现在我想我会利用大量的互联网集体帮忙订购什么书。 到目前为止,我select了以下所有与我目前工作细节有关的书籍。 Nagios 3企业networking监控:包括插件和硬件设备[平装]:ISBN-13:978-1597492676 ISBN13:978-1-4302-3057-1 Pro Puppet ISBN 13:9780735627116 Windows Server 2008pipe理员口袋顾问,第二版[已更新为R2] 我主要使用BSD和Linux工作,但是我知道这些,所以我真正想学的是新东西。 这是Puppet,Nagios(我知道这个基础知识,但需要一本书来巩固它)和Windows,因为我可以被扔进Windows任务进一步在路上。 另外我还提供了一些思科ASA5510和6500的例子,所以我应该学习什么书来学习这些系统? 我非常精通terminal和文本命令,我只需要学习这些设备的语法以及大规模networking的基本培训。 奖金是一些活动目录和net-snmp(或一般snmp)书籍,我没有时间去search这些。 我当然是在寻找那些经验丰富的人阅读他们推荐的书,如果你没有,那么就不用费力去search和推荐他们,我可以自己做。 ;)

用于pipe理服务器群集中ssh密钥的工具

我有几个Debian服务器,目前我正在努力添加手动ssh密钥到服务器的authorized_keys文件。 你知道一个可以用一个很好的半自动化的方式来完成这个任务的应用程序吗? 理想情况下,一个漂亮的界面,我可以看到哪些键被用在哪个服务器等? 我刚刚在这篇文章里读到了关于木偶的事 ,但是我需要评估一下。 你有什么build议吗?

在Puppet清单中使用RVM

我目前正在深入研究Puppet和几个清单,我遇到了有关安装的ruby版本或rubygems的问题。 我猜想其他人也可能遇到这样的问题。 由于我无法通过Googlefind正确的指针,所以我想问问是否有人在RVM中使用RVM并在由RVM提供的特定gemset中运行Bundler和Passenger。 我尝试了blt04中的puppet-rvm ,但是它并不能帮助在RVM gemset中运行bundler,而且我也找不到configurationruby应用程序在RVM上下文中运行的信息(例如使用项目.rvmrc)

Centos – 无法从puppet仪表板访问节点

我试图设置puppet的仪表板来监视我的服务器的状态。 通过下面显示的configuration,我的客户端(或节点)只显示为Unreported,并表示在仪表板概览中没有报告 – 但是该节点可以与服务器通信,并按需要进行更改,但是不显示任何内容。 我已经按照这些文件试图设置它,但我不知道我做错了什么。 什么可能是一个可能的问题? // Server /etc/puppet/puppet.conf [master] reports = store,http reporturl = http://192.168.1.101:3000/reports/upload // Client /etc/puppet/puppet.conf [agent] report = true

木偶gitlab postgresql冲突

我试图用postgresql和gitlab来设置虚拟机。 我正在使用以下软件包: gitlab & postgresql 这是我的init.pp class { 'postgresql::server': ip_mask_deny_postgres_user => '0.0.0.0/32', ip_mask_allow_all_users => '0.0.0.0/0', listen_addresses => '*', ipv4acls => ['host all johndoe 10.1.1.0/24 cert'], manage_firewall => true, postgres_password => 'TPSrep0rt!', } class { 'gitlab': git_email => '[email protected]', git_comment => 'GitLab Performates', gitlab_domain => 'gitlab.foobar.fr', gitlab_dbtype => 'pgsql', gitlab_dbname => 'gitlab', gitlab_dbuser => 'gitlab', gitlab_dbpwd […]

PostgreSQL 9.5通过puppet模块无法在Ubuntu Trusty上安装

尝试使用Puppet在Ubuntu Trusty上安装PostgreSQL 9.5,使用所有我能find的文档 ,使用以下简单的类结构: class { 'postgresql::globals': manage_package_repo => true, version => '9.5' } -> class { 'postgresql::server': ip_mask_allow_all_users => '0.0.0.0/0', listen_addresses => '*', postgres_password => '', encoding => 'UTF-8', locale => 'en_US.UTF-8', } 我遇到以下致命错误: ==> default: Debug: Automatically imported postgresql::server::database_grant from postgresql/server/database_grant into production ==> default: Error: validate_re(): "B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8" does not match ["\\A(0x)?[0-9a-fA-F]{8}\\Z", "\\A(0x)?[0-9a-fA-F]{16}\\Z"] […]