« October 2013 | Main | January 2014 »

November 28, 2013

Splunk Revisited

A few years ago I was evaluating a cool log analysis package called Splunk for a project at work.  I had a few instances running on a development machine at work and on a server at home.  I found that I was able to drill down to very specific events to debug what was happening so I could correlate problems among various devices and software packages.  When I upgraded my home server a year ago I didn't spend the time to reinstall Splunk, as I was busy with moving into a new house and having children, so it went to the back burner. 

Recently I was having a conversation on system monitoring architecture and Splunk came up.  I decided to take a look and see what a few years of maturity has done.  First of all, the basic software is now free for individual use.  While there is a reduction in enterprise features and there is no password/account authentication, the core functionality is all there. There is a 500Mb limit on the amount of data you can processes, but if you have half a gig of syslog/logfiles/etc to parse a day, then you shouldn't be so cheap and just buy a full license.   If you were paranoid, it would be very easy to use this software and to only share the management port to localhost, so you would have to use a SSH tunnel to get into the box to be able to view any of the data.  I know that is pretty hokey, but it does work as far as anyone with account access to the box gets to see your data.  Beyond that you could always run Splunk within a virtual machine. 

Beyond the cool factor of being able to drill down into your data, it runs well on pretty anaemic hardware.  The server I installed this software on is cobbled together from remnants of several dead computers that are at least six years old, yet the response time from the database with around half a million events is surprisingly fast.  

November 26, 2013

Home Automation

I am always looking for new things to try to automate tasks around the house.  Recently our lawn sprinkler timer started acting strange after a big power surge.  Instead of debugging it or replacing it with another Home Depot special, I decided to replace it with something that was network connected.  A family friend installed the Irrigation Caddy a few months ago and was really happy with it.  I search around on eBay and Amazon, but couldn't get it as cheap as I wanted.  In my search I found several different options, including the OpenSprinkler platform.  While it is pretty bare bones, the price is right.  I ordered it right away and soldered together the kit the day after I received it in the mail.  They also have a higher end unit that uses SMT chips that is assembled and a bit more expensive.  They did not have any of the injection molded cases in stock for that unit, so I build a small box using leftover lexan.  I was able to re-use the 24volt AC wall wart to power the unit.

OpenSprinkler Web Interface 

The unit is pretty basic and the web interface is very sparse, but it does exactly what it is supposed to do, water my lawn and plants.  Hey, it synchronizes time using NTP, so you don't have the issues that come up with a traditional dumb unit.  That being said, there is very little security on this and if you actually password protect it, the passwords are passed over HTTP as plaintext in the URL.  As long as you are aware of this and accept the risk, it is not a big deal.  If I need to access this while I'm away from my house, I would use an SSH tunnel or VPN connection to my home LAN.  The commands for this unit are sent via HTTP get requests, so if you were to use a port forwarding solution and were to lock it down to only be accessed by certain I{ addresses or ranges, you could still control it by spoofing the source address.  I haven't looked into it, but Ray's Hobby also has a sprinkler subsystem that works with the Raspberry Pi as well as the Beagleboard, so that could afford you some extra security if you needed it.  While my sprinkler system is far from a SCADA system controlling nuclear enrichment centrifuges, I sure would be annoyed with a soggy lawn.

My next stop is to add a rain/freeze sensor, but that is for another weekend.  I have a lot of friends and co-workers that are big fans of the Raspberry Pi line of single board computers, but this project has shown me how powerful the Arduino line is.