5
5
# -------------------------
6
6
7
7
# SSH key for EC2 access (create in AWS Console or CLI)
8
- #ssh_key_name = "your-key-name"
9
-
10
-
11
- # AWS SETTINGS
12
- # -------------------------
8
+ # ssh_key_name = "your-key-name"
13
9
14
10
# AWS region
15
- aws_region = "us-east-1"
11
+ # aws_region = "us-east-1"
16
12
17
- # Environment
18
- #environment = "production"
13
+ # Environment name
14
+ # environment = "production"
19
15
20
- #instance_type = "t3.medium"
16
+ # EC2 instance type
17
+ # instance_type = "t3.medium"
21
18
22
19
# EBS volume size for data (GiB)
23
- #data_volume_size = 50
20
+ # data_volume_size = 50
24
21
25
22
# Storage types
26
23
# data_volume_type = "gp3" # gp3 (SSD), st1 (HDD throughput optimized, min 125 GiB), sc1 (HDD cold, min 125 GiB)
27
24
# root_volume_type = "gp3" # gp3 (SSD), gp2 (older SSD)
28
25
29
-
30
- # SECURITY
31
- # -------------------------
26
+ # Grafana admin password
27
+ # grafana_password = "YourSecurePassword123!"
32
28
33
29
# CIDR blocks for SSH access (restrict to your IP in production)
34
- #allowed_ssh_cidr = [
35
- # "0.0.0.0/0" # WARNING: Allows access from anywhere
36
- # # "203.0.113.0/24" # Replace with your office/VPN IP
37
- #]
30
+ # allowed_ssh_cidr = [
31
+ # "0.0.0.0/0" # WARNING: Allows access from anywhere
32
+ # # "203.0.113.0/24" # Replace with your office/VPN IP
33
+ # ]
38
34
39
35
# CIDR blocks for Grafana access (restrict to your IP in production)
40
- #allowed_cidr_blocks = [
41
- # "0.0.0.0/0" # WARNING: Allows access from anywhere
42
- # # "203.0.113.0/24" # Replace with your office/VPN IP
43
- #]
36
+ # allowed_cidr_blocks = [
37
+ # "0.0.0.0/0" # WARNING: Allows access from anywhere
38
+ # # "203.0.113.0/24" # Replace with your office/VPN IP
39
+ # ]
44
40
45
41
# Allocate Elastic IP for stable address
46
- #use_elastic_ip = true
47
-
48
-
49
- # POSTGRESQL MONITORING
50
- # -------------------------
51
-
52
- # PostgreSQL instances to monitor
53
- #monitoring_instances = [
54
- # {
55
- # name = "production-db"
56
- # conn_str = "postgresql://monitor:password@db.example.com:5432/postgres"
57
- # environment = "production"
58
- # cluster = "main"
59
- # node_name = "primary"
60
- # },
61
- # {
62
- # name = "production-replica"
63
- # conn_str = "postgresql://monitor:password@replica.example.com:5432/postgres"
64
- # environment = "production"
65
- # cluster = "main"
66
- # node_name = "replica-1"
67
- # }
68
- #]
42
+ # use_elastic_ip = true
69
43
70
44
71
45
# OPTIONAL PARAMETERS
72
46
# -------------------------
73
47
74
- # PostgresAI API key (for uploading reports to cloud)
48
+ # PostgreSQL instances to monitor (optional, can be empty for initial setup)
49
+ # monitoring_instances = [
50
+ # {
51
+ # name = "production-db"
52
+ # conn_str = "postgresql://monitor:password@db.example.com:5432/postgres"
53
+ # environment = "production"
54
+ # cluster = "main"
55
+ # node_name = "primary"
56
+ # },
57
+ # {
58
+ # name = "production-replica"
59
+ # conn_str = "postgresql://monitor:password@replica.example.com:5432/postgres"
60
+ # environment = "production"
61
+ # cluster = "main"
62
+ # node_name = "replica-1"
63
+ # }
64
+ # ]
65
+
66
+ # PostgresAI API key (optional, for uploading reports to cloud)
75
67
#
76
68
# How to get API key:
77
69
# 1. Register at https://console.postgres.ai
@@ -81,33 +73,27 @@ aws_region = "us-east-1"
81
73
# If not set, reports will be generated locally without upload
82
74
# postgres_ai_api_key = "your-api-key-here"
83
75
84
- # Grafana admin password (defaults to 'demo')
85
- # grafana_password = "YourSecurePassword123!"
86
-
87
- # Enable demo database (for testing)
76
+ # Enable demo database (optional, for testing)
88
77
# enable_demo_db = false
89
78
90
79
91
80
# CONFIGURATION EXAMPLES
92
81
# -------------------------
93
82
94
- # Minimal configuration (for testing):
95
- # ------------------------------------
96
- # instance_type = "t3.medium"
97
- # data_volume_size = 50
98
- # enable_demo_db = true
99
- # monitoring_instances = []
83
+ # Testing with demo database:
84
+ # ----------------------------
85
+ # Leave monitoring_instances commented out
86
+ # Set: enable_demo_db = true (optional parameter)
100
87
101
- # Production configuration:
102
- # -------------------------
103
- # instance_type = "t3.xlarge"
104
- # data_volume_size = 200
105
- # allowed_ssh_cidr = ["10.0.0.0/8"]
106
- # allowed_cidr_blocks = ["10.0.0.0/8"]
107
- # use_elastic_ip = true
108
-
109
- # Minimal configuration (dev/test):
110
- # ----------------------------------
111
- # instance_type = "t3.small" # WARNING: May be slow for production use
112
- # data_volume_size = 30
113
- # use_elastic_ip = false
88
+ # Production with multiple databases:
89
+ # ------------------------------------
90
+ # Uncomment and fill monitoring_instances with your databases
91
+ # Set: instance_type = "t3.xlarge" for better performance
92
+ # Set: data_volume_size = 200 for more storage
93
+ # Restrict: allowed_ssh_cidr and allowed_cidr_blocks to your network
94
+
95
+ # Development/staging:
96
+ # --------------------
97
+ # Set: instance_type = "t3.small" (may be slow)
98
+ # Set: data_volume_size = 30 (minimal storage)
99
+ # Set: use_elastic_ip = false (save costs)