Supported versions
Flyte requires PostgreSQL 10 or later. PostgreSQL 13+ is recommended for new deployments.Connection configuration
flyte-binary
flyte-core (via inline config)
Inline stow format
For advanced connection options, use the full postgres config:SSL configuration
sslmode value | When to use |
|---|---|
disable | Local development only |
require | Encrypts traffic but does not verify the certificate |
verify-ca | Verifies the certificate is signed by a trusted CA |
verify-full | Verifies certificate and hostname (recommended for production) |
sslmode=require at minimum. To use verify-full, mount the RDS CA bundle and set:
Connection pooling
Flyte uses thegorm library with database/sql underneath. The connection pool is configurable:
transaction pooling mode significantly reduces the number of actual connections to PostgreSQL.
Schema migrations
Flyte runs database migrations automatically at startup. Migrations are idempotent and can be re-run safely. The migration binary is embedded in theflyteadmin container.
If you prefer to manage migrations manually:
RDS recommendations
Instance sizing
Instance sizing
Start with
db.t3.medium (2 vCPU, 4 GB) for development. For production clusters with >100 concurrent executions, use db.r6g.large or larger.Multi-AZ
Multi-AZ
Enable Multi-AZ deployments for production. RDS Multi-AZ provides automatic failover with ~60 second downtime.
Automated backups
Automated backups
Enable automated backups with a retention period of at least 7 days. Consider cross-region backup replication for disaster recovery.
Storage type
Storage type
Use
gp3 storage for new RDS instances. Enable storage autoscaling to avoid running out of disk space as the execution history grows.Security groups
Security groups
Restrict the RDS security group to allow inbound PostgreSQL (port 5432) only from the EKS node security group or pod CIDR.
Cloud SQL recommendations (GCP)
- Use PostgreSQL 14 or 15 on Cloud SQL
- Enable the Cloud SQL Auth Proxy as a sidecar if using private IP connectivity
- Enable automatic backups and point-in-time recovery
- Use the
cloudsql-postgresdatabase flag forlog_min_duration_statementto capture slow queries
Checking database health
Database tables reference
FlyteAdmin creates the following tables in the configured database:| Table | Content |
|---|---|
projects | Project registrations |
execution_events | Execution phase transition history |
executions | Workflow execution records |
launch_plans | Registered launch plans |
workflows | Registered workflow definitions |
tasks | Registered task definitions |
named_entities | Named entity metadata |
resources | Project/domain resource attributes |
scheduled_executions | Scheduler records |