Everything is a Freaking DNS problem

Devops Needs Sushi

Drupal and Configuration Mgmt, we're getting there ...

For those who haven’t noticed yet .. Im into devops .. Im also a little bit into Drupal, (blame my last name..) , so one of the frustrations I’ve been having with Drupal (an much other software) is the automation of deployment and upgrades of Drupal sites …

So for the past couple of days I’ve been trying to catch up to the ongoing discussion regarding the results of the configuration mgmt sprint , I’ve been looking at it mainly from a systems point of view , being with the use of Puppet/ Chef or similar tools in mind .. I know I`m late to the discussion but hey , some people take holidays in this season :) So below you can read a bunch of my comments … and thoughts on the topic ..

The case for Augeas

Ever since I met David Lutterkort over steaks at OLS 2007 augeas was this tool in the back of my mind that I couldn’t place… I never saw the need for it… or it seemed to be huge overkill for the problem that needed solving .

Till I ran into sipxecs rewriting XML files on the fly .. and putting values in their XML that I could not trace back to an original source. As of Augeas 0.8.x there’s an XML lens out there.

Killing VirtualBox

Note to self :
when virtualbox acts up again .

1. [sdog@stillmine ~]$  VBoxManage list runningvms
2. "vagrant-etherpad_1307533136" {60697a54-35fc-44e7-96b6-008cde6995a6}
3. [sdog@stillmine ~]$ VBoxManage controlvm vagrant-etherpad_1307533136 poweroff
4. 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

Beyond Configuration Mgmt

(This post has been sitting in the drafts folder for way to long, I decided to push the publish button anyhow .. some people might get ideas from it..)

We’ve all run in to the problem, you’ve puppetized, or euh .. cooked , about every part of your infrastructure and then there’s this one service which has no config files, a broken api that doesn’t allow you to configure antyhing, but a magnificent web gui to configure all aspects of the service. Magnificent for the eye , full of AJAX and other fancy stuff which wget isn’t really keen on. Off course before it even starts working you need to set it’s password , from that webgui.

And then vagrant gave up ... for a while

Don’t you just love Ruby errors … like the one below ?

Don’t they almost make Java stack traces look readable ?
57 lines of jibberish … where all I wanted to read was “VirtualBox in error state, check gui”

People like Randall Hanssen deserve much more visibility .. they do understand how to write a good error message and there are lots of projects that need improvement there.

Anywhow… vagrant had suddenly stopped working on me with the error below

The 4158 second catalog run.

Two of my tweets , sorry dents, earlier today caused some people to ask me what on earth I was doing :)

You don’t exist, go away!

Was the first one, indeed .. it was a long time since I had actually seen that one.. this actually happens when you delete the user you are logged in with on a host, when the host notices you don’t exist anymore it will tell you.

Vagrant & Rubylibs

I was testing some MySQL puppet modules on my Vagrant box earlier this week and one of them required augeas.
I kept running into “Could not find a default provider for augeas”, however all the appropriate augeas , augeas-lib and ruby-augeas packages were installed. I inspected the different ruby directories and the files were perfectly in /usr/lib/ruby/site_ruby/1.8 where I expected them.

With all the files seemd to be in the right place, my next option was to strace a small ruby script that included augeas, guess what that showed ..

Watching the Guards

A couple of weeks ago I noticed a weird drop in web usage stats on the site you are browsing now. Kinda weird as the drop was right around Fosdem when usually there is a spike in traffic.

So before you start.. no I don’t preach on practice on my own blog, it’s a blog dammit, so I do the occasional upgrades on the actual platform , with backups available, do some sanity tests and move on, yes I break the theme pretty often but ya’ll reading this trough RSS anyhow.

24 hours of Puppet Drama

Over the past couple of days I’ve been fighting with a weird puppet problem , we eventually cracked it , but I promised a bunch of you to fully explain it here ;)

So we were deploying 2 Blade chassis at a pretty remote location with a mix of phyisical and virtual machines, some 48 instances in total. This is a pretty standard rollout, we’ve got a bunch of similar platforms in our lab , so we knew about a couple of glitches, what to expect etc.

dhcpd on Shared Networks

And as I always forget (getting old remember) how to have dhcpd configured to serve for multiple networks on one interface (e.g with aliases)
(as in test setups eg. ) I`ll write it down here, So next time google can point right back to me

1. shared-network thisismessy {
2. subnet 10.8.0.0 netmask 255.255.0.0 {
3. option routers 10.8.0.1;
4. }
5. subnet 10.12.0.0 netmask 255.255.0.0 {
6. option routers 10.12.0.1;
7. }
8. subnet 10.16.0.0 netmask 255.255.0.0 {
9. option routers 10.16.0.1;
10. }
11. }