Puppet安装以及集成Dashboard手册

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Puppet安装以及集成Dashboard手册Puppet简介puppet是一种Linux、Unix、windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件、用户、cron任务、软件包、系统服务等。puppet把这些系统实体称之为资源,puppet的设计目标是简化对这些资源的管理以及妥善处理资源间的依赖关系。puppet采用C/S星状的结构,所有的客户端和一个或几个服务器交互。每个客户端周期的(默认半个小时)向服务器发送请求,获得其最新的配置信息,保证和该配置信息同步。每个puppet客户端每半小时(可以设置)连接一次服务器端,下载最新的配置文件,并且严格按照配置文件来配置服务器.配置完成以后,puppet客户端可以反馈给服务器端一个消息.如果出错,也会给服务器端反馈一个消息.安装前准备测试机环境系统角色IP主机名CentOS6.5Master10.2.180.183app180-183.test.comCentOS5.5Client10.2.180.181app180-181.test.comCentOS6.4Client10.2.180.184app180-184.test.com1.关闭selinuxsed-i'/SELINUX/s/enforcing/disabled/'/etc/selinux/config;setenforce02.关闭iptablechkconfigiptablesoff;serviceiptablesstop3.时间同步ntpdatetime.nist.gov;echo'*/10****ntpdatetime.nist.gov'/var/spool/cron/root4.配置域名解析,或直接在hosts里配置主机名5.配置epol及puppet源EnterpriseLinux6rpm-ivh://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpmEnterpriseLinux5rpm-ivh://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm保留yum下载的rpm包sed-is/keepcache=.*/keepcache=1/g/etc/yum.conf安装master和agentMasterPuppetMasterServer安装,安装时最新版服务端为3.6.1-1yum-yinstallpuppet-server更新puppetresourcepackagepuppet-serverensure=latest配置chkconfigpuppetmasteron;servicepuppetmasterstart启动后会自动在/var/lib/puppet/ssl下生成主机名.pem的ca文件。NodesPuppetAgentNodes安装,安装时最新版客户端为3.6.1-1yum-yinstallpuppet更新puppetresourcepackagepuppetensure=latestnode配置连接到puppet-mastersed-i's/#PUPPET_SERVER=puppet/PUPPET_SERVER=app180-183.test.com/g'/etc/sysconfig/puppetsed-i's/#PUPPET_PORT=8140/PUPPET_PORT=8140/g'/etc/sysconfig/puppetsed-i's/#PUPPET_LOG=\/var\/log\/puppet\/puppet.log/PUPPET_LOG=\/var\/log\/puppet\/puppet.log/g'/etc/sysconfig/puppet#runinterval=60//代表60秒跟服务器同步一次echoreport=true/etc/puppet/puppet.confechoruninterval=60/etc/puppet/puppet.confchkconfigpuppeton;servicepuppetstart还有一种同步方式节省内存,直接cron方式,定时调用。使用下面语句增加crontab任务puppetresourcecronpuppet-agentensure=presentuser=rootminute=30command='/usr/bin/puppetagent--onetime--no-daemonize--splay'crontab-l启动后会自动在/var/lib/puppet/ssl下生成主机名.pem的ca文件。CA认证node启动agent后会生成主机名.pem的证书文件,自动向master要求签名的。如果node主机名改变了需要删除原证书文件,并在master上clean原客户端名字,然后重新生成证书并要求签名。删除证书文件rm-rf/var/lib/puppet/ssl/*可以使用调试模式生成证书。puppetagent--no-daemonize--debug--onetime--verbose--server=app180-183.test.commaster端列出需要签发的客户端puppetcertlist签发指定客户端puppetcertsignapp180-181.test.com签发所有客户端请求puppetcertsign--all注销客户端证书puppetcertrevokeapp180-181.test.com清除客户端证书puppetcertcleanapp180-181.test.commaster自动签名配置在服务器端的puppet.conf配置文件里面加上[main]autosign=true或直接建立文件echo*.test.com/etc/puppet/autosign.confpuppet报告系统Dashboard部署PuppetDasshboard是由支持Puppet开发的公司Puppetlabs创建的,是RubyonRails程序。可以作为一个ENC(外部节点分类器)以及一个报告工具,并且正在逐渐成为一个包含许多Puppet新功能的集成界面,例如审计和资源管理功能。PuppetDashboard是一个RubyonRails程序,用于显示Puppetmaster和agent的相关信息。它允许你查看从一个或多个Puppetmaster汇总的图形和报告数据。它同时从一个或者多个Puppetmaster上收集来自于Puppetagent的资产数据(主机的Fact和其他信息)。最后,它能作为一个ENC来配置Puppet节点,并指定这些节点上的类和参数。安装软件包yuminstallruby-mysqlmysql-serverpuppet-dashboard配置数据库chkconfigmysqldon;servicemysqldstartmysqladmin-urootpassword123456mysql建库脚本CREATEDATABASEdashboardCHARACTERSETutf8;CREATEUSER'dashboard'@'localhost'IDENTIFIEDBY'123456';GRANTALLPRIVILEGESONdashboard.*TO'dashboard'@'localhost';flushprivileges;优化数据库[mysqld]#Allowing32MBallowsanoccasional17MBrowwithplentyofspareroommax_allowed_packet=32M然后重启mysqld修改dashboard链接数据库配置vi/usr/share/puppet-dashboard/config/database.yml把production段改为如下内容,其它段可不用改建立Schemacd/usr/share/puppet-dashboard/rakegems:refresh_specs#修复什么东西rakeRAILS_ENV=productiondb:migrate没有报错的话,数据库就建立完成了。查看数据库mysqlshowtables;+------------------------------+|Tables_in_dashboard|+------------------------------+|delayed_job_failures||delayed_jobs||metrics||node_class_memberships||node_classes||node_group_class_memberships||node_group_edges||node_group_memberships||node_groups||nodes||old_reports||parameters||report_logs||reports||resource_events||resource_statuses||schema_migrations||timeline_events|+------------------------------+18rowsinset(0.00sec)测试DashBoard是否工作cd/usr/share/puppet-dashboard/./script/server-eproduction你可以直接使用访问.运行Dashboard(WEBrick方式)/etc/init.d/puppet-dashboardstart访问这种方式只是测试运行的时候使用,官方不推荐,不支持并发,只适合少量客户端。安装配置Passenger方式yuminstallopenssl-develzlib-develcurl-develgcc-c++httpdhttpd-develmod_sslruby-develrubygemsgcc安装Rack/PassengerPassenger是Apache2.x的一个扩展,用来在Apache中运行Rails或Rack应用。puppetmaster默认使用WEBrick提供文件服务,如果你的puppet客户端很多,puppetmaster的文件服务性能会很差,为了使puppetmaster更健壮,所以使用Apache提供文件服务。geminstallrackpassenger#这个可以本地安装的通过下面脚本下载foriindaemon_controller-1.2.0json-1.5.5passenger-4.0.43rack-1.5.2rake-0.8.7dowget然后geminstall--local*.gempassenger-install-apache2-module安装PuppetMasterRackApplicationmkdir-p/usr/share/puppet/rack/puppetmasterdmkdir/usr/share/puppet/rack/puppetmasterd/public/usr/share/puppet/rack/puppetmasterd/tmpcp/usr/share/puppet/ext/rack/config.ru/usr/share/puppet/rack

1 / 12
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功