For the complete documentation index, see llms.txt. This page is also available as Markdown.

Overview

DBaaS for PostgreSQL is fully integrated into the Data Center Designer and API (2.0.0).

You may also start it through automation tools like Terraform and Ansible.

Compatibility: DBaaS gives you access to the capabilities of the PostgreSQL database engine. This means that the code, applications, and tools you already use today with your existing databases can be used with DBaaS. IONOS CLOUD supports PostgreSQL versions 14, 15, 16, 17, and 18.

Locations: As of December 2022, DBaaS is offered in all IONOS CLOUD Locations.

Features

  • Scalable: Fully managed clusters that can be scaled on demand.

  • High availability: Multi-node clusters with automatic node failure handling.

  • Security: Communication between clients and the cluster is encrypted using TLS certificates from Let's Encrypt.

  • Upgrades: Customer-defined maintenance windows, with minimal disruption due to planned failover (approx. few seconds for multi-node clusters).

  • Backup: Base backups are carried out daily, with Point-in-Time recovery for one week.

  • Cloning: Customers also have the option to clone clusters through backups.

  • Restore: Databases can be restored in place or to a different target cluster.

  • Resources: Offered on Enterprise VM, with a dedicated CPU, storage, and RAM. Storage options are SSD or HDD, with SSD now including encryption-at-rest.

  • Network: DBaaS supports private LANs.

  • Extensions: DBaaS supports several PostgreSQL Extensions.

DBaaS services offered by IONOS CLOUD

All back-end operations required to maintain your database in optimal operational health is supported along with the follwoing actions:

  • Database installation through the DCD or the DBaaS API.

  • Pre-set database configuration and configuration management options.

  • Automation of backups for a period of 7 days.

  • Regular patches and upgrades during maintenance.

  • Disaster recovery through automated backup.

  • Service monitoring: both for the database and the underlying infrastructure.

Note: IONOS CLOUD does not allow superuser access for PostgreSQL services. However, most DBA-type actions are still available through other methods.

Customer database administration duties

Tasks related to the optimal health of the database remain the responsibility of the customer. These include:

  • Optimisation

  • Data organisation

  • Creation of indexes

  • Updating statistics

  • Consultation of access plans to optimize queries

Logs: The database stores logs on the same disk as the database. It records connections, disconnections, lock waits, Data Definiton Language (DDL) statements, any statement that runs for at least 500 ms, and any statement that causes an error. It does not provide an option to change this configuration. For more information, refer to the PostgreSQL Documentation.

To conserve disk space, log files are rotated according to size. Logs should not consume more than 175 MB of disk storage. The files are continuously monitored, and log messages are shipped to a central storage location with a 30-day retention policy. For more information, see Access Logs.

Write-Ahead Logs: PostgreSQL uses Write Ahead Logs (WAL) for continuous archiving and point-in-time recovery. These logs are created in addition to the regular logs.

Every change to the database is recorded in the WAL record. WALs are generated along with daily base backups and offer a consistent snapshot of the database as it was at that time. WALs and backups are automatically deleted after 7 days, which is the earliest point in time you can recover from. For more information, refer to the PostgreSQL Documentation.

Password encryption: Client libraries must support SCRAM-SHA-256 authentication. Make sure to use an up-to-date client library.

Connection encryption: All client connections are encrypted using TLS; the default SSL mode is prefer and clients cannot disable it.

Server certificates are issued by Let's Encrypt and the root certificate is ISRG Root X1. This needs to be made available to the client for verify-ca and verify-full to function.

Certificates are issued for the DNS name of the cluster which is assigned automatically during creation and will look similar to pg-abc123.postgresql.de-txl.ionos.com. It is available through the IONOS CLOUD API as the dnsName property of the cluster resource.

Here is how to verify the certificate using the psql command line tool:

Performance considerations

Database instances are placed in the same location as your specified LAN, so network performance should be comparable to other machines in your LAN.

Estimates: A test with pgbench (scaling factor 1000, 20 connections, duration 300 seconds, not showing detailed logs) and a single small instance (2 cores, 4 GB RAM, 20 GB HDD) resulted in around 830 transactions per second (read and write mixed) and 1100 transactions per second (read-only). For a larger instance (4 cores, 8 GB RAM, 600GB Premium SSD) the results were around 3400 (read and write) and 19000 (read-only) transactions per second. The database was initialized using pgbench -i -s 1000 -h <ip> -U <username> <dbname>. For benchmarking the command line used was pgbench -c 20 -T 300 -h <ip> -U <username> <dbname> for the read/write tests, and pgbench -c 20 -T 300 -S -h <ip> -U <username> <dbname> for the read-only tests.

Note: To cite the pgbench docs : "It is very easy to use pgbench to produce completely meaningless numbers". The numbers shown here are only ballpark figures and there are no performance guarantees. The real performance will vary depending on your workload, the IONOS CLOUD location, and several other factors.

After reviewing the overview, explore the following topics to plan and set up your PostgreSQL deployment:

  • High Availability and Scaling: How PostgreSQL ensures uptime and resilience through replication modes, multi-node clusters, and scaling options.

  • Resource Allocation: Guidance on choosing the right cluster size and resources for your workload.

  • Failover Process: How PostgreSQL handles planned and unplanned failovers, client reconnection behavior, and what to expect during node replacement.

  • Maintenance Window: How to configure scheduled maintenance periods to minimize disruption.

  • Backup and Recovery: Strategies and options for protecting your data and restoring it when needed.

  • Limitations: Known constraints and boundaries to be aware of when using DBaaS PostgreSQL.

  • Upgrade and Maintenance: How IONOS CLOUD applies patches and minor updates during maintenance windows, and what to consider when performing major PostgreSQL version upgrades.

  • Activate Extensions: How to enable supported PostgreSQL extensions in your cluster.

  • Create a PostgreSQL Cluster: Step-by-step instructions for provisioning and configuring a new PostgreSQL cluster.

Last updated

Was this helpful?