Open vars.tf, set the environment variables specified at the top of the file, and fill in any other variables that
don't have a default. This includes setting the ami_id variable to the ID of the AMI you just built.
Run terraform init.
Run terraform plan.
If the plan looks good, run terraform apply.
Questions? Ask away.
We're here to talk about our services, answer any questions, give advice, or just to chat.
{"treedata":{"name":"root","toggled":true,"children":[{"name":".circleci","children":[{"name":"config.yml","path":".circleci/config.yml","sha":"fd3d9d38ea65a464451a744754077f19efc584b0"}]},{"name":".gitignore","path":".gitignore","sha":"9de2b4892a4b8331b381f1a81ffeadfd151353f4"},{"name":".pre-commit-config.yaml","path":".pre-commit-config.yaml","sha":"19d10bbef4ca8fa40036edf1ca4f1db464e28a2f"},{"name":".pre-commit-hooks.yaml","path":".pre-commit-hooks.yaml","sha":"92462242c5c4a3aa0f5d5f5b19a81811c71e4b49"},{"name":"CODEOWNERS","path":"CODEOWNERS","sha":"98ce69cba614ca3100ef584efdddc020568d295b"},{"name":"LICENSE.txt","path":"LICENSE.txt","sha":"689cf10ec98e3297a75bdd9b9fb5da10b7a675f8"},{"name":"README.md","path":"README.md","sha":"940f96053554ddd69d7ed70e5e9f76357e4a57d6"},{"name":"examples","children":[{"name":"install-open-jdk","children":[{"name":"main.tf","path":"examples/install-open-jdk/main.tf","sha":"7cf188bc79577db1f730726a29d9c0261dd73302"},{"name":"outputs.tf","path":"examples/install-open-jdk/outputs.tf","sha":"6d1b9b915cdb10c8ba114d61d0c47f0babd2ebe8"},{"name":"packer","children":[{"name":"build.json","path":"examples/install-open-jdk/packer/build.json","sha":"742d0a47d40515ef5c3c162d9798aecf03986eea"}]},{"name":"vars.tf","path":"examples/install-open-jdk/vars.tf","sha":"d1eba93458ba1cfdf6b588d968e558f756087e9f"}]},{"name":"zookeeper-ami","children":[{"name":"README.md","path":"examples/zookeeper-ami/README.md","sha":"05c95c33022491de1a986d0aca53019913a1f44a"},{"name":"configure-image.sh","path":"examples/zookeeper-ami/configure-image.sh","sha":"908f15f17dad7254fc27d6b3b4f8f3a85c3c1619"},{"name":"docker-compose.yml","path":"examples/zookeeper-ami/docker-compose.yml","sha":"feaa66af7fa5879e41b88d09214f94a8e7dfb767"},{"name":"mock","children":[{"name":"README.md","path":"examples/zookeeper-ami/mock/README.md","sha":"fcb885c49c095432b8c800525bef76903968f2a0"},{"name":"bash-commons","children":[{"name":"aws.sh","path":"examples/zookeeper-ami/mock/bash-commons/aws.sh","sha":"c3d5b6b6c112ad9296f3207404e5aa183a6346e6"}]},{"name":"modules","children":[{"name":"attach-eni","path":"examples/zookeeper-ami/mock/modules/attach-eni","sha":"da052caea4586b27c2dc13e521092e9403fcc327"},{"name":"mount-ebs-volume","path":"examples/zookeeper-ami/mock/modules/mount-ebs-volume","sha":"e0171fef05dbd120dc8668ceeca176cc5c0dfce4"}]},{"name":"user-data","children":[{"name":"user-data.sh","path":"examples/zookeeper-ami/mock/user-data/user-data.sh","sha":"43a641aa2937ba6f7c07c8391c947de2f65b7920"}]}]},{"name":"zookeeper.json","path":"examples/zookeeper-ami/zookeeper.json","sha":"b9ef3b6bc03fbf91f8b1fe534cc8700c6eb3f8c6"}]},{"name":"zookeeper-cluster","children":[{"name":"README.md","path":"examples/zookeeper-cluster/README.md","sha":"eda7e80c820a57b327129083f52b73e0713ae6b3","toggled":true},{"name":"main.tf","path":"examples/zookeeper-cluster/main.tf","sha":"951e5861164f297b7babbe86be32fb6de0504132"},{"name":"outputs.tf","path":"examples/zookeeper-cluster/outputs.tf","sha":"b975f1a72a486b619e310e8140110b84dfc29085"},{"name":"user-data","children":[{"name":"user-data.sh","path":"examples/zookeeper-cluster/user-data/user-data.sh","sha":"1f29df534a7a71456ea56de596059025a8fcd12d"}]},{"name":"vars.tf","path":"examples/zookeeper-cluster/vars.tf","sha":"ad3d6ba8d303e025fa8afd2a618510deeafd2e20"}],"toggled":true}],"toggled":true},{"name":"modules","children":[{"name":"bash-commons","children":[{"name":"README.md","path":"modules/bash-commons/README.md","sha":"0b7594de5380fe493e62f91965b5f8d283d76c55"},{"name":"install.sh","path":"modules/bash-commons/install.sh","sha":"d531a722d55a8a82d312725aa19ba2c1ddebcf02"},{"name":"lib","children":[{"name":"assert.sh","path":"modules/bash-commons/lib/assert.sh","sha":"46db8af49acb3e8d707447827dc614740add6a63"},{"name":"aws.sh","path":"modules/bash-commons/lib/aws.sh","sha":"3f14d36e2c7b57c91be34bdf30fff4f400a7d1aa"},{"name":"log.sh","path":"modules/bash-commons/lib/log.sh","sha":"66f936873d4d104c94693d3e68790cc0b9d36c63"},{"name":"os.sh","path":"modules/bash-commons/lib/os.sh","sha":"435e592c0e992f2266247a2da797a0eefc429f35"},{"name":"strings.sh","path":"modules/bash-commons/lib/strings.sh","sha":"19dbfe630edfbe71e7c8c1beee3d50fffdd5b1e6"}]}]},{"name":"exhibitor-shared-config","children":[{"name":"README.md","path":"modules/exhibitor-shared-config/README.md","sha":"ec9415af7d44ddfdf4cdfc58b89f4a5df2f0721e"},{"name":"main.tf","path":"modules/exhibitor-shared-config/main.tf","sha":"9637bf1851ec6ec30efd93a681d3d3a0dd7310be"},{"name":"outputs.tf","path":"modules/exhibitor-shared-config/outputs.tf","sha":"6cae4a73a186ba26e732a5d77af9b5d8707759e1"},{"name":"vars.tf","path":"modules/exhibitor-shared-config/vars.tf","sha":"72f9f93e425ee4ec00f3464aa3c0d41be5629775"}]},{"name":"install-exhibitor","children":[{"name":"README.md","path":"modules/install-exhibitor/README.md","sha":"98e9e15f48b87ae76e30ec6150301bb16d7acb3e"},{"name":"install.sh","path":"modules/install-exhibitor/install.sh","sha":"8c56b759a036ff1e8c0130ee644469f4fb11f74e"},{"name":"pom.xml","path":"modules/install-exhibitor/pom.xml","sha":"e5cca292196cdaa093cc484465eb5bc2d48ed618"},{"name":"zookeeper-log4j.properties","path":"modules/install-exhibitor/zookeeper-log4j.properties","sha":"80e3ae28555ed63b5a74d127796ff3f2adfce223"}]},{"name":"install-open-jdk","children":[{"name":"README.md","path":"modules/install-open-jdk/README.md","sha":"a048ab6e2cc74020657a68b7e32584f6ed78f76d"},{"name":"install.sh","path":"modules/install-open-jdk/install.sh","sha":"9982cf730afc5d58b05b888054138ffbb8725795"}]},{"name":"install-oracle-jdk","children":[{"name":"README.md","path":"modules/install-oracle-jdk/README.md","sha":"b46c3ab123f53f6a32ba2026bc18f3d870617bc1"},{"name":"install.sh","path":"modules/install-oracle-jdk/install.sh","sha":"53b798bd0984de5fd27048d3dfcd437d0687c117"}]},{"name":"install-supervisord","children":[{"name":"README.md","path":"modules/install-supervisord/README.md","sha":"eb07bdb5928882c73efcb5a069257f1356bd5533"},{"name":"install.sh","path":"modules/install-supervisord/install.sh","sha":"2b765667b825b94791e715b0dcbcdbd8ec4e95a2"},{"name":"supervisor-initd-script.sh","path":"modules/install-supervisord/supervisor-initd-script.sh","sha":"171b91613e98ab2bd10282025caff1707918c95a"},{"name":"supervisor-systemd-unit.service","path":"modules/install-supervisord/supervisor-systemd-unit.service","sha":"995a1a95863c21abcd245e45313e99b7cd98d98a"},{"name":"supervisord.conf","path":"modules/install-supervisord/supervisord.conf","sha":"d96beb0ca9a16279ed1bdf74cbb6516275d85085"}]},{"name":"install-zookeeper","children":[{"name":"README.md","path":"modules/install-zookeeper/README.md","sha":"9f23978ae6dfd0124fa8a9d8327b6256aa654b2f"},{"name":"install.sh","path":"modules/install-zookeeper/install.sh","sha":"7d25699e7835711dfc4c9e1fa78565fd578ccfb1"},{"name":"security","children":[{"name":"zookeeper.KEYS","path":"modules/install-zookeeper/security/zookeeper.KEYS","sha":"f23552bd9489de0f229bb4bb27dfb6a0376904f4"},{"name":"zookeeper.asc","path":"modules/install-zookeeper/security/zookeeper.asc","sha":"de701fc5a9b18af3095d32de998b95d7f25667ef"}]}]},{"name":"precommit-hooks","children":[{"name":"README.md","path":"modules/precommit-hooks/README.md","sha":"f5fa146415c58421be1653d09d95fc97b65bf5aa"},{"name":"gofmt.sh","path":"modules/precommit-hooks/gofmt.sh","sha":"6df4a06074bfc2eea33864e0c00e282caf4fb213"},{"name":"golint.sh","path":"modules/precommit-hooks/golint.sh","sha":"e74ea4da285fee9d45b4cac6426657cfc504de6d"},{"name":"shellcheck.sh","path":"modules/precommit-hooks/shellcheck.sh","sha":"5e2b2ab86606d80419237cf47f40762baa5f1c0d"},{"name":"terraform-fmt.sh","path":"modules/precommit-hooks/terraform-fmt.sh","sha":"048ec70ba42772675c1e7d2438b531fd572ad59e"}]},{"name":"run-exhibitor","children":[{"name":"README.md","path":"modules/run-exhibitor/README.md","sha":"35608381a0756187d1bf77f1d71775edfff0858a"},{"name":"bin","children":[{"name":"run-exhibitor","path":"modules/run-exhibitor/bin/run-exhibitor","sha":"e7d039d097d060e6b7abcc6eb4622af7a1b010fe"}]},{"name":"install.sh","path":"modules/run-exhibitor/install.sh","sha":"f8f5a2961f42fc23b4a8fe06544a38ad28bac386"}]},{"name":"run-health-checker","children":[{"name":"README.md","path":"modules/run-health-checker/README.md","sha":"2b68f92659844150a106fa2e55972848e6373135"},{"name":"bin","children":[{"name":"check-zookeeper","path":"modules/run-health-checker/bin/check-zookeeper","sha":"c952376818aa1b3c08e6ce54c6b7b44811911696"},{"name":"run-health-checker","path":"modules/run-health-checker/bin/run-health-checker","sha":"0409f239d7078fd1a34d311790b0648e8173b102"}]},{"name":"install.sh","path":"modules/run-health-checker/install.sh","sha":"5241e81822039d9644d2a02f7f10003e64907de4"}]},{"name":"zookeeper-cluster","children":[{"name":"README.md","path":"modules/zookeeper-cluster/README.md","sha":"c604ec0b8326a2496b116da1579996aefa0ac04a"},{"name":"main.tf","path":"modules/zookeeper-cluster/main.tf","sha":"8d9c97dc13125ccaebb296d25c198063ea524db7"},{"name":"outputs.tf","path":"modules/zookeeper-cluster/outputs.tf","sha":"424dada690378a4bd7aa8e903c61ad77746ebf99"},{"name":"vars.tf","path":"modules/zookeeper-cluster/vars.tf","sha":"831792934ee50e50856973450f44e9e8f99518a6"}]},{"name":"zookeeper-iam-permissions","children":[{"name":"README.md","path":"modules/zookeeper-iam-permissions/README.md","sha":"2a8f49855ac55e5bd083e8466ac5a2576fb62878"},{"name":"main.tf","path":"modules/zookeeper-iam-permissions/main.tf","sha":"a78e1cd57e7ccc13d35a3dfec5ad5a2fd1fd7276"},{"name":"vars.tf","path":"modules/zookeeper-iam-permissions/vars.tf","sha":"9c3a5c00d0591fd79c9e63b6c8bf753cc14cda61"}]},{"name":"zookeeper-security-group-rules","children":[{"name":"README.md","path":"modules/zookeeper-security-group-rules/README.md","sha":"c2681bc0df96de4e97ea63c138f625d7bacd2439"},{"name":"main.tf","path":"modules/zookeeper-security-group-rules/main.tf","sha":"512acb4af29f05a4eae2d1ebd74b7377fcf8cffd"},{"name":"vars.tf","path":"modules/zookeeper-security-group-rules/vars.tf","sha":"6319feab9b2eb4407d562436d716e64ef57b17fd"}]}]},{"name":"test","children":[{"name":"Gopkg.lock","path":"test/Gopkg.lock","sha":"fd0e206ff06d8477115df4e530fd4910b57e15de"},{"name":"Gopkg.toml","path":"test/Gopkg.toml","sha":"7bc1f94cd3e197e77bbf369ae74205a4d5f2f3ba"},{"name":"README.md","path":"test/README.md","sha":"67c59943d09b170960acbafeb4a4c78683873a66"},{"name":"open_jdk_test.go","path":"test/open_jdk_test.go","sha":"f02e087559c57221223139bc6d66ecb602cf38e8"},{"name":"zookeeper_cluster_test.go","path":"test/zookeeper_cluster_test.go","sha":"d4d9cef0f13e90575dd67fdbf8bd9213070cca71"}]}]},"detailsContent":"<h1 class=\"preview__body--title\" id=\"zoo-keeper-cluster-example\">ZooKeeper Cluster Example</h1><div class=\"preview__body--border\"></div><p>This folder shows an example of how to use the <a href=\"/repos/v0.6.5/package-zookeeper/modules/zookeeper-cluster\" class=\"preview__body--description--blue\">zookeeper-cluster module</a> to deploy a\nZooKeeper Cluster.</p>\n<h2 class=\"preview__body--subtitle\" id=\"how-do-you-run-this-example\">How do you run this example?</h2>\n<p>To run this example, you need to do the following:</p>\n<ol>\n<li>Build the AMI</li>\n<li>Apply the Terraform code</li>\n</ol>\n<h3 class=\"preview__body--subtitle\" id=\"build-the-ami\">Build the AMI</h3>\n<p>See the <a href=\"/repos/v0.6.5/package-zookeeper/examples/zookeeper-ami\" class=\"preview__body--description--blue\">zookeeper-ami docs</a>.</p>\n<h3 class=\"preview__body--subtitle\" id=\"apply-the-terraform-code\">Apply the Terraform code</h3>\n<p>To apply the Terraform templates:</p>\n<ol>\n<li>Install <a href=\"https://www.terraform.io/\" class=\"preview__body--description--blue\" target=\"_blank\">Terraform</a></li>\n<li>Open <code>vars.tf</code>, set the environment variables specified at the top of the file, and fill in any other variables that\ndon't have a default. This includes setting the <code>ami_id</code> variable to the ID of the AMI you just built.</li>\n<li>Run <code>terraform init</code>.</li>\n<li>Run <code>terraform plan</code>.</li>\n<li>If the plan looks good, run <code>terraform apply</code>.</li>\n</ol>\n","repoName":"package-zookeeper","repoRef":"v0.6.6","serviceDescriptor":{"serviceName":"Apache ZooKeeper","serviceRepoName":"package-zookeeper","serviceRepoOrg":"gruntwork-io","cloudProviders":["aws"],"description":"Deploy an Apache ZooKeeper cluster. Supports automatic bootstrap, Exhibitor, zero-downtime rolling deployment, and auto healing.","imageUrl":"zookeeper.png","licenseType":"subscriber","technologies":["Terraform","Bash"],"compliance":[],"tags":[""]},"serviceCategoryName":"NoSQL","fileName":"README.md","filePath":"/examples/zookeeper-cluster","title":"Repo Browser: Apache ZooKeeper","description":"Browse the repos in the Gruntwork Infrastructure as Code Library."}