You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+28-13Lines changed: 28 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,7 +11,7 @@ This module allows you to easily deploy a MySQL database on Kubernetes using Hel
11
11
12
12
| MysqlDB Helm Chart Version | K8s supported version |
13
13
| :-----: | :--- |
14
-
|**9.2.0**|**1.23,1.24,1.25**|
14
+
|**9.2.0**|**1.23,1.24,1.25,1.26,1.27**|
15
15
16
16
17
17
## Usage Example
@@ -21,15 +21,27 @@ module "mysql" {
21
21
source = "squareops/mysql/kubernetes"
22
22
cluster_name = "dev-cluster"
23
23
mysqldb_config = {
24
-
name = "mysql"
25
-
values_yaml = ""
26
-
environment = "prod"
27
-
architecture = "replication"
28
-
storage_class_name = "gp3"
29
-
custom_user_username = "admin"
30
-
primary_db_volume_size = "10Gi"
31
-
secondary_db_volume_size = "10Gi"
32
-
secondary_db_replica_count = 2
24
+
name = "mysql"
25
+
values_yaml = ""
26
+
environment = "prod"
27
+
architecture = "replication"
28
+
storage_class_name = "gp3"
29
+
custom_user_username = "admin"
30
+
primary_db_volume_size = "10Gi"
31
+
secondary_db_volume_size = "10Gi"
32
+
secondary_db_replica_count = 2
33
+
store_password_to_secret_manager = true
34
+
}
35
+
mysqldb_custom_credentials_enabled = true
36
+
mysqldb_custom_credentials_config = {
37
+
root_user = "root"
38
+
root_password = "RJDRIFsYC8ZS1WQuV0ps"
39
+
custom_username = "admin"
40
+
custom_user_password = "NCPFUKEMd7rrWuvMAa73"
41
+
replication_user = "replicator"
42
+
replication_password = "nvAHhm1uGQNYWVw6ZyAH"
43
+
exporter_user = "mysqld_exporter"
44
+
exporter_password = "ZawhvpueAehRdKFlbjaq"
33
45
}
34
46
mysqldb_backup_enabled = true
35
47
mysqldb_backup_config = {
@@ -60,7 +72,7 @@ The required IAM permissions to create resources from this module can be found [
60
72
5. To deploy Prometheus/Grafana, please follow the installation instructions for each tool in their respective documentation.
61
73
6. Once Prometheus and Grafana are deployed, the exporter can be configured to scrape metrics data from your application or system and send it to Prometheus.
62
74
7. Finally, you can use Grafana to create custom dashboards and visualize the metrics data collected by Prometheus.
63
-
8. This module is compatible with EKS version 1.23, which is great news for users deploying the module on an EKS cluster running that version. Review the module's documentation, meet specific configuration requirements, and test thoroughly after deployment to ensure everything works as expected.
75
+
8. This module is compatible with EKS version 1.23,1.24,1.25,1.26 and 1.27, which is great news for users deploying the module on an EKS cluster running that version. Review the module's documentation, meet specific configuration requirements, and test thoroughly after deployment to ensure everything works as expected.
64
76
<!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK -->
65
77
## Requirements
66
78
@@ -108,7 +120,9 @@ No modules.
108
120
| <aname="input_create_namespace"></a> [create\_namespace](#input\_create\_namespace)| Specify whether or not to create the namespace if it does not already exist. Set it to true to create the namespace. |`string`|`true`| no |
109
121
| <aname="input_mysqldb_backup_config"></a> [mysqldb\_backup\_config](#input\_mysqldb\_backup\_config)| configuration options for MySQL database backups. It includes properties such as the S3 bucket URI, the S3 bucket region, and the cron expression for full backups. |`any`| <pre>{<br> "cron_for_full_backup": "",<br> "s3_bucket_region": "",<br> "s3_bucket_uri": ""<br>}</pre> | no |
110
122
| <aname="input_mysqldb_backup_enabled"></a> [mysqldb\_backup\_enabled](#input\_mysqldb\_backup\_enabled)| Specifies whether to enable backups for MySQL database. |`bool`|`false`| no |
111
-
| <aname="input_mysqldb_config"></a> [mysqldb\_config](#input\_mysqldb\_config)| Specify the configuration settings for MySQL, including the name, environment, storage options, replication settings, and custom YAML values. |`any`| <pre>{<br> "architecture": "",<br> "custom_user_username": "",<br> "environment": "",<br> "name": "",<br> "primary_db_volume_size": "",<br> "secondary_db_replica_count": 1,<br> "secondary_db_volume_size": "",<br> "storage_class_name": "",<br> "values_yaml": ""<br>}</pre> | no |
123
+
| <aname="input_mysqldb_config"></a> [mysqldb\_config](#input\_mysqldb\_config)| Specify the configuration settings for MySQL, including the name, environment, storage options, replication settings, and custom YAML values. |`any`| <pre>{<br> "architecture": "",<br> "custom_user_username": "",<br> "environment": "",<br> "name": "",<br> "primary_db_volume_size": "",<br> "secondary_db_replica_count": 1,<br> "secondary_db_volume_size": "",<br> "storage_class_name": "",<br> "store_password_to_secret_manager": true,<br> "values_yaml": ""<br>}</pre> | no |
124
+
| <aname="input_mysqldb_custom_credentials_config"></a> [mysqldb\_custom\_credentials\_config](#input\_mysqldb\_custom\_credentials\_config)| Specify the configuration settings for MySQL to pass custom credentials during creation |`any`| <pre>{<br> "custom_user_password": "",<br> "custom_username": "",<br> "exporter_password": "",<br> "exporter_user": "",<br> "replication_password": "",<br> "replication_user": "",<br> "root_password": "",<br> "root_user": ""<br>}</pre> | no |
125
+
| <aname="input_mysqldb_custom_credentials_enabled"></a> [mysqldb\_custom\_credentials\_enabled](#input\_mysqldb\_custom\_credentials\_enabled)| Specifies whether to enable custom for MySQL database. |`bool`|`false`| no |
112
126
| <aname="input_mysqldb_exporter_enabled"></a> [mysqldb\_exporter\_enabled](#input\_mysqldb\_exporter\_enabled)| Specify whether or not to deploy Mysql exporter to collect Mysql metrics for monitoring in Grafana. |`bool`|`false`| no |
113
127
| <aname="input_mysqldb_restore_config"></a> [mysqldb\_restore\_config](#input\_mysqldb\_restore\_config)| Configuration options for restoring dump to the MySQL database. |`any`| <pre>{<br> "s3_bucket_region": "",<br> "s3_bucket_uri": ""<br>}</pre> | no |
114
128
| <aname="input_mysqldb_restore_enabled"></a> [mysqldb\_restore\_enabled](#input\_mysqldb\_restore\_enabled)| Specifies whether to enable restoring dump to the MySQL database. |`bool`|`false`| no |
| <aname="output_mysqldb_credential"></a> [mysqldb\_credential](#output\_mysqldb\_credential)| MySQL credentials used for accessing the MySQL database. |
137
+
| <aname="output_mysqldb_endpoints"></a> [mysqldb\_endpoints](#output\_mysqldb\_endpoints)| MySQL endpoints in the Kubernetes cluster. |
Copy file name to clipboardExpand all lines: variables.tf
+31-9Lines changed: 31 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -1,19 +1,41 @@
1
1
variable"mysqldb_config" {
2
2
type=any
3
3
default={
4
-
name =""
5
-
environment =""
6
-
values_yaml =""
7
-
architecture =""
8
-
storage_class_name =""
9
-
custom_user_username =""
10
-
primary_db_volume_size =""
11
-
secondary_db_volume_size =""
12
-
secondary_db_replica_count =1
4
+
name =""
5
+
environment =""
6
+
values_yaml =""
7
+
architecture =""
8
+
storage_class_name =""
9
+
custom_user_username =""
10
+
primary_db_volume_size =""
11
+
secondary_db_volume_size =""
12
+
secondary_db_replica_count =1
13
+
store_password_to_secret_manager =true
13
14
}
14
15
description="Specify the configuration settings for MySQL, including the name, environment, storage options, replication settings, and custom YAML values."
15
16
}
16
17
18
+
variable"mysqldb_custom_credentials_enabled" {
19
+
type=bool
20
+
default=false
21
+
description="Specifies whether to enable custom credentials for MySQL database."
22
+
}
23
+
24
+
variable"mysqldb_custom_credentials_config" {
25
+
type=any
26
+
default={
27
+
root_user =""
28
+
root_password =""
29
+
custom_username =""
30
+
custom_user_password =""
31
+
replication_user =""
32
+
replication_password =""
33
+
exporter_user =""
34
+
exporter_password =""
35
+
}
36
+
description="Specify the configuration settings for MySQL to pass custom credentials during creation"
0 commit comments