Skip to content

Commit

Permalink
Create connection pooler
Browse files Browse the repository at this point in the history
  • Loading branch information
BryanFauble committed Aug 20, 2024
1 parent a836505 commit 4b49407
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 8 deletions.
7 changes: 4 additions & 3 deletions deployments/stacks/dpe-k8s-deployments/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,10 @@ module "postgres-cloud-native-operator" {
}

module "postgres-cloud-native-database" {
depends_on = [module.postgres-cloud-native-operator, module.airflow, module.argo-cd]
source = "spacelift.io/sagebionetworks/postgres-cloud-native-database/aws"
version = "0.3.1"
depends_on = [module.postgres-cloud-native-operator, module.airflow, module.argo-cd]
# source = "spacelift.io/sagebionetworks/postgres-cloud-native-database/aws"
# version = "0.3.1"
source = "../../../modules/postgres-cloud-native"
auto_deploy = true
auto_prune = true
git_revision = var.git_revision
Expand Down
28 changes: 23 additions & 5 deletions modules/postgres-cloud-native/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,24 @@ spec:
- repoURL: 'https://github.com/Sage-Bionetworks-Workflows/eks-stack.git'
targetRevision: ${var.git_revision}
ref: values
- repoURL: 'https://github.com/Sage-Bionetworks-Workflows/eks-stack.git'
targetRevision: ibcdpe-1004-add-pooler
path: modules/postgres-cloud-native/resources
kustomize:
patches:
- target:
kind: Pooler
name: pg-user-secret
patch: |-
- op: replace
path: /spec/cluster/name
value: ${var.argo_deployment_name}-cluster
- op: replace
path: /spec/instances
value: 2
- op: replace
path: /metadata/name
value: ${var.argo_deployment_name}-pooler-rw
destination:
server: 'https://kubernetes.default.svc'
namespace: ${var.namespace}
Expand All @@ -54,14 +72,14 @@ resource "kubernetes_secret" "connection-secret" {

data = {
"dbname" = "application-database"
"host" = "${var.argo_deployment_name}-cluster-rw.${var.namespace}"
"jdbc-uri" = "jdbc:postgresql://${var.argo_deployment_name}-cluster-rw.${var.namespace}:5432/application-database?password=${random_password.pg-password.result}&user=application-database"
"host" = "${var.argo_deployment_name}-pooler-rw.${var.namespace}"
"jdbc-uri" = "jdbc:postgresql://${var.argo_deployment_name}-pooler-rw.${var.namespace}:5432/application-database?password=${random_password.pg-password.result}&user=application-database"
"password" = random_password.pg-password.result
"pgpass" = "${var.argo_deployment_name}-cluster-rw:5432:application-database:application-database:${random_password.pg-password.result}"
"pgpass" = "${var.argo_deployment_name}-pooler-rw:5432:application-database:application-database:${random_password.pg-password.result}"
"port" = "5432"
"uri" = "postgresql://application-database:${random_password.pg-password.result}@${var.argo_deployment_name}-cluster-rw.${var.namespace}:5432/application-database"
"uri" = "postgresql://application-database:${random_password.pg-password.result}@${var.argo_deployment_name}-pooler-rw.${var.namespace}:5432/application-database"
"user" = "application-database"
"username" = "application-database"
"connection" = "postgresql://application-database:${random_password.pg-password.result}@${var.argo_deployment_name}-cluster-rw.${var.namespace}:5432/application-database"
"connection" = "postgresql://application-database:${random_password.pg-password.result}@${var.argo_deployment_name}-pooler-rw.${var.namespace}:5432/application-database"
}
}
15 changes: 15 additions & 0 deletions modules/postgres-cloud-native/resources/pooler.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
apiVersion: postgresql.cnpg.io/v1
kind: Pooler
metadata:
name: replaced-by-kustomize
spec:
cluster:
name: replaced-by-kustomize

instances: 2
type: rw
pgbouncer:
poolMode: session
parameters:
max_client_conn: "1000"
default_pool_size: "20"

0 comments on commit 4b49407

Please sign in to comment.