Thursday, December 04, 2008

New job at OpenX

I meant to post this for a while, but haven't had the time, because...well, it's a new job, so I've been quite swamped. I started 2 weeks ago as a system engineer at OpenX, a company based in Pasadena, whose main product is an Open Source ad server. I am part of the 'black ops' team, and my main task for now is to help with deploying and scaling the OpenX Hosted service within Amazon EC2 -- which is just one of several cloud computing providers that OpenX uses (another one is AppNexus for example).

Lots of Python involved in this, lots of automation, lots of testing, so all this makes me really happy :-)

Here is some stuff I've been working on, which I intend to post on with more details as time permits:

* command-line provisioning of EC2 instances
* automating the deployment of the OpenX application and its pre-requisites
* load balancing in EC2 using HAProxy
* monitoring with Hyperic
* working with S3-backed file systems

I'll also start working soon with slack, a system developed at Google for automatic provisioning of files via the interesting concept of 'roles'. It's in the same family as cfengine or puppet, but simpler to use and with a powerful inheritance concept applied to roles.

All in all, it's been a fun and intense 2 weeks :-)


Elliot "statik": Murphy said...

Grig, wow, you are always working on such interesting stuff! I've been working with some very similar things, and have ended up choosing ha_proxy inside EC2 also. We're using what I think is an interesting approach for deploying code, packing a bzr branch into a tarball which we upload to S3, then we boot the EC2 machines and give them a pointer to the tarball in S3, which is unpacked, then control switches over to a well defined entry point in the source tree inside the tarball.

We're using python-boto, and are reasonably happy so far.

I had wanted to use wackamole to do failover between ha_proxy instances for high availability, but the arp spoofing doesn't seem to work in EC2. How are you dealing with high availability?

Anonymous said...

Congrats on the new job! It sounds like an excellent match for your skill set. Open source, testing, deployment, new toys... Very cool

Anonymous said...

You're so lucky to work at an open source company.

Modifying EC2 security groups via AWS Lambda functions

One task that comes up again and again is adding, removing or updating source CIDR blocks in various security groups in an EC2 infrastructur...