| @@ -0,0 +1,188 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <head> | ||
| <meta charset="utf-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||
| <meta name="description" content="#! Shit Lano Says, dd if=/dev/brain of=/dev/blog"> | ||
|
|
||
|
|
||
|
|
||
|
|
||
| <meta name="tags" contents="puppet" /> | ||
| <meta name="tags" contents="centOS 6.5" /> | ||
|
|
||
| <link href="/theme/css/lanox.css" rel="stylesheet"> | ||
| <link rel="stylesheet" href="/theme/css/pygments.css"> | ||
|
|
||
| <link href="//fonts.googleapis.com/css?family=Lato:400,700|Source+Code+Pro" rel="stylesheet" type="text/css"> | ||
|
|
||
| </head> | ||
|
|
||
| <body> | ||
| <body> | ||
| <header> | ||
| <div class="logo"> | ||
| <h1>LPP</h1> | ||
| </div> | ||
|
|
||
| <div class="hero"> | ||
| <h1><a href="/">#! Shit Lano Says <strong></strong></a></h1> | ||
| </div> | ||
| </header> | ||
|
|
||
| <!-- Menu Starts From Here --> | ||
| <div class="container menu"> | ||
| <ul> | ||
| <li><a href="archives.html">Archive</a></li> | ||
| <li><a href="/pages/about.html">About</a></li> | ||
| <li><a href="/pages/work.html">Work</a></li> | ||
| </ul> | ||
| <hr> | ||
| </div> | ||
| <!-- Menu ends above this comment --> | ||
|
|
||
| <div class="container content"> | ||
| <a href="/2014/May/install-puppet-server-on-centos-65/" rel="bookmark" title="Permalink to Install Puppet Server on CentOS 6.5">Install Puppet Server on CentOS 6.5</a> | ||
|
|
||
| <div class="date"> | ||
| Mon 19 May 2014<br> | ||
| <span class="author" href="/author/lano-puljic.html">Lano Puljic</a></span> | ||
| </div> | ||
| <h4>Download puppet-server from Puppet Labs</h4> | ||
| <div class="highlight"><pre>yum install -y puppet-server | ||
| </pre></div> | ||
|
|
||
|
|
||
| <h4>Start Puppet-Server</h4> | ||
| <div class="highlight"><pre>/etc/init.d/puppetmaster start | ||
| </pre></div> | ||
|
|
||
|
|
||
| <h4>Set Puppet Master to run on startup ( if you usng passenged no need to do this)</h4> | ||
| <div class="highlight"><pre><span class="na">puppet</span> <span class="na">resource</span> <span class="k">service</span> <span class="na">puppetmaster</span> <span class="na">ensure</span><span class="o">=</span><span class="k">running</span> <span class="na">enable</span><span class="o">=</span><span class="k">true</span> | ||
| </pre></div> | ||
|
|
||
|
|
||
| <h4>Download apache and necessary dependencies</h4> | ||
| <div class="highlight"><pre>yum install -y httpd httpd-devel mod_ssl ruby-devel rubygems gcc-c++ curl-devel zlib-devel make automake openssl-devel | ||
| </pre></div> | ||
|
|
||
|
|
||
| <h4>Install Rack/Passenger</h4> | ||
| <div class="highlight"><pre>gem install rack passenger | ||
| passenger-install-apache2-module | ||
| </pre></div> | ||
|
|
||
|
|
||
| <p>Add passenger to be loaded from http.conf gloabaly</p> | ||
| <div class="highlight"><pre>vi etc/http/conf/http.conf | ||
| </pre></div> | ||
|
|
||
|
|
||
| <p>Add folldowing in http.conf</p> | ||
| <div class="highlight"><pre><span class="nb">Add</span> this in Load Module section | ||
| <span class="nb">LoadModule</span> passenger_module <span class="sx">/usr/lib/ruby/gems/1.8/gems/passenger-4.0.42/buildout/apache2/mod_passenger.so</span> | ||
| <span class="nb">PassengerRoot</span> <span class="sx">/usr/lib/ruby/gems/1.8/gems/passenger-4.0.42</span>``` | ||
| <span class="nb">PassengerDefaultRuby</span> <span class="sx">/usr/bin/ruby</span> | ||
| </pre></div> | ||
|
|
||
|
|
||
| <h4>Create the directory structure for Puppet Master Rack Application</h4> | ||
| <div class="highlight"><pre>mkdir -p /usr/share/puppet/rack/puppetmasterd | ||
| mkdir /usr/share/puppet/rack/puppetmasterd/public /usr/share/puppet/rack/puppetmasterd/tmp | ||
| cp /usr/share/puppet/ext/rack/config.ru /usr/share/puppet/rack/puppetmasterd/ | ||
| chown puppet:puppet /usr/share/puppet/rack/puppetmasterd/config.ru | ||
| </pre></div> | ||
|
|
||
|
|
||
| <p>Create a virtual host file for puppet:</p> | ||
| <div class="highlight"><pre>vi /etc/httpd/conf.d/puppetmaster.conf | ||
| </pre></div> | ||
|
|
||
|
|
||
| <p>Add Following in puppetmaster.conf</p> | ||
| <div class="highlight"><pre><span class="c">#### And the passenger performance tuning settings:</span> | ||
| <span class="nb">PassengerHighPerformance</span> <span class="k">On</span> | ||
| <span class="c">#### Set this to about 1.5 times the number of CPU cores in your master:</span> | ||
| <span class="nb">PassengerMaxPoolSize</span> <span class="m">12</span> | ||
| <span class="c">#### Recycle master processes after they service 1000 requests</span> | ||
| <span class="nb">PassengerMaxRequests</span> <span class="m">1000</span> | ||
| <span class="c">#### Stop processes if they sit idle for 10 minutes</span> | ||
| <span class="nb">PassengerPoolIdleTime</span> <span class="m">600</span> | ||
|
|
||
| <span class="nb">Listen</span> <span class="m">8140</span> | ||
| <span class="nt"><VirtualHost</span> <span class="s">*:8140</span><span class="nt">></span> | ||
| <span class="nb">SSLEngine</span> <span class="k">On</span> | ||
|
|
||
| <span class="c"># Only allow high security cryptography. Alter if needed for compatibility.</span> | ||
| <span class="nb">SSLProtocol</span> <span class="k">All</span> -SSLv2 | ||
| <span class="nb">SSLCipherSuite</span> HIGH:!ADH:RC4+RSA:-MEDIUM:-LOW:-EXP | ||
| <span class="nb">SSLCertificateFile</span> <span class="sx">/var/lib/puppet/ssl/certs/puppetmaster01.xonal.dev.com.pem</span> | ||
| <span class="nb">SSLCertificateKeyFile</span> <span class="sx">/var/lib/puppet/ssl/private_keys/puppetmaster01.dev.xonal.com.pem</span> | ||
| <span class="nb">SSLCertificateChainFile</span> <span class="sx">/var/lib/puppet/ssl/ca/ca_crt.pem</span> | ||
| <span class="nb">SSLCACertificateFile</span> <span class="sx">/var/lib/puppet/ssl/ca/ca_crt.pem</span> | ||
| <span class="nb">SSLCARevocationFile</span> <span class="sx">/var/lib/puppet/ssl/ca/ca_crl.pem</span> | ||
| <span class="nb">SSLVerifyClient</span> optional | ||
| <span class="nb">SSLVerifyDepth</span> <span class="m">1</span> | ||
| <span class="nb">SSLOptions</span> +StdEnvVars +ExportCertData | ||
|
|
||
| <span class="c"># These request headers are used to pass the client certificate</span> | ||
| <span class="c"># authentication information on to the puppet master process</span> | ||
| <span class="nb">RequestHeader</span> set X-SSL-Subject %{SSL_CLIENT_S_DN}e | ||
| <span class="nb">RequestHeader</span> set X-Client-DN %{SSL_CLIENT_S_DN}e | ||
| <span class="nb">RequestHeader</span> set X-Client-Verify %{SSL_CLIENT_VERIFY}e | ||
|
|
||
| <span class="nb">DocumentRoot</span> <span class="sx">/usr/share/puppet/rack/puppetmasterd/public</span> | ||
|
|
||
| <span class="nt"><Directory</span> <span class="s">/usr/share/puppet/rack/puppetmasterd/</span><span class="nt">></span> | ||
| <span class="nb">Options</span> <span class="k">None</span> | ||
| <span class="nb">AllowOverride</span> <span class="k">None</span> | ||
| <span class="nb">Order</span> allow,deny | ||
| <span class="nb">Allow</span> from <span class="k">all</span> | ||
| <span class="nt"></Directory></span> | ||
|
|
||
| <span class="nb">ErrorLog</span> <span class="sx">/var/log/httpd/puppet-server.example.com_ssl_error.log</span> | ||
| <span class="nb">CustomLog</span> <span class="sx">/var/log/httpd/puppet-server.example.com_ssl_access.log</span> combined | ||
| <span class="nt"></VirtualHost></span> | ||
| </pre></div> | ||
|
|
||
|
|
||
| <p>Start Apache:</p> | ||
| <div class="highlight"><pre>/etc/init.d/puppetmaster stop | ||
| /etc/init.d/httpd start | ||
| </pre></div> | ||
|
|
||
|
|
||
| <p>If you get follwoing meesage</p> | ||
| <blockquote> | ||
| <p>Starting httpd: httpd: Could not reliably determine the servers fully qualified domain name, using puppetmaster01.xonal.dev.com for ServerName</p> | ||
| </blockquote> | ||
| <p>Edit host file and add the server.</p> | ||
| <div class="highlight"><pre>vi /etc/hosts | ||
| xx.xx.xx.xx puppetmaster01.xonal.dev.com | ||
| </pre></div> | ||
|
|
||
|
|
||
| <p>Disable WEBrick: ( No need to do this if you didnt demonize the process in above step)</p> | ||
| <div class="highlight"><pre>chkconfig puppetmaster off | ||
| </pre></div> | ||
|
|
||
|
|
||
| <p>Enable Apache on boot</p> | ||
| <div class="highlight"><pre>chkconfig httpd on 34 | ||
| </pre></div> | ||
|
|
||
|
|
||
| <p>Make sure the port is open and it’s listening:</p> | ||
| <div class="highlight"><pre>netstat -ln <span class="p">|</span> grep 8140 | ||
| tcp <span class="m">0</span> <span class="m">0</span> 0.0.0.0:8140 0.0.0.0:* LISTEN | ||
| </pre></div> | ||
| </div> | ||
| <footer> | ||
| <div class="container"> | ||
| <div class="bio"> | ||
| I build things by banging on a keyboard. | ||
| </div> | ||
| </footer></body> | ||
| </html> |
| @@ -0,0 +1,52 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <head> | ||
| <meta charset="utf-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||
| <meta name="description" content="#! Shit Lano Says, dd if=/dev/brain of=/dev/blog"> | ||
|
|
||
| <link href="/theme/css/lanox.css" rel="stylesheet"> | ||
| <link rel="stylesheet" href="/theme/css/pygments.css"> | ||
|
|
||
| <link href="//fonts.googleapis.com/css?family=Lato:400,700|Source+Code+Pro" rel="stylesheet" type="text/css"> | ||
|
|
||
| </head> | ||
|
|
||
| <body> | ||
| <body> | ||
| <header> | ||
| <div class="logo"> | ||
| <h1>LPP</h1> | ||
| </div> | ||
|
|
||
| <div class="hero"> | ||
| <h1><a href="/">#! Shit Lano Says <strong></strong></a></h1> | ||
| </div> | ||
| </header> | ||
|
|
||
| <!-- Menu Starts From Here --> | ||
| <div class="container menu"> | ||
| <ul> | ||
| <li><a href="archives.html">Archive</a></li> | ||
| <li><a href="/pages/about.html">About</a></li> | ||
| <li><a href="/pages/work.html">Work</a></li> | ||
| </ul> | ||
| <hr> | ||
| </div> | ||
| <!-- Menu ends above this comment --> | ||
| <h1>Archives for #! Shit Lano Says</h1> | ||
|
|
||
| <dl> | ||
| <dt>Tue 20 May 2014</dt> | ||
| <dd><a href="/2014/May/install-puppet-dashboard-on-centos-65/">Install Puppet Dashboard on CentOS 6.5</a></dd> | ||
| <dt>Mon 19 May 2014</dt> | ||
| <dd><a href="/2014/May/install-puppet-server-on-centos-65/">Install Puppet Server on CentOS 6.5</a></dd> | ||
| </dl> | ||
| <footer> | ||
| <div class="container"> | ||
| <div class="bio"> | ||
| I build things by banging on a keyboard. | ||
| </div> | ||
| </footer></body> | ||
| </html> |
| @@ -0,0 +1,67 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <head> | ||
| <meta charset="utf-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||
| <meta name="description" content="#! Shit Lano Says, dd if=/dev/brain of=/dev/blog"> | ||
|
|
||
| <link href="/theme/css/lanox.css" rel="stylesheet"> | ||
| <link rel="stylesheet" href="/theme/css/pygments.css"> | ||
|
|
||
| <link href="//fonts.googleapis.com/css?family=Lato:400,700|Source+Code+Pro" rel="stylesheet" type="text/css"> | ||
|
|
||
| </head> | ||
|
|
||
| <body> | ||
| <body> | ||
| <header> | ||
| <div class="logo"> | ||
| <h1>LPP</h1> | ||
| </div> | ||
|
|
||
| <div class="hero"> | ||
| <h1><a href="/">#! Shit Lano Says <strong></strong></a></h1> | ||
| </div> | ||
| </header> | ||
|
|
||
| <!-- Menu Starts From Here --> | ||
| <div class="container menu"> | ||
| <ul> | ||
| <li><a href="archives.html">Archive</a></li> | ||
| <li><a href="/pages/about.html">About</a></li> | ||
| <li><a href="/pages/work.html">Work</a></li> | ||
| </ul> | ||
| <hr> | ||
| </div> | ||
| <!-- Menu ends above this comment --> | ||
|
|
||
|
|
||
|
|
||
| <div class="container content"> | ||
| <ul class="recent-posts"> | ||
| <li> | ||
| <a href="/2014/May/install-puppet-dashboard-on-centos-65/"> | ||
| <div> | ||
| <span class="title" rel="bookmark" title="Permalink to Install Puppet Dashboard on CentOS 6.5">Install Puppet Dashboard on CentOS 6.5</span> | ||
| <span class="date" "2014-05-20T23:10:23+10:00"> Tue 20 May 2014</span> | ||
| </div> | ||
| </a> | ||
| <a href="/2014/May/install-puppet-server-on-centos-65/"> | ||
| <div> | ||
| <span class="title" rel="bookmark" title="Permalink to Install Puppet Server on CentOS 6.5">Install Puppet Server on CentOS 6.5</span> | ||
| <span class="date" "2014-05-19T09:36:56+10:00"> Mon 19 May 2014</span> | ||
| </div> | ||
| </a> | ||
|
|
||
| </li> | ||
| </ul> | ||
| </div> | ||
|
|
||
| <footer> | ||
| <div class="container"> | ||
| <div class="bio"> | ||
| I build things by banging on a keyboard. | ||
| </div> | ||
| </footer></body> | ||
| </html> |
| @@ -0,0 +1,48 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <head> | ||
| <meta charset="utf-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||
| <meta name="description" content="#! Shit Lano Says, dd if=/dev/brain of=/dev/blog"> | ||
|
|
||
| <link href="/theme/css/lanox.css" rel="stylesheet"> | ||
| <link rel="stylesheet" href="/theme/css/pygments.css"> | ||
|
|
||
| <link href="//fonts.googleapis.com/css?family=Lato:400,700|Source+Code+Pro" rel="stylesheet" type="text/css"> | ||
|
|
||
| </head> | ||
|
|
||
| <body> | ||
| <body> | ||
| <header> | ||
| <div class="logo"> | ||
| <h1>LPP</h1> | ||
| </div> | ||
|
|
||
| <div class="hero"> | ||
| <h1><a href="/">#! Shit Lano Says <strong></strong></a></h1> | ||
| </div> | ||
| </header> | ||
|
|
||
| <!-- Menu Starts From Here --> | ||
| <div class="container menu"> | ||
| <ul> | ||
| <li><a href="archives.html">Archive</a></li> | ||
| <li><a href="/pages/about.html">About</a></li> | ||
| <li><a href="/pages/work.html">Work</a></li> | ||
| </ul> | ||
| <hr> | ||
| </div> | ||
| <!-- Menu ends above this comment --> | ||
| <h1>Authors on #! Shit Lano Says</h1> | ||
|
|
||
| <ul> <li><a href="/author/lano-puljic.html">Lano Puljic</a> (2)</li> | ||
| </ul> | ||
| <footer> | ||
| <div class="container"> | ||
| <div class="bio"> | ||
| I build things by banging on a keyboard. | ||
| </div> | ||
| </footer></body> | ||
| </html> |
| @@ -0,0 +1,47 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <head> | ||
| <meta charset="utf-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||
| <meta name="description" content="#! Shit Lano Says, dd if=/dev/brain of=/dev/blog"> | ||
|
|
||
| <link href="/theme/css/lanox.css" rel="stylesheet"> | ||
| <link rel="stylesheet" href="/theme/css/pygments.css"> | ||
|
|
||
| <link href="//fonts.googleapis.com/css?family=Lato:400,700|Source+Code+Pro" rel="stylesheet" type="text/css"> | ||
|
|
||
| </head> | ||
|
|
||
| <body> | ||
| <body> | ||
| <header> | ||
| <div class="logo"> | ||
| <h1>LPP</h1> | ||
| </div> | ||
|
|
||
| <div class="hero"> | ||
| <h1><a href="/">#! Shit Lano Says <strong></strong></a></h1> | ||
| </div> | ||
| </header> | ||
|
|
||
| <!-- Menu Starts From Here --> | ||
| <div class="container menu"> | ||
| <ul> | ||
| <li><a href="archives.html">Archive</a></li> | ||
| <li><a href="/pages/about.html">About</a></li> | ||
| <li><a href="/pages/work.html">Work</a></li> | ||
| </ul> | ||
| <hr> | ||
| </div> | ||
| <!-- Menu ends above this comment --> | ||
| <ul> | ||
| <li><a href="/category/puppet.html">Puppet</a></li> | ||
| </ul> | ||
| <footer> | ||
| <div class="container"> | ||
| <div class="bio"> | ||
| I build things by banging on a keyboard. | ||
| </div> | ||
| </footer></body> | ||
| </html> |
| @@ -0,0 +1,67 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <head> | ||
| <meta charset="utf-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||
| <meta name="description" content="#! Shit Lano Says, dd if=/dev/brain of=/dev/blog"> | ||
|
|
||
| <link href="/theme/css/lanox.css" rel="stylesheet"> | ||
| <link rel="stylesheet" href="/theme/css/pygments.css"> | ||
|
|
||
| <link href="//fonts.googleapis.com/css?family=Lato:400,700|Source+Code+Pro" rel="stylesheet" type="text/css"> | ||
|
|
||
| </head> | ||
|
|
||
| <body> | ||
| <body> | ||
| <header> | ||
| <div class="logo"> | ||
| <h1>LPP</h1> | ||
| </div> | ||
|
|
||
| <div class="hero"> | ||
| <h1><a href="/">#! Shit Lano Says <strong></strong></a></h1> | ||
| </div> | ||
| </header> | ||
|
|
||
| <!-- Menu Starts From Here --> | ||
| <div class="container menu"> | ||
| <ul> | ||
| <li><a href="archives.html">Archive</a></li> | ||
| <li><a href="/pages/about.html">About</a></li> | ||
| <li><a href="/pages/work.html">Work</a></li> | ||
| </ul> | ||
| <hr> | ||
| </div> | ||
| <!-- Menu ends above this comment --> | ||
|
|
||
|
|
||
|
|
||
| <div class="container content"> | ||
| <ul class="recent-posts"> | ||
| <li> | ||
| <a href="/2014/May/install-puppet-dashboard-on-centos-65/"> | ||
| <div> | ||
| <span class="title" rel="bookmark" title="Permalink to Install Puppet Dashboard on CentOS 6.5">Install Puppet Dashboard on CentOS 6.5</span> | ||
| <span class="date" "2014-05-20T23:10:23+10:00"> Tue 20 May 2014</span> | ||
| </div> | ||
| </a> | ||
| <a href="/2014/May/install-puppet-server-on-centos-65/"> | ||
| <div> | ||
| <span class="title" rel="bookmark" title="Permalink to Install Puppet Server on CentOS 6.5">Install Puppet Server on CentOS 6.5</span> | ||
| <span class="date" "2014-05-19T09:36:56+10:00"> Mon 19 May 2014</span> | ||
| </div> | ||
| </a> | ||
|
|
||
| </li> | ||
| </ul> | ||
| </div> | ||
|
|
||
| <footer> | ||
| <div class="container"> | ||
| <div class="bio"> | ||
| I build things by banging on a keyboard. | ||
| </div> | ||
| </footer></body> | ||
| </html> |
| @@ -0,0 +1,67 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <head> | ||
| <meta charset="utf-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||
| <meta name="description" content="#! Shit Lano Says, dd if=/dev/brain of=/dev/blog"> | ||
|
|
||
| <link href="/theme/css/lanox.css" rel="stylesheet"> | ||
| <link rel="stylesheet" href="/theme/css/pygments.css"> | ||
|
|
||
| <link href="//fonts.googleapis.com/css?family=Lato:400,700|Source+Code+Pro" rel="stylesheet" type="text/css"> | ||
|
|
||
| </head> | ||
|
|
||
| <body> | ||
| <body> | ||
| <header> | ||
| <div class="logo"> | ||
| <h1>LPP</h1> | ||
| </div> | ||
|
|
||
| <div class="hero"> | ||
| <h1><a href="/">#! Shit Lano Says <strong></strong></a></h1> | ||
| </div> | ||
| </header> | ||
|
|
||
| <!-- Menu Starts From Here --> | ||
| <div class="container menu"> | ||
| <ul> | ||
| <li><a href="archives.html">Archive</a></li> | ||
| <li><a href="/pages/about.html">About</a></li> | ||
| <li><a href="/pages/work.html">Work</a></li> | ||
| </ul> | ||
| <hr> | ||
| </div> | ||
| <!-- Menu ends above this comment --> | ||
|
|
||
|
|
||
|
|
||
| <div class="container content"> | ||
| <ul class="recent-posts"> | ||
| <li> | ||
| <a href="/2014/May/install-puppet-dashboard-on-centos-65/"> | ||
| <div> | ||
| <span class="title" rel="bookmark" title="Permalink to Install Puppet Dashboard on CentOS 6.5">Install Puppet Dashboard on CentOS 6.5</span> | ||
| <span class="date" "2014-05-20T23:10:23+10:00"> Tue 20 May 2014</span> | ||
| </div> | ||
| </a> | ||
| <a href="/2014/May/install-puppet-server-on-centos-65/"> | ||
| <div> | ||
| <span class="title" rel="bookmark" title="Permalink to Install Puppet Server on CentOS 6.5">Install Puppet Server on CentOS 6.5</span> | ||
| <span class="date" "2014-05-19T09:36:56+10:00"> Mon 19 May 2014</span> | ||
| </div> | ||
| </a> | ||
|
|
||
| </li> | ||
| </ul> | ||
| </div> | ||
|
|
||
| <footer> | ||
| <div class="container"> | ||
| <div class="bio"> | ||
| I build things by banging on a keyboard. | ||
| </div> | ||
| </footer></body> | ||
| </html> |
| @@ -0,0 +1,50 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <head> | ||
| <meta charset="utf-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||
| <meta name="description" content="#! Shit Lano Says, dd if=/dev/brain of=/dev/blog"> | ||
|
|
||
| <link href="/theme/css/lanox.css" rel="stylesheet"> | ||
| <link rel="stylesheet" href="/theme/css/pygments.css"> | ||
|
|
||
| <link href="//fonts.googleapis.com/css?family=Lato:400,700|Source+Code+Pro" rel="stylesheet" type="text/css"> | ||
|
|
||
| </head> | ||
|
|
||
| <body> | ||
| <body> | ||
| <header> | ||
| <div class="logo"> | ||
| <h1>LPP</h1> | ||
| </div> | ||
|
|
||
| <div class="hero"> | ||
| <h1><a href="/">#! Shit Lano Says <strong></strong></a></h1> | ||
| </div> | ||
| </header> | ||
|
|
||
| <!-- Menu Starts From Here --> | ||
| <div class="container menu"> | ||
| <ul> | ||
| <li><a href="archives.html">Archive</a></li> | ||
| <li><a href="/pages/about.html">About</a></li> | ||
| <li><a href="/pages/work.html">Work</a></li> | ||
| </ul> | ||
| <hr> | ||
| </div> | ||
| <!-- Menu ends above this comment --> | ||
| <h1>About Me...</h1> | ||
|
|
||
|
|
||
| <p>Sooner or later i will say some Shit about me and waht i do, but for now all you need to know about me is that i live on a | ||
| computer and i do everything and anything..... Staay tune for more Shit Lano Says.</p> | ||
|
|
||
| <footer> | ||
| <div class="container"> | ||
| <div class="bio"> | ||
| I build things by banging on a keyboard. | ||
| </div> | ||
| </footer></body> | ||
| </html> |
| @@ -0,0 +1,49 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <head> | ||
| <meta charset="utf-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||
| <meta name="description" content="#! Shit Lano Says, dd if=/dev/brain of=/dev/blog"> | ||
|
|
||
| <link href="/theme/css/lanox.css" rel="stylesheet"> | ||
| <link rel="stylesheet" href="/theme/css/pygments.css"> | ||
|
|
||
| <link href="//fonts.googleapis.com/css?family=Lato:400,700|Source+Code+Pro" rel="stylesheet" type="text/css"> | ||
|
|
||
| </head> | ||
|
|
||
| <body> | ||
| <body> | ||
| <header> | ||
| <div class="logo"> | ||
| <h1>LPP</h1> | ||
| </div> | ||
|
|
||
| <div class="hero"> | ||
| <h1><a href="/">#! Shit Lano Says <strong></strong></a></h1> | ||
| </div> | ||
| </header> | ||
|
|
||
| <!-- Menu Starts From Here --> | ||
| <div class="container menu"> | ||
| <ul> | ||
| <li><a href="archives.html">Archive</a></li> | ||
| <li><a href="/pages/about.html">About</a></li> | ||
| <li><a href="/pages/work.html">Work</a></li> | ||
| </ul> | ||
| <hr> | ||
| </div> | ||
| <!-- Menu ends above this comment --> | ||
| <h1>Work History...</h1> | ||
|
|
||
|
|
||
| <p>Work History</p> | ||
|
|
||
| <footer> | ||
| <div class="container"> | ||
| <div class="bio"> | ||
| I build things by banging on a keyboard. | ||
| </div> | ||
| </footer></body> | ||
| </html> |
| @@ -0,0 +1,47 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <head> | ||
| <meta charset="utf-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||
| <meta name="description" content="#! Shit Lano Says, dd if=/dev/brain of=/dev/blog"> | ||
|
|
||
| <link href="/theme/css/lanox.css" rel="stylesheet"> | ||
| <link rel="stylesheet" href="/theme/css/pygments.css"> | ||
|
|
||
| <link href="//fonts.googleapis.com/css?family=Lato:400,700|Source+Code+Pro" rel="stylesheet" type="text/css"> | ||
|
|
||
| </head> | ||
|
|
||
| <body> | ||
| <body> | ||
| <header> | ||
| <div class="logo"> | ||
| <h1>LPP</h1> | ||
| </div> | ||
|
|
||
| <div class="hero"> | ||
| <h1><a href="/">#! Shit Lano Says <strong></strong></a></h1> | ||
| </div> | ||
| </header> | ||
|
|
||
| <!-- Menu Starts From Here --> | ||
| <div class="container menu"> | ||
| <ul> | ||
| <li><a href="archives.html">Archive</a></li> | ||
| <li><a href="/pages/about.html">About</a></li> | ||
| <li><a href="/pages/work.html">Work</a></li> | ||
| </ul> | ||
| <hr> | ||
| </div> | ||
| <!-- Menu ends above this comment --> | ||
| <h1>Tags for #! Shit Lano Says</h1> <li><a href="/tag/centos-65.html">centOS 6.5</a> (2)</li> | ||
| <li><a href="/tag/puppet.html">puppet</a> (2)</li> | ||
| <li><a href="/tag/puppetdashboard.html">puppetdashboard</a> (1)</li> | ||
| <footer> | ||
| <div class="container"> | ||
| <div class="bio"> | ||
| I build things by banging on a keyboard. | ||
| </div> | ||
| </footer></body> | ||
| </html> |
| @@ -0,0 +1,367 @@ | ||
| body { | ||
| margin: 0; | ||
| } | ||
| body.full .hero { | ||
| height: 500px; | ||
| } | ||
| body.full h1, body.full footer { | ||
| display: none; | ||
| } | ||
| img { | ||
| border: 0; | ||
| } | ||
| header .logo { | ||
| opacity: .75; | ||
| position: fixed; | ||
| left: 10px; | ||
| top: -30px; | ||
| -webkit-transition: opacity 0.3s ease; | ||
| -moz-transition: opacity 0.3s ease; | ||
| -ms-transition: opacity 0.3s ease; | ||
| -o-transition: opacity 0.3s ease; | ||
| transition: opacity 0.3s ease; | ||
| } | ||
| header .logo:hover { | ||
| opacity: 1; | ||
| } | ||
| @media (max-width: 75em) { | ||
| header .logo { | ||
| position: absolute; | ||
| left: 10px; | ||
| top: 0px; | ||
| } | ||
| } | ||
|
|
||
| .container { | ||
| margin: 0 auto; | ||
| max-width: 40rem; | ||
| } | ||
|
|
||
| .container hr { | ||
| border: 0; | ||
| height: 2px; | ||
| width: 25%; | ||
| background-color: #fd7f05; | ||
| } | ||
| .menu { | ||
| text-align: center; | ||
| margin-bottom: 50px; | ||
| } | ||
| .menu ul { | ||
| padding-left: 0; | ||
| } | ||
| .menu ul a { | ||
| text-decoration: none; | ||
| padding: 5px 10px; | ||
| -webkit-transition: background-color 0.3s ease; | ||
| -moz-transition: background-color 0.3s ease; | ||
| -ms-transition: background-color 0.3s ease; | ||
| -o-transition: background-color 0.3s ease; | ||
| transition: background-color 0.3s ease; | ||
| } | ||
| .menu ul a:hover { | ||
| background-color: rgba(253, 127, 5, 0.1); | ||
| color: #fd7f05; | ||
| } | ||
| .menu ul li { | ||
| display: inline; | ||
| } | ||
| .content { | ||
| padding: 0 2rem; | ||
| } | ||
| .content .date { | ||
| float: left; | ||
| margin-top: 7px; | ||
| margin-bottom: 25px; | ||
| margin-left: -200px; | ||
| width: 150px; | ||
| text-transform: uppercase; | ||
| color: #fd7f05; | ||
| } | ||
| @media (max-width: 1000px) { | ||
| .content .date { | ||
| float: none; | ||
| margin-left: 0; | ||
| text-align: left; | ||
| } | ||
|
|
||
| .content .date .author { | ||
| float: none; | ||
| margin-left: 0; | ||
| text-align: left; | ||
| color: #FD7F05; | ||
| } | ||
| } | ||
| .content p code { | ||
| background-color: rgba(253, 127, 5, 0.15); | ||
| padding: 2px 4px; | ||
| color: #1a898a; | ||
| } | ||
| .content blockquote { | ||
| position: relative; | ||
| min-width: 110%; | ||
| max-width: 110%; | ||
| margin-left: -5%; | ||
| background-color: rgba(253, 127, 5, 0.15); | ||
| border-radius: 5px; | ||
| color: #cd6602; | ||
| } | ||
| .content blockquote:before { | ||
| font-family: "Times New Roman"; | ||
| content: "“"; | ||
| position: absolute; | ||
| top: -5px; | ||
| left: 10px; | ||
| font-size: 35px; | ||
| font-weight: bold; | ||
| color: #fecd9d; | ||
| } | ||
| .content blockquote p { | ||
| margin: 0; | ||
| padding: 15px 5% | ||
| } | ||
| @media (max-width: 38em) { | ||
| .content blockquote { | ||
| max-width: 110vw; | ||
| margin-left: -2rem; | ||
| margin-right: -2rem; | ||
| border-radius: inherit; | ||
| } | ||
| .content blockquote p { | ||
| padding: 15px 2rem; | ||
| } | ||
| }.content hr { | ||
| margin: 50px auto; | ||
| } | ||
| .content img:not(.emoji) { | ||
| min-width: 110%; | ||
| max-width: 110%; | ||
| margin-left: -5%; | ||
| border-radius: 5px; | ||
| } | ||
|
|
||
| @media (max-width: 38em) { | ||
| .content img: not(.emoji) { | ||
| max-width: 100vw; | ||
| margin-left: -2rem; | ||
| border-radius: inherit; | ||
| } | ||
| } | ||
|
|
||
| .content .twitter-tweet { | ||
| width: 110% !important; | ||
| } | ||
|
|
||
| .content .aside { | ||
| background-color: rgba(253, 127, 5, 0.15); | ||
| padding: 10px 15px; | ||
| color: #1a898a; | ||
| font-size: .75rem; | ||
| font-family: "lato", "sans-serif"; | ||
| font-style: normal; | ||
| } | ||
|
|
||
| .hero { | ||
| height: 200px; | ||
| background-color: #fff; | ||
| background-position: center center; | ||
| background-size: cover; | ||
| text-align: center; | ||
| } | ||
|
|
||
| .hero h1 { | ||
| background-color: #fff; | ||
| display: inline-block; | ||
| padding: 0px 20px; | ||
| line-height: 40px; | ||
| margin-top: 90px; | ||
| } | ||
| .recent-posts { | ||
| margin-bottom: 5rem; | ||
| padding-left: 0; | ||
| } | ||
| .recent-posts li { | ||
| margin-bottom: 5px; | ||
| list-style-type: none; | ||
| } | ||
| .recent-posts li div { | ||
| padding: 5px 0; | ||
| } | ||
| .recent-posts li .title { | ||
| font-size: 1rem; | ||
| padding: 0; | ||
| } | ||
| .recent-posts li .date { | ||
| float: right; | ||
| font-size: 12px; | ||
| text-transform: uppercase; | ||
| color: rgba(0, 0, 0, 0.55); | ||
| line-height: 24px; | ||
| } | ||
| @media (max-width: 67em) { | ||
| .recent-posts li .date { | ||
| display: none; | ||
| } | ||
| } | ||
|
|
||
| .closing { | ||
| margin: 4rem 0; | ||
| font-size: 14px; | ||
| color: #999; | ||
| } | ||
|
|
||
| .closing a { | ||
| border-bottom: 0 !important; | ||
| } | ||
| .closing .older strong { | ||
| display: block; | ||
| font-size: 12px; | ||
| margin-left: -15px; | ||
| } | ||
| .closing .newer { | ||
| float: right; | ||
| text-align: right; | ||
| } | ||
| .closing .newer strong { | ||
| display: block; | ||
| font-size: 12px; | ||
| margin-right: -15px; | ||
| } | ||
| .closing .logo { | ||
| clear: both; | ||
| margin-top: 50px; | ||
| } | ||
| footer { | ||
| margin-bottom: 2rem; | ||
| } | ||
| footer .bio { | ||
| color: rgba(0, 0, 0, 0.2); | ||
| text-align: center; | ||
| font-size: 14px; | ||
| line-height: 40px; | ||
| text-transform: uppercase; | ||
| } | ||
| footer .bio a { | ||
| text-decoration: none; | ||
| } | ||
| @media (max-width: 43em) { | ||
| footer { | ||
| text-align: center; | ||
| } | ||
| footer .bio { | ||
| display: none; | ||
| } | ||
| } | ||
|
|
||
| html { | ||
| font-size: 16px; | ||
| font-family: "lato", "sans-serif"; | ||
| line-height: 1.6; | ||
| } | ||
|
|
||
| h1, h2, h3, h4, h5, h6, b, strong { | ||
| color: #fd7f05; | ||
| font-weight: normal; | ||
| font-family: sans-serif; | ||
| } | ||
| b, strong { | ||
| color: #1a898a; | ||
| } | ||
| strong em { | ||
| font-family: sans-serif; | ||
| font-style: italic; | ||
| } | ||
| em, i { | ||
| font-family: sans-serif; | ||
| font-style: normal; | ||
| } | ||
| a { | ||
| color: #000; | ||
| } | ||
| header li { | ||
| font-family: sans-serif; | ||
| font-weight: normal; | ||
| font-size: 15px; | ||
| } | ||
| header h1 { | ||
| color: #000; | ||
| font-size: 46px; | ||
| } | ||
| header h1.compressed { | ||
| font-size: 30px; | ||
| } | ||
| @media (max-width: 50em) { | ||
| header h1 { | ||
| font-size: 5vw; | ||
| } | ||
| header h1.compressed { | ||
| font-size: 7vw; | ||
| line-height: 7vw !important; | ||
| } | ||
| }.content .date { | ||
| font-family: sans-serif; | ||
| font-weight: normal; | ||
| font-size: 13px; | ||
| } | ||
| .content p { | ||
| margin: 1rem 0 1rem 0; | ||
| } | ||
| .content blockquote { | ||
| font-size: 1.1rem; | ||
| } | ||
| .content a { | ||
| text-decoration: none; | ||
| border-bottom: 2px solid #fecd9d; | ||
| -webkit-transition: border-color 0.2s ease; | ||
| -moz-transition: border-color 0.2s ease; | ||
| -ms-transition: border-color 0.2s ease; | ||
| -o-transition: border-color 0.2s ease; | ||
| transition: border-color 0.2s ease; | ||
| } | ||
| .content a:hover { | ||
| border-color: #fd7f05; | ||
| } | ||
| footer { | ||
| font-family: sans-serif; | ||
| font-weight: normal; | ||
| } | ||
|
|
||
| @media (min-width: 38em) { | ||
| html { | ||
| font-size: 20px; | ||
| } | ||
| } | ||
|
|
||
| .highlight { | ||
| min-width: 110%; | ||
| max-width: 110%; | ||
| margin-left: -5%; | ||
| border-radius: 5px; | ||
| background-color: #fbfbfb; | ||
| font-size: 16px; | ||
| overflow: hidden; | ||
| text-shadow: none; | ||
| color: #111; | ||
| box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.05); | ||
| } | ||
| .highlight pre { | ||
| padding: 15px 5% | ||
| } | ||
|
|
||
| @media (max-width: 38em) { | ||
| .highlight { | ||
| max-width: 110vw; | ||
| margin-left: -2rem; | ||
| margin-right: -2rem; | ||
| border-radius: inherit; | ||
| } | ||
| .highlight pre { | ||
| padding: 15px 2rem; | ||
| } | ||
| } | ||
|
|
||
| .highlight pre { | ||
| margin: 0; | ||
| background: none; | ||
| } | ||
|
|
| @@ -0,0 +1,60 @@ | ||
|
|
||
| .highlight { background: #272822; color: #f8f8f2 } | ||
| .highlight .c { color: #75715e } /* Comment */ | ||
| .highlight .err { color: #960050; background-color: #1e0010 } /* Error */ | ||
| .highlight .k { color: #66d9ef } /* Keyword */ | ||
| .highlight .l { color: #ae81ff } /* Literal */ | ||
| .highlight .n { color: #f8f8f2 } /* Name */ | ||
| .highlight .o { color: #f92672 } /* Operator */ | ||
| .highlight .p { color: #f8f8f2 } /* Punctuation */ | ||
| .highlight .cm { color: #75715e } /* Comment.Multiline */ | ||
| .highlight .cp { color: #75715e } /* Comment.Preproc */ | ||
| .highlight .c1 { color: #75715e } /* Comment.Single */ | ||
| .highlight .cs { color: #75715e } /* Comment.Special */ | ||
| .highlight .ge { font-style: italic } /* Generic.Emph */ | ||
| .highlight .gs { font-weight: bold } /* Generic.Strong */ | ||
| .highlight .kc { color: #66d9ef } /* Keyword.Constant */ | ||
| .highlight .kd { color: #66d9ef } /* Keyword.Declaration */ | ||
| .highlight .kn { color: #f92672 } /* Keyword.Namespace */ | ||
| .highlight .kp { color: #66d9ef } /* Keyword.Pseudo */ | ||
| .highlight .kr { color: #66d9ef } /* Keyword.Reserved */ | ||
| .highlight .kt { color: #66d9ef } /* Keyword.Type */ | ||
| .highlight .ld { color: #e6db74 } /* Literal.Date */ | ||
| .highlight .m { color: #ae81ff } /* Literal.Number */ | ||
| .highlight .s { color: #e6db74 } /* Literal.String */ | ||
| .highlight .na { color: #a6e22e } /* Name.Attribute */ | ||
| .highlight .nb { color: #f8f8f2 } /* Name.Builtin */ | ||
| .highlight .nc { color: #a6e22e } /* Name.Class */ | ||
| .highlight .no { color: #66d9ef } /* Name.Constant */ | ||
| .highlight .nd { color: #a6e22e } /* Name.Decorator */ | ||
| .highlight .ni { color: #f8f8f2 } /* Name.Entity */ | ||
| .highlight .ne { color: #a6e22e } /* Name.Exception */ | ||
| .highlight .nf { color: #a6e22e } /* Name.Function */ | ||
| .highlight .nl { color: #f8f8f2 } /* Name.Label */ | ||
| .highlight .nn { color: #f8f8f2 } /* Name.Namespace */ | ||
| .highlight .nx { color: #a6e22e } /* Name.Other */ | ||
| .highlight .py { color: #f8f8f2 } /* Name.Property */ | ||
| .highlight .nt { color: #f92672 } /* Name.Tag */ | ||
| .highlight .nv { color: #f8f8f2 } /* Name.Variable */ | ||
| .highlight .ow { color: #f92672 } /* Operator.Word */ | ||
| .highlight .w { color: #f8f8f2 } /* Text.Whitespace */ | ||
| .highlight .mf { color: #ae81ff } /* Literal.Number.Float */ | ||
| .highlight .mh { color: #ae81ff } /* Literal.Number.Hex */ | ||
| .highlight .mi { color: #ae81ff } /* Literal.Number.Integer */ | ||
| .highlight .mo { color: #ae81ff } /* Literal.Number.Oct */ | ||
| .highlight .sb { color: #e6db74 } /* Literal.String.Backtick */ | ||
| .highlight .sc { color: #e6db74 } /* Literal.String.Char */ | ||
| .highlight .sd { color: #e6db74 } /* Literal.String.Doc */ | ||
| .highlight .s2 { color: #e6db74 } /* Literal.String.Double */ | ||
| .highlight .se { color: #ae81ff } /* Literal.String.Escape */ | ||
| .highlight .sh { color: #e6db74 } /* Literal.String.Heredoc */ | ||
| .highlight .si { color: #e6db74 } /* Literal.String.Interpol */ | ||
| .highlight .sx { color: #e6db74 } /* Literal.String.Other */ | ||
| .highlight .sr { color: #e6db74 } /* Literal.String.Regex */ | ||
| .highlight .s1 { color: #e6db74 } /* Literal.String.Single */ | ||
| .highlight .ss { color: #e6db74 } /* Literal.String.Symbol */ | ||
| .highlight .bp { color: #f8f8f2 } /* Name.Builtin.Pseudo */ | ||
| .highlight .vc { color: #f8f8f2 } /* Name.Variable.Class */ | ||
| .highlight .vg { color: #f8f8f2 } /* Name.Variable.Global */ | ||
| .highlight .vi { color: #f8f8f2 } /* Name.Variable.Instance */ | ||
| .highlight .il { color: #ae81ff } /* Literal.Number.Integer.Long */ |