elasticsearch
kiwicom/elasticsearch/kubernetes
Elasticsearch module for Kubernetes based on elastic Helm charts
terraform-kubernetes-elasticsearch Elasticsearch module for Kubernetes based on [Elasticsearch Helm charts. Latest changes from Helm charts are from (521eb282b72491ea52f430145c2d718375d735ef. Usage ``hcl-terraform locals { cluster_name = "elasticsearch-cluster" es_version = "6.8.8" master_eligible_nodes = 1 } resource "kubernetes_storage_class" "es_ssd" { metadata { name = "es-ssd" } storage_provisioner = "kubernetes.io/gce-pd" parameters = { type = "pd-ssd" } } module "elasticsearch_client" { source = "kiwicom/elasticsearch/kubernetes" version = "~> 1.0.0" gcp_project_id = "gcp-project-id" # version >= 1.0.0 and 1.0.0" # version >= 1.0.0 and 1.0.0" # version >= 1.0.0 and < 1.1.0, e.g. 1.0.X node_group = "data" cluster_name = local.cluster_name es_version = local.es_version namespace = "st
| Name | Type | Description | Default |
|---|---|---|---|
| namespace | string | Namespace in which service will be deployed | required |
| es_version | string | Elasticsearch version | required |
| gcp_project_id | string | GCP project ID | required |
| extra_service_ports | object({ ports = list(obje | Configurable service to expose the Elasticsearch service | {
"ports": []
} |
| extra_containers | string | Templatable string of additional containers to be passed to the tpl function | "" |
| helm_install_timeout | number | Time in seconds to wait for any individual kubernetes operation (like Jobs for h | 600 |
| node_group | string | This is the name that will be used for each group of nodes in the cluster (value | "" |
| protocol | string | The protocol that will be used for the readinessProbe. Change this to `https` if | "http" |
| resources | object({ requests = object | Allows you to set the resources for the statefulset | {
"limits": {
"cpu": "1000m",
|
| extra_configs | list(object({ name = str | Additional config maps | [] |
| monitoring_slack_alerts_channel | string | Slack #alerts channel for reporting alerts about the underlying infrastructure. | "@slack-alerts" |
| image_pull_secrets | list(string) | Image Pull Secrets | [] |
| tolerations | list(object({ key = s | [] | |
| monitoring_pager_duty_working_hours | string | Platform PagerDuty escalation policy with core time response only. | "@pagerduty-DDDevopsLow" |
| es_health_monitoring | bool | Enable monitoring of ES cluster health, with notifications sent to monitoring_sl | false |
| create_snapshot_bucket | bool | Create a GCS bucket for storing snapshots | false |
| es_monitoring | bool | Enables infrastructure-level monitoring for your ES cluster - default value is f | false |
| monitoring_pager_duty_team_specific | string | Team specific PagerDuty escalation plicy. | "" |
| common_annotations | map(string) | Common annotations for all the resources | {} |
| roles | object({ master = bool | A hash map with the specific roles for the node group | {
"data": null,
"ingest": null,
"m |
| storage_class_name | string | Storage class name | "ssd" |
| keystore | list(string) | Allows you map Kubernetes secrets into the keystore. | [] |
| replicas | number | Kubernetes replica count for the statefulset (i.e. how many pods) | 0 |
elasticsearch_endpoint