Puppet简单设置教程

原文链接

安装

Server端

yum install -y puppetserver
service puppetserver start  # 有些用的是puppetmaster,如果启动报内存限制,那么修改配置/etc/sysconfig/puppetserver将 JAVA_ARGS="-Xms512m -Xmx512m"修改为JAVA_ARGS="-Xms2g -Xmx2g"

Client端

sudo rpm -Uvh https://yum.puppetlabs.com/puppetlabs-release-pc1-el-7.noarch.rpm # 这里要注意版本是6还是7
yum install -y puppet-agent

dashboard的安装

参考文章

# 首先得有数据库
create database puppetdash # 创建用户
grant all privileges on puppetdash.* to puppetdash@localhost identified by 'password';
flush privileges;

# 安装软件
rpm -ivh http://yum.puppetlabs.com/el/6/products/x86_64/puppetlabs-release-6-1.noarch.rpm
yum -y install puppet-dashboard

# 修改puppet-dashboard配置
cp /usr/share/puppet-dashboard/config/settings.yml.example /usr/share/puppet-dashboard/config/settings.yml
vim /usr/share/puppet-dashboard/config/database.yml 内容如下:
/usr/share/puppet-dashboard/config/database.yml
production:
 database: puppetdash
 username: puppdash
 password: motorrobot
 encoding: utf8
 adapter: mysql
development:
 database: puppetdash
 username: puppdash
 password: motorrobot
 encoding: utf8
 adapter: mysql

# 生成数据
cd /usr/share/puppet-dashboard
rake db:migrate
/etc/init.d/puppet-dashboard start

# 修改puppet的配置
vim /etc/puppet/puppet.conf # 添加内容
report = true
[master]
reports = store, http
reporturl = http://192.168.99.1:3000/reports/upload

# 启动服务
puppetd -t
chown puppet-dashboard /usr/share/puppet-dashboard/log/
chkconfig puppet-dashboard on
chkconfig puppet-dashboard-workers on
chkconfig mysqld on
/etc/init.d/puppet-dashboard restart
/etc/init.d/puppet-dashboard-workers restart

Hello World举例

  1. 新建module

     cd /opt/puppetlabs/puppet/modules/
     mkdir -p helloworld/manifests/
    
     vim helloworld/manifests/init.pp # 内容如下:
     class helloworld {
         notify { 'hello, world!': }
     }
    
     vim helloworld/manifests/motd.pp # 内容如下:
     class helloworld::motd {
         file { '/etc/motd':
         owner  => 'root',
         group  => 'root',
         mode    => '0644',
         content => "hello, world!\n",
         }
      }
    
  2. 将module添加到主配置文件

     cd /etc/puppetlabs/code/environments/production/manifests
     vim site.pp  # 内容如下:
     node default{
         class { 'helloworld': }
         class { 'helloworld::motd': }
     }
    

测试

分别在两个端启动puppet服务,然后客户端执行puppet agent -t

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一.puppet介绍 (1)什么是puppetpuppet是一种重量级自动化运维工具,实现自动化运维以及能够帮助系...
    楠人帮阅读 1,088评论 0 3
  • 1.puppet 是什么 puppet是一个开源的软件自动化配置和部署工具,很多大型IT公司均在使用puppet对...
    milo_e1ce阅读 5,003评论 0 4
  • Puppet理论定义: Puppet 是一个跨平台的集中化配置管理系统,它使用自有的描述语言,可管理配置文件、用户...
    属于你的世界阅读 1,024评论 0 2
  • Puppet部署与应用 前言:到目前为止,我们已经搭建了很多的服务器,每一台服务器都需要执行很多的命令,给我的感觉...
    李伟铭MIng阅读 2,852评论 0 3
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,292评论 19 139