PageRenderTime 75ms CodeModel.GetById 14ms RepoModel.GetById 0ms app.codeStats 0ms

/blog/public/blog/2012/04/01/weekend-chef-and-puppet-projects/index.html

https://github.com/sbates/Bratty-Redhead
HTML | 274 lines | 162 code | 108 blank | 4 comment | 0 complexity | f82a02f02cc710e9008efa72ce8e91af MD5 | raw file
  1. <!DOCTYPE html>
  2. <!--[if IEMobile 7 ]><html class="no-js iem7"><![endif]-->
  3. <!--[if lt IE 9]><html class="no-js lte-ie8"><![endif]-->
  4. <!--[if (gt IE 8)|(gt IEMobile 7)|!(IEMobile)|!(IE)]><!--><html class="no-js" lang="en"><!--<![endif]-->
  5. <head>
  6. <meta charset="utf-8">
  7. <title>Weekend Chef and Puppet Projects - WYSIWYG</title>
  8. <meta name="author" content="Sascha Bates">
  9. <meta name="description" content="I have a few clients that I keep in touch with and take on small projects from time to time.&nbsp; This has been a strange week.&nbsp; I&rsquo;m &hellip;">
  10. <!-- http://t.co/dKP3o1e -->
  11. <meta name="HandheldFriendly" content="True">
  12. <meta name="MobileOptimized" content="320">
  13. <meta name="viewport" content="width=device-width, initial-scale=1">
  14. <link rel="canonical" href="http://brattyredhead.com/blog/2012/04/01/weekend-chef-and-puppet-projects">
  15. <link href="/favicon.png" rel="icon">
  16. <link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet" type="text/css">
  17. <script src="/javascripts/modernizr-2.0.js"></script>
  18. <script src="/javascripts/ender.js"></script>
  19. <script src="/javascripts/octopress.js" type="text/javascript"></script>
  20. <link href="/atom.xml" rel="alternate" title="WYSIWYG" type="application/atom+xml">
  21. <!--Fonts from Google"s Web font directory at http://google.com/webfonts -->
  22. <link href="http://fonts.googleapis.com/css?family=PT+Serif:regular,italic,bold,bolditalic" rel="stylesheet" type="text/css">
  23. <link href="http://fonts.googleapis.com/css?family=PT+Sans:regular,italic,bold,bolditalic" rel="stylesheet" type="text/css">
  24. </head>
  25. <body >
  26. <header role="banner"><hgroup>
  27. <h1><a href="/">WYSIWYG</a></h1>
  28. <h2>no subtext here</h2>
  29. </hgroup>
  30. </header>
  31. <nav role="navigation"><ul class="subscription" data-subscription="rss">
  32. <li><a href="/atom.xml" rel="subscribe-rss" title="subscribe via RSS">RSS</a></li>
  33. </ul>
  34. <form action="http://www.duckduckgo.com/" method="get">
  35. <fieldset role="search">
  36. <input type="hidden" name="q" value="site:brattyredhead.com" />
  37. <input class="search" type="text" name="q" results="0" placeholder="Search"/>
  38. </fieldset>
  39. </form>
  40. <ul class="main-navigation">
  41. <li><a href="/">Blog</a></li>
  42. <li><a href="/blog/archives">Archives</a></li>
  43. </ul>
  44. </nav>
  45. <div id="main">
  46. <div id="content">
  47. <div>
  48. <article class="hentry" role="article">
  49. <header>
  50. <h1 class="entry-title">Weekend Chef and Puppet Projects</h1>
  51. <p class="meta">
  52. <time datetime="2012-04-01T00:00:00-05:00" pubdate data-updated="true">Apr 1<span>st</span>, 2012</time>
  53. </p>
  54. </header>
  55. <div class="entry-content"><p>I have a few clients that I keep in touch with and take on small projects from time to time.&nbsp; This has been a strange week.&nbsp; I&rsquo;m technically full time on a project at the moment and I haven&rsquo;t gotten any calls for new work in a couple of months.&nbsp; It&rsquo;s been quiet.&nbsp; Then all of the sudden Wednesday I had 3 different people contact me about work.&nbsp;</p>
  56. <p><br />One call was actually for some awesome Chef work at a place I&rsquo;ve been before that I&rsquo;d love to go back to.&nbsp; It really pained me to tell them that I thought they had in-house resources of which they weren&rsquo;t aware and that these resources would be more than sufficient to Chef their project without my help. Sadface Sascha.</p>
  57. <p><br />Another call was from someone I do work for from time to time.&nbsp; Their projects source my &ldquo;Puppet for Chef&rdquo; series, if 2 blog posts can be called a series.&nbsp; In my head I have a 3rd one on templates but haven&rsquo;t gotten around to it yet. This 3wk run may source some if I&rsquo;m lucky. I agreed to do some ad hoc sysadmin work for these guys because they&rsquo;re in a swivet, getting ready for a PCI audit in 3 weeks.</p>
  58. <p>The job: There are about 150 Centos 5 servers. Caveat: some of the servers on the list may be retired already.&nbsp; Examine all of the configuration files for ConfigServer Firewall, bring them under Puppet control. Individual node config sets are ok (ugh).&nbsp; All servers are running a puppet client.&nbsp; I don&rsquo;t know if it&rsquo;s the same client.&nbsp; The master was at 2.7.9 last I checked, I think.<p />I have a mini Chef project too for the weekend, but I think I&rsquo;ll save that for another blog post.&nbsp; I actually wrote post of this post on Saturday morning and am just finishing it up. I haven&rsquo;t actually started my Puppet stuff except to wonder if they have some command line tools and think I&rsquo;d better get to writing some tcp testers and comparison scripts if there isn&rsquo;t such a thing.</p>
  59. <p><br />I actually spent a chunk of time working on my Chef thing which was an exercise in frustration.&nbsp; It&rsquo;s for a Windows Ohai plugin and the actual ruby work was a piece of cake. Testing has made me crazy though.&nbsp; Windows servers don&rsquo;t fire up as fast as Linux for one and they are a huge pain in the ass to interact with.&nbsp; On my todo list is an SSH server for Windows cookbook, unless my ultimate wish of hoping that all Windows servers DIAF happens prior to that.&nbsp; The ssh cookbook is half done, like so many things.</p>
  60. <p>I also am not sure I understand the testing strategy.&nbsp; I didn&#8217;t write any new code so I shouldn&#8217;t need to author any tests (relief).&nbsp; But it turns out I can&#8217;t seen any windows testing happening in the run, or at least, I think that&#8217;s what&#8217;s not happening.&nbsp; It ran happily on my Mac and then I thought maybe I should run the test on the Windows box too to see if the output was different.&nbsp; It was different.&nbsp; But I think that&#8217;s because there&#8217;s no Windows plugin tests in there?&nbsp; Wondering if I missed them?&nbsp; I was planning to email the chef-dev list tomorrow to see if I can get some love.&nbsp; Unfortunately the time I have to work on pet projects is the weekends and the IRC channels were like graveyards this weekend.<p />But I digress.&nbsp; I also ran manual tests - you know, the kind where you do stuff by hand and watch the output? My Ohai changes tested perfectly sanely on my Windows 7 64bit workstation.&nbsp; They tested insanely on a 2008r2 VMware VM I had available to me.&nbsp; And when I went into ec2 to fire up a neutral 2008r2, I discovered Ohai hangs on gathering ec2 metadata when run from the command line.&nbsp; I have no idea why.&nbsp; I hand-edited the ec2 plugin and the mixin/ec2_metadata to try and eke out some debug info but I got no joy.&nbsp; While the problem fascinated me, that was as far down that yak shave as I wanted to go today.&nbsp; So I put away the Chef and cleaned up the yard for 2 hours.</p>
  61. <p>Now I guess it&#8217;s time to play with Puppet!</p>
  62. </div>
  63. <footer>
  64. <p class="meta">
  65. <span class="byline author vcard">Posted by <span class="fn">Sascha Bates</span></span>
  66. <time datetime="2012-04-01T00:00:00-05:00" pubdate data-updated="true">Apr 1<span>st</span>, 2012</time>
  67. </p>
  68. <div class="sharing">
  69. <a href="http://twitter.com/share" class="twitter-share-button" data-url="http://brattyredhead.com/blog/2012/04/01/weekend-chef-and-puppet-projects/" data-via="sascha_d" data-counturl="http://brattyredhead.com/blog/2012/04/01/weekend-chef-and-puppet-projects/" >Tweet</a>
  70. </div>
  71. <p class="meta">
  72. <a class="basic-alignment left" href="/blog/2012/03/26/annoying-recruiter-call-45/" title="Previous Post: Annoying Recruiter Call #45">&laquo; Annoying Recruiter Call #45</a>
  73. <a class="basic-alignment right" href="/blog/2012/04/15/yak-hacking/" title="Next Post: Yak Hacking - A Story">Yak Hacking - A Story &raquo;</a>
  74. </p>
  75. </footer>
  76. </article>
  77. </div>
  78. <aside class="sidebar">
  79. <section>
  80. <h1>About Me</h1>
  81. <p>A little something about me.</p>
  82. </section>
  83. <section>
  84. <h1>Recent Posts</h1>
  85. <ul id="recent_posts">
  86. <li class="post">
  87. <a href="/blog/2012/05/27/finding-sanity-with-chef/">Finding Sanity With Chef</a>
  88. </li>
  89. <li class="post">
  90. <a href="/blog/2012/05/08/test/">test</a>
  91. </li>
  92. <li class="post">
  93. <a href="/blog/2012/04/27/my-favorite-jvm-arg-ever/">My Favorite JVM Arg EVER</a>
  94. </li>
  95. <li class="post">
  96. <a href="/blog/2012/04/26/the-alien-technology-tuning-challenge/">The Alien Technology Tuning Challenge</a>
  97. </li>
  98. <li class="post">
  99. <a href="/blog/2012/04/15/yak-hacking/">Yak Hacking - A Story</a>
  100. </li>
  101. <li class="post">
  102. <a href="/blog/2012/04/01/weekend-chef-and-puppet-projects/">Weekend Chef and Puppet Projects</a>
  103. </li>
  104. <li class="post">
  105. <a href="/blog/2012/03/26/annoying-recruiter-call-45/">Annoying Recruiter Call #45</a>
  106. </li>
  107. <li class="post">
  108. <a href="/blog/2012/03/23/i-am-not-a-fangirl/">I am not a fangirl</a>
  109. </li>
  110. <li class="post">
  111. <a href="/blog/2011/11/19/puppet-for-chef-users-part-2-when-is-a-node-a/">Puppet for Chef Users - Part 2 - When is a node a node? </a>
  112. </li>
  113. <li class="post">
  114. <a href="/blog/2011/11/07/puppet-for-chef-users/">Puppet for Chef Users</a>
  115. </li>
  116. </ul>
  117. </section>
  118. <section>
  119. <h1>Latest Tweets</h1>
  120. <ul id="tweets">
  121. <li class="loading">Status updating...</li>
  122. </ul>
  123. <script type="text/javascript">
  124. $.domReady(function(){
  125. getTwitterFeed("sascha_d", 4, false);
  126. });
  127. </script>
  128. <script src="/javascripts/twitter.js" type="text/javascript"> </script>
  129. <a href="http://twitter.com/sascha_d" class="twitter-follow-button" data-show-count="false">Follow @sascha_d</a>
  130. </section>
  131. <section>
  132. <h1>My Pinboard</h1>
  133. <ul id="pinboard_linkroll">Fetching linkroll...</ul>
  134. <p><a href="http://pinboard.in/u:sascha_d">My Pinboard Bookmarks &raquo;</a></p>
  135. </section>
  136. <script type="text/javascript">
  137. var linkroll = 'pinboard_linkroll'; //id target for pinboard list
  138. var pinboard_user = "sascha_d"; //id target for pinboard list
  139. var pinboard_count = 3; //id target for pinboard list
  140. (function(){
  141. var pinboardInit = document.createElement('script');
  142. pinboardInit.type = 'text/javascript';
  143. pinboardInit.async = true;
  144. pinboardInit.src = '/javascripts/pinboard.js';
  145. document.getElementsByTagName('head')[0].appendChild(pinboardInit);
  146. })();
  147. </script>
  148. </aside>
  149. </div>
  150. </div>
  151. <footer role="contentinfo"><p>
  152. Copyright &copy; 2012 - Sascha Bates -
  153. <span class="credit">Powered by <a href="http://octopress.org">Octopress</a></span>
  154. </p>
  155. </footer>
  156. <script type="text/javascript">
  157. (function(){
  158. var twitterWidgets = document.createElement('script');
  159. twitterWidgets.type = 'text/javascript';
  160. twitterWidgets.async = true;
  161. twitterWidgets.src = 'http://platform.twitter.com/widgets.js';
  162. document.getElementsByTagName('head')[0].appendChild(twitterWidgets);
  163. })();
  164. </script>
  165. </body>
  166. </html>