Architecture
PostgreSQL Flex on STACKIT offers a fully managed, self-service deployment of PostgreSQL with flexible sizing, high availability, automated backups, and instance cloning. Here’s how it’s implemented:
An instance is defined by its type, computing power, memory, underlying storage and networking. You can learn more about them in Create and manage instances for PostgreSQL Flex.
Instance level
Section titled “Instance level”On the instance level, you define how many nodes your instance runs on. The type property defines whether an instance is a single instance or a replica set. A replica set consists of 3 nodes for production resilience. All three nodes are a full mirror of each other.
Node level
Section titled “Node level”On the node level, you control the sizing of every node in the instance and its storage. A node is characterized by its number of CPUs, its memory and the storage connected to it. STACKIT calls scaling on this level vertical scaling.
STACKIT calls the combination of CPU and memory flavor. Available flavor sizes are: Tiny, Small, Medium, Large, X‑Large.
Many flavor sizes are available in both compute optimized and memory optimized variants. Depending on the instance type, you may only choose from a subset of these flavors.
Independently of flavors, you can configure the storage. STACKIT classifies the storage independently in its size and its performance class. The performance class defines the IOPS and the bandwidth of the storage.
Network
Section titled “Network”Each instance has its own hostname and IPv4 adress. Per default, it only can be reached from predefined STACKIT address ranges. With the ACL paramenter, you can add custom IPv4 single addresses and ranges from which the instance can be reached.
Backup
Section titled “Backup”You manage backups at the instance level, which includes all users and databases. Because the transaction logs are activated by default, you can use them to achieve point-in-time recovery across all available snapshots.
With instance cloning, you can replicate your existing PostgreSQL Flex instance to another instance within the same project for testing, staging, or data recovery workflows. Recovery to the existing instance is not possible yet.
Monitoring and Observability
Section titled “Monitoring and Observability”Each PostgreSQL Flex instance has its own Prometheus proxy. You access this proxy via a metrics-endpoint. If you use STACKIT’s Observability solution, you can scrape PostgreSQL Flex’s telemetry (metrics, logs and traces) and thus import it into your Observability instance.
To learn more about implementing Observability, understanding and interpretating the metrics, consult Monitor PostgreSQL Flex.
Management
Section titled “Management”You manage instances with the STACKIT Portal, the STACKIT CLI, the STACKIT APIs, Terraform or Cloud Foundry:
- Provisioning new instances
- Modifying instances
- Planning and executing updates
- Monitoring performance metrics and logs
- Adjusting daily backup time
- Restoring backups