Skip to content

Commit 66da76f

Browse files
prototyping AWS RAG Template
1 parent 535527a commit 66da76f

File tree

3 files changed

+81
-56
lines changed

3 files changed

+81
-56
lines changed

templates/kubernetes-awsrag-with-claude-code/aws-aurora/aurora-pgvector.tf

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,17 +57,31 @@ resource "aws_security_group" "gtc_awsrag_aurora_sg" {
5757
}
5858
}
5959

60+
# Parameter group to enable pgvector extension
61+
resource "aws_rds_cluster_parameter_group" "pgvector_param_group" {
62+
name = "pgvector-param-group"
63+
family = "aurora-postgresql16"
64+
description = "Parameter group for pgvector extension"
65+
66+
parameter {
67+
name = "shared_preload_libraries"
68+
value = "pg_stat_statements,pgvector"
69+
apply_method = "pending-reboot"
70+
}
71+
}
72+
6073
# First Aurora PostgreSQL Serverless v2 instance
6174
resource "aws_rds_cluster" "gtc_awsrag_aurora_postgres_1" {
6275
cluster_identifier = "gtc-awsrag-aurora-postgres-1"
6376
engine = "aurora-postgresql"
6477
engine_mode = "provisioned"
65-
engine_version = "13.9"
78+
engine_version = "16.6"
6679
database_name = "mydb1"
6780
master_username = "dbadmin"
6881
master_password = "YourStrongPasswordHere1" # Use AWS Secrets Manager in production
6982
db_subnet_group_name = aws_db_subnet_group.gtc_awsrag_aurora_subnet_group.name
7083
vpc_security_group_ids = [aws_security_group.gtc_awsrag_aurora_sg.id]
84+
db_cluster_parameter_group_name = aws_rds_cluster_parameter_group.pgvector_param_group.name
7185
skip_final_snapshot = true
7286

7387
serverlessv2_scaling_configuration {
@@ -81,11 +95,22 @@ resource "aws_rds_cluster_instance" "gtc_awsrag_aurora_primary" {
8195
cluster_identifier = aws_rds_cluster.gtc_awsrag_aurora_postgres_1.id
8296
instance_class = "db.serverless"
8397
engine = "aurora-postgresql"
84-
engine_version = "13.9"
98+
engine_version = "16.6"
8599
db_subnet_group_name = aws_db_subnet_group.gtc_awsrag_aurora_subnet_group.name
86100
identifier = "gtc-awsrag-aurora-primary"
87101
}
88102

103+
# Null resource to create pgvector extension after cluster creation
104+
resource "null_resource" "create_pgvector_extension" {
105+
depends_on = [aws_rds_cluster_instance.gtc_awsrag_aurora_primary]
106+
107+
provisioner "local-exec" {
108+
command = <<-EOT
109+
PGPASSWORD="YourStrongPasswordHere1" psql -h ${aws_rds_cluster.gtc_awsrag_aurora_postgres_1.endpoint} -U dbadmin -d mydb1 -c "CREATE EXTENSION IF NOT EXISTS vector;"
110+
EOT
111+
}
112+
}
113+
89114
# Outputs
90115
output "aurora_postgres_1_endpoint" {
91116
value = aws_rds_cluster.gtc_awsrag_aurora_postgres_1.endpoint

templates/terraform.tfstate

Lines changed: 27 additions & 27 deletions
Large diffs are not rendered by default.

templates/terraform.tfstate.backup

Lines changed: 27 additions & 27 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)