Reverse engineer server configuration using Blueprint

Blueprint (https://github.com/devstructure/blueprint) checks the changes that have made in the configuration files on a RPM or Debian based Linux, and saves them as an executable shell script, or push them to a remote server.

Bleprint is a great tool for moving from a manually managed to configuration management system such as SaltStack, Puppet, Ansible and Chef.

It lists the following:

  • Packages installed via Yum or apt-get
  • Python packages (installed via easy_install or pip)
  • Ruby Gem packages
  • PHP PEAR and PECL
  • Node.js NPM
  • Which files in /etc/ have been modified or added
  • Software manually installed in /usr/local (typically software compiled from source)
  • Which SysV services (in /etc/init.d) are set to start during boot.

This information is saved in as a blueprint, which is comprised of a JSON file and zero or more tar files.

The blueprint is saved in the local Git repository.

To create a blueprint:

blueprint create myblueprint

List the changed files:

blueprint show-files myblueprint

List installed packages:

blueprint show-packages myblueprint

List services starting on boot:

blueprint show-services myblueprint

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *