diff --git a/CHANGELOG.md b/CHANGELOG.md index 09b59aa..bbfa9e5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # GraphDB AWS Terraform Module Changelog +# 1.2.2 + +* Fixed issues with variables in the backup user data script +* Added ability to choose http port for Route53 availability check +* Added ability to specify custom FQDN for the Route53 availability URL + # 1.2.1 * Fixed issue where the backup script was not configured diff --git a/README.md b/README.md index dc27a4f..983521c 100644 --- a/README.md +++ b/README.md @@ -144,6 +144,7 @@ Before you begin using this Terraform module, ensure you meet the following prer | monitoring\_endpoint\_auto\_confirms | Enable or disable endpoint auto confirm subscription to the sns topic | `bool` | `false` | no | | monitoring\_log\_group\_retention\_in\_days | Log group retention in days | `number` | `30` | no | | monitoring\_route53\_health\_check\_aws\_region | Define the region in which you want the monitoring to be deployed. It is used to define where the Route53 Availability Check will be deployed, since if it is not specified it will deploy the check in us-east-1 and if you deploy in different region it will not find the dimensions. | `string` | `"us-east-1"` | no | +| monitoring\_route53\_healtcheck\_fqdn\_url | Define custom domain name for the Route53 Health check | `string` | `""` | no | | graphdb\_properties\_path | Path to a local file containing GraphDB properties (graphdb.properties) that would be appended to the default in the VM. | `string` | `null` | no | | graphdb\_java\_options | GraphDB options to pass to GraphDB with GRAPHDB\_JAVA\_OPTS environment variable. | `string` | `null` | no | | deploy\_logging\_module | Enable or disable logging module | `bool` | `false` | no | diff --git a/main.tf b/main.tf index 2d35ca3..2ad0eac 100644 --- a/main.tf +++ b/main.tf @@ -41,6 +41,8 @@ locals { var.sns_default_kms_key)) : var.sns_default_kms_key ) + route53_availability_request_url = var.monitoring_route53_healtcheck_fqdn_url != "" ? var.monitoring_route53_healtcheck_fqdn_url: module.load_balancer.lb_dns_name + route53_availability_port = var.lb_tls_certificate_arn != "" ? 443 : 80 } locals { @@ -221,12 +223,12 @@ module "monitoring" { cmk_key_alias = var.sns_cmk_key_alias parameter_store_kms_key_arn = local.calculated_parameter_store_kms_key_arn cloudwatch_log_group_retention_in_days = var.monitoring_log_group_retention_in_days - route53_availability_request_url = module.load_balancer.lb_dns_name + route53_availability_request_url = local.route53_availability_request_url route53_availability_measure_latency = var.monitoring_route53_measure_latency sns_kms_key_arn = local.calculated_sns_kms_key_arn graphdb_node_count = var.graphdb_node_count route53_availability_http_string_type = local.calculated_http_string_type - + route53_availability_port = local.route53_availability_port } module "graphdb" { diff --git a/modules/graphdb/templates/05_gdb_backup_conf.sh.tpl b/modules/graphdb/templates/05_gdb_backup_conf.sh.tpl index def9c72..211bb2d 100644 --- a/modules/graphdb/templates/05_gdb_backup_conf.sh.tpl +++ b/modules/graphdb/templates/05_gdb_backup_conf.sh.tpl @@ -27,8 +27,8 @@ NODE_STATE="\$(curl --silent -u "admin:\$GRAPHDB_ADMIN_PASSWORD" http://localhos function trigger_backup { local backup_name="\$(date +'%Y-%m-%d_%H-%M-%S').tar" - current_time=$(date +"%T %Y-%m-%d") - start_time=$(date +%s) + current_time=\$(date +"%T %Y-%m-%d") + start_time=\$(date +%s) echo "Creating backup \$backup_name at \$start_time" curl \ @@ -62,17 +62,19 @@ IS_CLUSTER=\$( curl -s -o /dev/null \ -u "admin:\$GRAPHDB_ADMIN_PASSWORD" \ -w "%%{http_code}" \ - http://localhost:7200/rest/monitor/cluster + http://localhost:7201/rest/monitor/cluster ) -if [ "\$IS_CLUSTER" == 200 ]; then +if [ "\$IS_CLUSTER" -eq 200 ]; then + echo "GraphDB is running in a cluster." # Checks if the current GraphDB instance is Leader, otherwise exits. if [ "\$NODE_STATE" != "LEADER" ]; then - echo "current node is not a leader, but \$NODE_STATE" + echo "Current node is not a leader, but \$NODE_STATE" exit 0 fi (trigger_backup && echo "") | tee -a /var/opt/graphdb/node/graphdb_backup.log -elif [ "\$IS_CLUSTER" == 503 ]; then +elif [ "\$IS_CLUSTER" -ne 200 ]; then + echo "GraphDB is not running in a cluster." (trigger_backup && echo "") | tee -a /var/opt/graphdb/node/graphdb_backup.log fi diff --git a/variables.tf b/variables.tf index 1b23724..6455039 100644 --- a/variables.tf +++ b/variables.tf @@ -362,6 +362,12 @@ variable "monitoring_route53_health_check_aws_region" { default = "us-east-1" } +variable "monitoring_route53_healtcheck_fqdn_url" { + description = "Define custom domain name for the Route53 Health check" + type = string + default = "" +} + # GraphDB overrides variable "graphdb_properties_path" { @@ -740,3 +746,4 @@ variable "sns_rotation_enabled" { type = bool default = true } +