@@ -18,56 +18,72 @@ This module is for deploying a highly available MongoDB cluster on Kubernetes us
1818## Usage Example
1919
2020``` hcl
21- module "aws" {
22- source = "squareops/mongodb/kubernetes//modules/resources/aws"
23- environment = "prod"
24- name = "mongodb"
25- cluster_name = "prod-eks"
26- mongodb_custom_credentials_enabled = "true"
27- store_password_to_secret_manager = "true"
28- mongodb_custom_credentials_config = {
21+ locals {
22+ name = "mongo"
23+ region = "us-east-2"
24+ environment = "prod"
25+ additional_tags = {
26+ Owner = "organization_name"
27+ Expires = "Never"
28+ Department = "Engineering"
29+ }
30+ create_namespace = true
31+ namespace = "mongodb"
32+ store_password_to_secret_manager = true
33+ mongodb_custom_credentials_enabled = true
34+ mongodb_custom_credentials_config = {
2935 root_user = "root"
3036 root_password = "NCPFUKEMd7rrWuvMAa73"
3137 metric_exporter_user = "mongodb_exporter"
3238 metric_exporter_password = "nvAHhm1uGQNYWVw6ZyAH"
3339 }
3440}
41+ module "aws" {
42+ source = "squareops/mongodb/kubernetes//modules/resources/aws"
43+ environment = local.environment
44+ name = local.name
45+ store_password_to_secret_manager = local.store_password_to_secret_manager
46+ cluster_name = ""
47+ mongodb_custom_credentials_enabled = local.mongodb_custom_credentials_enabled
48+ mongodb_custom_credentials_config = local.mongodb_custom_credentials_config
49+ }
3550
3651module "mongodb" {
37- source = "squareops/mongodb/kubernetes"
52+ source = "squareops/mongodb/kubernetes"
53+ namespace = local.namespace
54+ create_namespace = local.create_namespace
3855 mongodb_config = {
39- name = "mongodb"
56+ name = local.name
57+ namespace = local.namespace
4058 values_yaml = ""
41- environment = "prod"
59+ environment = local.environment
4260 volume_size = "10Gi"
4361 architecture = "replicaset"
62+ custom_databases = "['db1', 'db2']"
63+ custom_databases_usernames = "['admin', 'admin']"
64+ custom_databases_passwords = "['pass1', 'pass2']"
4465 replica_count = 2
45- storage_class_name = "gp3"
46- store_password_to_secret_manager = "true"
47- }
48- mongodb_custom_credentials_enabled = "true"
49- mongodb_custom_credentials_config = {
50- root_user = "root"
51- root_password = "NCPFUKEMd7rrWuvMAa73"
52- metric_exporter_user = "mongodb_exporter"
53- metric_exporter_password = "nvAHhm1uGQNYWVw6ZyAH"
66+ storage_class_name = "gp2"
67+ store_password_to_secret_manager = local.store_password_to_secret_manager
5468 }
55- root_password = mongodb_custom_credentials_enabled ? "" : module.aws.root_password
56- metric_exporter_pasword = mongodb_custom_credentials_enabled ? "" : module.aws.metric_exporter_pasword
69+ mongodb_custom_credentials_enabled = local.mongodb_custom_credentials_enabled
70+ mongodb_custom_credentials_config = local.mongodb_custom_credentials_config
71+ root_password = local.mongodb_custom_credentials_enabled ? "" : module.aws.root_password
72+ metric_exporter_password = local.mongodb_custom_credentials_enabled ? "" : module.aws.metric_exporter_password
5773 bucket_provider_type = "s3"
5874 mongodb_backup_enabled = true
5975 iam_role_arn_backup = module.aws.iam_role_arn_backup
6076 mongodb_backup_config = {
61- bucket_uri = "backup-bucket-uri "
62- s3_bucket_region = "backup-bucket-region "
63- cron_for_full_backup = "* */12 * * *"
77+ bucket_uri = "s3://mongo-demo-backup "
78+ s3_bucket_region = "us-east-2 "
79+ cron_for_full_backup = "* * * * *"
6480 }
6581 mongodb_restore_enabled = true
6682 iam_role_arn_restore = module.aws.iam_role_arn_restore
6783 mongodb_restore_config = {
68- bucket_uri = "restore-bucket-uri/restore-file-name "
69- s3_bucket_region = "restore-bucket-region "
70- file_name = "restore-file-name "
84+ bucket_uri = "s3://mongo-demo-backup/mongodumpfull_20230523_092110.gz "
85+ s3_bucket_region = "us-east-2 "
86+ file_name = "mongodumpfull_20230523_092110.gz "
7187 }
7288 mongodb_exporter_enabled = true
7389}
0 commit comments