HADeploy is a tool specially designed to deploy application in BigData/NoSQL context with Hadoop cluster as first target.
In such context, deploying an application is not only matter of deploying some jar in some place. It also means creating a bunch of associated resources such as Hive table, Kafka topic, HBase table, HDFS folders and files, systems account, etc.
You will find documentation at this location
An application can be fully described in one file, hosting all components and resources description.
Application file is independent of target physical infrastructure. This target is defined in another file and HADeploy will take care of the merge on deployment
In the same way, the application file is independent of the environment (DEV, INT, PPRD, PROD,..). This ensure coherency and repeatable deployments among these contexts
HADeploy is a purely descriptive tool. As such usage will consist of defining the expected state of the deployed application and let the tool perform the reconciliation between expected and actual state.
Such principle means HADeploy is a fully idempotent tools, as if expected state match the actual ones, the tool will not perform any further actions.
A typical deployment pattern allowed by HADeploy is to define ‘Application Container’, or ‘Application Lane’. Then several instance (or version) of an application can be installed and run in parallel.
HADeploy is able to deploy application on a Hadoop cluster secured by Kerberos.
HADeploy will manage all permissions associated to the deployed components and resources.
HADeploy is designed with a highly modular plugins architecture, thus allowing easy third party extension.
As HADeploy knows about all the components of your application, it provides a REMOVAL mode, which restores the target cluster in its initial state.
HADeploy is a fully open source project, under GNU General Public License.