Dynomite-manager is a Java process/tool that can be used alongside Dynomite to manage a Dynomite cluster. Some of the features include:
- Discovery and Healthcheck
- Node Configuration and Token Management for multi-region deployments
- Dynomite/Redis cold bootstrap (warm up)
- Monitoring and Insights Integration
- Support multi-region Dynomite deployment via public IP.
- Automated security group update in multi-region environment.
- Object storage backups (AWS S3 implementation provided)
- REST API
Details about the features can be found in the Wiki
The stable version of Dynomite Manager is the master branch.
For questions or contributions, please consider reading CONTRIBUTING.md.
Dynomite Manager comes with a Gradle wrapper
./gradlew build
The gradlew script will pull down all necessary gradle components/infrastructure automatically, then run the build.
Dynomite Manager provides several default implementations (AWS, Configuration, credentials etc). You can use these or choose to create your own. Dynomite Manager is currently working on AWS and your local environment. We are open to contributions to support other platforms as well.
The first step before building Dynomite Manager is to configure the interfaces related to your environment in the InjectedWebListener. Checkout the Wiki for further explanation on what interfaces to bind based on your environment.
- Build the dynomite-manager
- Set up Auto-Scale Group (ASG) and spin up instances
- Install Dynomite and web container (such as tomcat) on the instances.
- Setup AWS credentials
- Deploy
dynomite-manager.war
in your container
Dynomite-manager changes the configuration files for Dynomite and data store (Redis) and starts/stops the services. Hence the web container must have execute rights on the script to modify the dynomite.yml and data store conf file (redis.conf).
You can provide properties by using dynomite-manager{version}.jar in your web container and then implementing IConfiguration Interface. More details on the how the configuration can be found in the Wiki.
Need some help with either getting up and going or some problems with the code?
Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0