dancing with perl – part 2

Almost a year after I first wrote about dancer, I finally got around to building my first site with it. Overall, it is a pretty nice little framework. If you are already familiar with perl and/or the template toolkit, then I highly recommend this for quickly deploying projects.

In my case, I was able to build and deploy a management interface for a smartos zone server in just a few hours. I fleshed it out over the course of a week or so, and how it is in production managing dozens of zones quite easily. The interface talks to a mysql database, a node.js server I wrote as part of the same project, and even manages a local haproxy instance. All of this in such a tiny space that I keep getting weirded out.

In the future I’ll document some of the pitfalls and oddities that I experienced. I found that once I came around to the dancer way of thinking, it got pretty easy and I’ve rarely had to address the documentation since.

dancing with perl – part 2

playing with vmware

lately i’ve been poking at vmware more as building kvm deployments is annoying and managing them sucks.

so i’ve played with the vmware ESX 3.5 and 4.1 deployments, which are pretty cool although a pain to manage as you have to run the thick client from a windows box, which gave me the opportunity to also mess with vmware fusion, which i’ll get to later. the ESX systems are pretty nice, but lacked some features that i thought would be givens; notably cloning/copying virtual machines. apparently you CAN do it, but it isn’t intuitive or quick, or at least not enough that building a template system and using that to spin up new servers was any better than my kvm method. and to be fair, it looks like the new versions they are rolling out can do exactly that.
other than that, the ESX stuff is pretty cool, and the hardware it runs on is pretty varied – i was able to use an couple of old dell servers that i had laying around.

i also tried setting up the non-ESX server that vmware puts out, but it refused to install at various points. further research showed that the installer scripts needed some fairly involved modifications to get past where i was stuck. i never was able to finish building that implementation out, but i’m still trying. honestly if building it is that hard, it might not be worth doing.

vmware fusion was pretty nice. i’ve used parallels in the past when i need to run a windows app, but that was a while back and i no longer have that setup. it was nice, but i usually don’t like having to jump into a VM just to run an app, so as much as i applaud vmware for making fusion work well, i have to criticize them for not having a mac version of their management software.

funny story : a day or so after i did all of that, i had to log into a machine that is only accessible by modem. i recently upgraded to os x lion, which apparently hates the apple modem i have, so i had to use my keyspan to connect to a USR hardware modem, and the windows environment i had from vmware was able to work great with that setup. so, yay.

playing with vmware

dancing with perl

in the past couple of weeks, i’ve started looking into the dancer framework. so far, i like what i’ve seen.

the most obvious difference between this and, say, catalyst, has been the simpler nature and availability of server implementation documentation. it is also structured very much like my homebrewed framework i’ve been using for years, which made it relatively easy to jump into.

setting up an app with by-url authorization and simple authentication was really easy, and having public and private parts of an app is pretty simple as well. the really nice thing is that all the objects and packages i’ve written for other web apps will be able to plug into this with a minimum of fuss, so the migration pains will be relatively minor.

with this in mind, i’ve paused most of my ongoing projects while i look into porting all of the code over to this new framework. turns out this isn’t a huge problem as i’ve had a bad case of coder’s block lately. but this has gotten me excited about a couple of new projects i want to start, so i’m going to be digging into it a lot more over the next few weeks.

dancing with perl

building a new mail server – planning

it has recently been heavily hinted to me that i might be tasked with building a new mail system soon, which got me thinking about how to do it better than i have before. i haven’t built a mail system from scratch in about a year, and there are some things i want to try that i either didn’t want to do last time, or didn’t have time to implement. my planning, design, and implementation process will be put here so that i have a future reference, and also in case it helps others.
Continue reading “building a new mail server – planning”

building a new mail server – planning

ruminations : network monitoring (data collection part one)

network monitoring is, in theory, a relatively simple thing : watch X for Y conditions, and tell Z what you find. most systems break this down into collection, analysis, and alerting. today i’m looking at data collection for monitoring systems.
Continue reading “ruminations : network monitoring (data collection part one)”

ruminations : network monitoring (data collection part one)

building an ubuntu 10.10 recursive DNS server

DNS servers are pretty simple things from a service standpoint, but can be annoyingly difficult to setup and configure if you aren’t used to it. the variety of packages, and options within those packages, makes this even more daunting. with that in mind, i’m going to cover just a couple of what i think are pretty useful options using bind9 on ubuntu 10.10, though the bind and OS version here aren’t too important and what i provide here will likely work with little change on similarly versioned platforms.

since i’m dealing with a recursive DNS server instead of an authoritative one, we won’t need to worry about many of the more complex options for bind, and we can have a pretty stock install work for us.
Continue reading “building an ubuntu 10.10 recursive DNS server”

building an ubuntu 10.10 recursive DNS server

iphive – demo

i’ve got a demo instance of iphive running, so if you want to see how it works feel free to email me and i can get you access to try it out. the demo is using the latest version of the code as of 2011.4.4 and is using private address space for the example database.

the next version is being written to accommodate IPv6, and will also have better user-accounting facilities to better track the who-does-what aspect of inventory management. at that time i’ll also be upgrading to the newest version of the mite framework, which will unlock a whole slew of possible enhancements and improvements.

iphive – demo