Latest Tweets:

reasonsmysoniscrying:

I broke this cheese in half.

This is why you should hit your children.

reasonsmysoniscrying:

I broke this cheese in half.

This is why you should hit your children.

*44
wtfevolution:

Okay, what? Shut up, evolution, this cannot actually be a bird. Are you high?

wtfevolution:

Okay, what? Shut up, evolution, this cannot actually be a bird. Are you high?

"sadface"

Xalking 

(Source: peytonisbigg)

*10

Puppet variable scope and resource defaults

class parent () {
File { owner => root, group => root, mode => ‘0000’, }
include child
}
class child () {
file { ‘/tmp/foo’: ensure => present, source => ‘blah’ }
}
include parent

Puppet’s variable scoping is kinda weird. What’ll happen here is the resource defaults in Class[parent] will apply to the file statement in Class[child].

Effectively File[/tmp/foo] in Class[child] will have:
{ ensure => present,
owner => root,
group => root,
mode => ‘0000’,
source => ‘blah’,
}

This is documented, but confusing to some users - someone in #puppet came in this morning with a dependancy graph issue caused by this - this is one of the reasons the style guide says to not include classes in classes, if they’re out of your module loader - have a top level role take care of that, and define any resource defaults at the BOTTOM of your resource graph.

xalking:

snowce:

oh shit

aaaaaaaaaaa so manyyyyy

xalking:

snowce:

oh shit

aaaaaaaaaaa so manyyyyy

*1

Nodejs “real time has evolved”

https://twitter.com/nodefly/status/282194159929028610

21:52 < attractiveape> real time has evolved?
21:53 < Randm> I didn’t get the memo.
21:53 < attractiveape> I thought that kind of thing was fairly specific.

*1

Installing Kibana on CentOS 6

As part of messing around with logstash, I figured I might as well also deploy kibana, so I ventured on over to their installation page and grabbed the tarball. If you wget it from the link that’s on their site, you’ll either need to rename it, or just be happy it’s called ‘kibana-ruby’ and tar -zxf kibana-ruby it. It’ll create a directory called rashidkpc-Kibana-XXXXXX, where the X’s represent some sort of version string.

Word of note: there’s no rubygem-bundler package for CentOS/EPEL, so for this I’m just slacking off and doing gem install bundler as root, as per the install docs. You’ll need the ruby-devel package installed for this to succeed.

Because I’m not doing anything special with ElasticSearch right now, I was able to leave the install with the defaults. The only thing you should really have to change is Elasticsearch, which defaults to "localhost:9200". I did however have to change the KibanaHost to 0.0.0.0 on my virtual machine so I could browse it from my host. There are authentication concerns with this, so please be aware if you’re trying this out on a less private network.

The nicest feature I’ve found with kibana so far was the live stream feature - I think this’ll prove very useful in my engineering environments to allow my developers to view an aggretate of the various logs, as well as be able to collect metrics on them.

Redis 2.6 on CentOS 6

EPEL6 has an ‘old’ version of redis (2.4.notuptodate), and when experimenting with logstash I needed to get a newer version going for testing. Eventually I’ll have to source a trusted 2.6 package, but for now..

Init script for CentOS 6

The redis installation README is probably the first piece of documentation you’re going to want to look at. It’ll mutter something about..

% cd utils
% ./install_server

This will not work of course, because of the weird attempts to detect if you’re using chkconfig. I spent a bit trying to fix this, but their weird attempt at templating was producing single line chkconfig headers that wouldn’t work.. At that point I sort of gave up, and grabbed the source from from http://centos.alt.ru/repository/centos/6/SRPMS/ and redis-2.6.5 (as of this writing) from http://redis.io/ and fixed up the spec file. Maybe I’ll try to fix it later.