Provision a Cloud SQL PostgreSQL instance
Create a Cloud SQL PostgreSQL instance using the Google Cloud Console or gcloud.
The exact provisioning workflow largely follows Google’s documentation, but Puppet Enterprise requires several specific constraints.
| Setting | Requirement |
| PostgreSQL version | PostgreSQL 17. The Cloud SQL instance's major version must match the PostgreSQL version bundled with your PE primary. PE 2025.11 ships PostgreSQL 17; a dump taken from PostgreSQL 17 cannot be restored into an older major version. Confirm the source version on the PE primary with /opt/puppetlabs/server/bin/psql --version, and provision a Cloud SQL instance of the same major version. |
| Instance type | For all installation types, use the PE‑PostgreSQL node requirements from the extra‑large hardware requirements section. See Hardware requirements. |
| Memory | For all installation types, use the PE‑PostgreSQL node requirements from the extra‑large hardware requirements section. See Hardware requirements. |
| Storage | For all installation types, use the PE‑PostgreSQL node requirements from the extra‑large hardware requirements section. See Hardware requirements. |
| Connectivity | Public IP or private connection reachable from the PE primary. |
Provisioning a Cloud SQL instance with an older PostgreSQL major version than the PE primary causes the migration restore to fail. For example, a
POSTGRES_14 destination rejects a PostgreSQL 17 dump with errors such as option "locale_provider" not recognized and unrecognized configuration parameter "transaction_timeout", and no databases are created.For detailed provisioning instructions, see Google documentation.






