Module to create an Apache Zookeeper ensemble cluster deployed on the HSDP Container Host infrastructure. This module serves as a blueprint for future HSDP Container Host modules. Example usage
module "zookeeper" {
source = "github.com/philips-labs/terraform-hsdp-zookeeper"
nodes = 5
bastion_host = "bastion.host"
user = "ronswanson"
private_key = file("~/.ssh/dec.key")
user_groups = ["ronswanson", "poc"]
trust_store = {
truststore = "./truststore.jks"
password = "somepass"
}
key_store = {
keystore = "./keystore.jks"
password = "somepass"
}
}IMPORTANT SECURITY INFORMATION
This module currently enables only mTLS-SSL between Kafka, Zookeeper or any connecting client apps. Operating and maintaining applications on Container Host is always your responsibility. This includes ensuring any security measures are in place in case you need them.
| Name | Version |
|---|---|
| hsdp | >= 0.9.4 |
| Name | Version |
|---|---|
| hsdp | >= 0.9.4 |
| random | n/a |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| bastion_host | Bastion host to use for SSH connections | string |
n/a | yes |
| enable_exporter | Indicates whether jmx exporter is enabled or not | bool |
false |
no |
| host_name | The middlename for your host default is a random number | string |
"" |
no |
| image | The docker image to use | string |
"bitnami/zookeeper:latest" |
no |
| instance_type | The instance type to use | string |
"t2.medium" |
no |
| key_store | Key Store for SSL, same key used for all nodes | object( |
n/a | yes |
| nodes | Number of nodes | number |
3 |
no |
| private_key | Private key for SSH access | string |
n/a | yes |
| tld | The tld for your host default is a dev | string |
"dev" |
no |
| trust_store | Trust store for SSL | object( |
n/a | yes |
| user | LDAP user to use for connections | string |
n/a | yes |
| user_groups | User groups to assign to cluster | list(string) |
[] |
no |
| volume_size | The volume size to use in GB | number |
20 |
no |
This object has two properties that needs to be filled
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| keystore | The path of the keystore file in JKS format | string |
none | yes |
| password | The password to be used for the key store | string |
none | yes |
This object has two properties that needs to be filled
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| truststore | The path of the truststore file in JKS format | string |
none | yes |
| password | The password to be used for the trust store | string |
none | yes |
| Name | Description |
|---|---|
| zookeeper_name_nodes | Container Host Zookeeper instance names |
| zookeeper_nodes | Container Host Zookeeper instances |
| zookeeper_port | Zookeeper port |
Andy Lo-A-Foe andy.lo-a-foe@philips.com
License is MIT