Blueprint - reverse engineering your server configurationleena
July 31, 2011
There are many tools like Chef, Puppet etc. to manage the server configuration, but there are not many which do the reverse i.e. create a configuration from an existing server. Blueprint does exactly the latter.
Its a set of python scripts which reverse engineer your server configuration. It stores the configuration locally in its own repository, but you can also:
- Create Puppet/Chef scripts
- Convert into a normal shell script
- Using Blueprint I/O, store the configuration in remote server and pull it when required
It scans all the packages installed on the machine and adds those into the configuration. According to the tutorial, you can do this on a dedicated server or on virtual servers created using VirtualBoxetc, or on cloud servers like Amazon EC2, Rackspace etc.
I’ve tried it on a dedicated server (i.e. our CI server) as well as on an EC2 server. I faced a couple of issues, but with their help (see issues 71 and 63), got those fixed.
While bringing up the EC2 instance, you can give the shell script created by Blueprint as user data, provided the size of the script is below 16384 bytes.
Its really an awesome tool. I got the reference to it from Ruby5.