From 77b8d49822652e24fbd3ad28327d2367d2f87ffe Mon Sep 17 00:00:00 2001 From: Claudio Di Vita Date: Mon, 18 Oct 2021 11:36:00 +0200 Subject: [PATCH 1/5] Added masterauth directive to redis.conf (required for replication) --- scripts/redis_bootstrap_master.sh | 1 + scripts/redis_bootstrap_replica.sh | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/redis_bootstrap_master.sh b/scripts/redis_bootstrap_master.sh index 1c8b9fa..1055e95 100644 --- a/scripts/redis_bootstrap_master.sh +++ b/scripts/redis_bootstrap_master.sh @@ -31,6 +31,7 @@ cluster-node-timeout 5000 cluster-slave-validity-factor 0 appendonly yes requirepass ${redis_password} +masterauth ${redis_password} EOF # Configure Sentinel diff --git a/scripts/redis_bootstrap_replica.sh b/scripts/redis_bootstrap_replica.sh index 74ddec2..87f908e 100644 --- a/scripts/redis_bootstrap_replica.sh +++ b/scripts/redis_bootstrap_replica.sh @@ -32,9 +32,9 @@ cluster-node-timeout 5000 cluster-slave-validity-factor 0 appendonly yes requirepass ${redis_password} +masterauth ${redis_password} EOF - sleep 30 #/usr/local/bin/redis-server $REDIS_CONFIG_FILE --daemonize yes #nohup /usr/local/bin/redis-server $REDIS_CONFIG_FILE > /tmp/redis-server.log & \ No newline at end of file From d3f4a19a3acd632a575fece93a48304f7ae18ea4 Mon Sep 17 00:00:00 2001 From: Claudio Di Vita Date: Mon, 18 Oct 2021 15:49:49 +0200 Subject: [PATCH 2/5] Added Dynamic Group for Redis cluster Compute instances Added Redis servers logs to OCI Logging --- dynamic_group.tf | 7 ++++++ redis_logging.tf | 58 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 dynamic_group.tf create mode 100644 redis_logging.tf diff --git a/dynamic_group.tf b/dynamic_group.tf new file mode 100644 index 0000000..8fcd25f --- /dev/null +++ b/dynamic_group.tf @@ -0,0 +1,7 @@ +resource "oci_identity_dynamic_group" "redis_dynamic_group" { + + compartment_id = var.tenancy_ocid + description = "Dynamic group of Redis cluster Compute instances" + matching_rule = "tag.${oci_identity_tag_namespace.ArchitectureCenterTagNamespace.name}.${oci_identity_tag.ArchitectureCenterTag.name}.value = '${var.release}'" + name = "redis-cluster-dynamic-group" +} \ No newline at end of file diff --git a/redis_logging.tf b/redis_logging.tf new file mode 100644 index 0000000..95d789b --- /dev/null +++ b/redis_logging.tf @@ -0,0 +1,58 @@ +resource "oci_logging_log_group" "redis_log_group" { + + compartment_id = var.compartment_ocid + display_name = "Redis Log Group" +} + +resource "oci_logging_log" "redis_log" { + + display_name = "Redis Logs" + + is_enabled = true + log_group_id = oci_logging_log_group.redis_log_group.id + log_type = "CUSTOM" + retention_duration = "30" +} + +resource "oci_logging_unified_agent_configuration" "redis_log_agent_config" { + + compartment_id = var.compartment_ocid + + description = "Log Agent configuration for Redis nodes" + display_name = "redis-log-agent-config" + + group_association { + group_list = [ + oci_identity_dynamic_group.redis_dynamic_group.id + ] + } + + is_enabled = true + + service_configuration { + + configuration_type = "LOGGING" + + destination { + log_object_id = oci_logging_log.redis_log.id + } + + sources { + + name = "redis_server" + + parser { + + parser_type = "REGEXP" + expression = "^(?\\d+):(?[XCSM]) (?