Name: hortonworks-sandbox
Description: null
Created: 2017-10-31 14:38:21.0
Updated: 2018-01-27 00:27:55.0
Pushed: 2017-12-01 18:41:58.0
Homepage: null
Size: 95
Language: Shell
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
The Hortonworks Sandbox is popular, and is now modular!
Complicated builds cause haters, so use native Docker layers!
Something something rhyme, I'm bad at rhymes!
In a nutshell: Rather than building an entire sandbox environment from scratch, use this project to extend any Hortonworks Sandbox image by specifying what changes you'd like to make to an existing image.
The interface between sandbox “layers” are well-defined, making extensions swappable and combinable.
For support, feel free to ping me: eorendain@hortonworks.com
TODO: Add slides or recording of new build architecture unveiling for better visuals
sandbox-name/
assets/
??? blueprint.json
??? custom-configs.json
??? service-startup.sh
scripts/
??? deploys/
? ??? blueprint.json
? ??? kafka.json
? ??? nifi.json
??? maintenance-mode.sh
??? mysql-setup.sh
??? service-cycle.sh
Dockerfile
packer.json
assets
is the suggested place to keep files that will at some point be copied into the sandbox, either temporarily or permenantly.scripts
is the suggested place to keep scripts that perform tasksscripts/deploys
houses scripts that deploy new services on AmbariBuild process and order of execution:
assets/service-startup.sh
, which is copied onto the sandbox for execution during each startup.packer.job
is broken up into several shell-type and file-type blocks.assets
directory as /tmp/sandbox/build
on the sandbox for the duration of the build.scripts/maintenance-mode.sh
- Place services into/out of maintenance-mode, if desired, by editing this file.scripts/mysql-setup.sh
- A template to use if you need to do any mysql prep.scripts/service-cycle.sh
- If changes to services are made, or new services are installed, cycling (starting/stopping) services before finalizing the build may be beneficial. Some services run setup/configuration steps only after their first start.assets/service-startup.sh
- This script defines which components or services begin when the sandbox is powered on. Edit this file to your liking.assets/blueprint.json
and assets/custom-configs.json
- These are discussed more in the Deploying A New Service section.A ready-to-go, pre-configured environment like a sandbox may have a number of configurations you'd like preset. To make specifying configurations easy, you're able to drop in an export of your Ambari cluster's blueprint as assets/blueprint.json
and manually specify any additional configurations as assets/custom-configs.json
.
The recommended way to go about exporting configurations is:
Specify the services and it's component parts that you want to install. See scripts/deploy/kafka.sh
and scripts/deploy/nifi.sh
for examples.