{"id":21186,"date":"2015-06-19T13:06:14","date_gmt":"2015-06-19T07:36:14","guid":{"rendered":"http:\/\/www.tothenew.com\/blog\/?p=21186"},"modified":"2016-12-19T15:07:36","modified_gmt":"2016-12-19T09:37:36","slug":"puppet-dashboard-installation-on-amazon-linux-based-ec2-server","status":"publish","type":"post","link":"https:\/\/www.tothenew.com\/blog\/puppet-dashboard-installation-on-amazon-linux-based-ec2-server\/","title":{"rendered":"Puppet Dashboard Installation on Amazon Linux based  EC2 Server"},"content":{"rendered":"<p>Puppet Dashboard is a puppet user interface that gives you a bird eye view of system configurations. It shows the list of nodes that can be in changed, unchanged, pending, failed or unreported state. You can manage all your nodes from the dashboard without login into the puppet master server<\/p>\n<h3><span style=\"color: #ffa500\">Requirements:<\/h3>\n<p>Puppet Master (2.7.25)<\/p>\n<h3><span style=\"color: #ffa500\">Install MYSQL Server<\/h3>\n<p>[shell]yum -y install mysql-server<br \/>\n\/etc\/init.d\/mysqld start[\/shell]<\/p>\n<h3><span style=\"color: #ffa500\">Create Database for puppet Dashboard<\/h3>\n<p>[shell]mysql -u root -p<br \/>\nmysql&gt; create database puppetdash;<br \/>\nmysql&gt; exit[\/shell]<\/p>\n<h3><span style=\"color: #ffa500\">Install Puppet-Dashboard<\/h3>\n<p>[shell]rpm -i  -y install puppet-dashboard<br \/>\nyum -y install puppet-dashboard[\/shell]<\/p>\n<h3> <span style=\"color: #ffa500\">Configure Puppet Dashboard<\/h3>\n<p>[shell]<br \/>\nmv \/usr\/share\/puppet-dashboard\/config\/database.yml.rvm \/usr\/share\/puppet-dashboard\/config\/database.yml<br \/>\nvim \/usr\/share\/puppet-dashboard\/config\/database.yml<br \/>\n[\/shell]<\/p>\n<div class=\"wp_syntax\">\n<div class=\"code\">\n<pre class=\"groovy\">production:\r\ndatabase: puppetdash\r\nusername: root\r\npassword: &lt;mysqlrootpassword&gt;\r\nencoding: utf8\r\nadapter: mysql\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Make the file look like above and comment all other lines<\/p>\n<h3><span style=\"color: #ffa500\">Install Dependencies<\/h3>\n<p>1.<strong><span style=\"color: #ffa500\">Install compatible ruby<\/strong><\/p>\n<p>[shell]yum install -y gcc zlib zlib-devel wget<br \/>\nwget ftp:\/\/ftp.ruby-lang.org\/pub\/ruby\/1.8\/ruby-1.8.7-p330.tar.gz<br \/>\ntar xvf ruby-1.8.7-p330.tar.gz<br \/>\ncd ruby-1.8.7-p330<br \/>\n.\/configure &#8211;enable-pthread<br \/>\nmake<br \/>\nmake install[\/shell]<\/p>\n<p>2.<strong><span style=\"color: #ffa500\">Use the latest installed ruby<\/strong><\/p>\n<p>[shell]update-alternatives &#8211;config ruby[\/shell]<\/p>\n<p>By default when you install puppet master ruby comes with it and that ruby version i.e. 2.0.0 creates some conflicts during further puppet dashboard configuration.So we use the manually installed ruby for further configuration.<\/p>\n<p>3.<strong><span style=\"color: #ffa500\">Install the compatible RubyGems<\/strong><\/p>\n<p>[shell]yum -y install rubygems18*<br \/>\n#This will install gems 1.8.25<br \/>\ngem install stomp<br \/>\ngem install rakegem install ruby-mysqlgem install ruby-mysql<br \/>\ngem install ruby-mysql[\/shell]<\/p>\n<h3><span style=\"color: #ffa500\">Migrate the database<\/h3>\n<p>[shell]cd \/usr\/share\/puppet-dashboard<br \/>\n\/usr\/bin\/rake RAILS_ENV=production db:migrate[\/shell]<\/p>\n<p>db:migrate command will modify the schema of your database.<\/p>\n<h3><span style=\"color: #ffa500\">Add reporting to puppet.conf<\/h3>\n<p>[shell]vim \/etc\/puppet\/puppet.conf[\/shell]<\/p>\n<div class=\"wp_syntax\">\n<div class=\"code\">\n<pre class=\"groovy\">[master]\r\nreport = true\r\nreports = store, http\r\nreporturl = \r\n<\/pre>\n<\/div>\n<\/div>\n<p>Here we are commanding the puppet master server to \u00a0start sending the reports on a specified report url, you can specify your private ip over here for reporturl<\/p>\n<h3><span style=\"color: #ffa500\">Run puppet manually<\/h3>\n<p>[shell]chown puppet-dashboard \/usr\/share\/puppet-dashboard\/log\/<br \/>\n\/sbin\/chkconfig puppet-dashboard on<br \/>\n\/sbin\/chkconfig puppet-dashboard-workers on<br \/>\n\/sbin\/chkconfig mysqld on<br \/>\n\/etc\/init.d\/puppet-dashboard restart<br \/>\n\/etc\/init.d\/puppet-dashboard-workers restart[\/shell]<\/p>\n<p>Access the Dashboard as  where xx.xx.xx.xx is your public ip<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-21342\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/06\/dash2.png\" alt=\"dash2\" width=\"1287\" height=\"539\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Puppet Dashboard is a puppet user interface that gives you a bird eye view of system configurations. It shows the list of nodes that can be in changed, unchanged, pending, failed or unreported state. You can manage all your nodes from the dashboard without login into the puppet master server Requirements: Puppet Master (2.7.25) Install [&hellip;]<\/p>\n","protected":false},"author":175,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":1},"categories":[1174],"tags":[1885,1871,1884],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/21186"}],"collection":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/users\/175"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/comments?post=21186"}],"version-history":[{"count":0,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/21186\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/media?parent=21186"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/categories?post=21186"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/tags?post=21186"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}