Skip to content

Commit 87566fa

Browse files
Merge pull request #6277 from EnterpriseDB/release/2024-11-21a
Release: 2024-11-21a
2 parents a2d7b9e + 9b91dd5 commit 87566fa

File tree

56 files changed

+415
-186
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+415
-186
lines changed

advocacy_docs/edb-postgres-ai/cloud-service/getting_started/creating_cluster/creating_a_cluster.mdx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ redirects:
77
- /purl/upm/cluster-settings-tab/
88
- /purl/upm/read-only-connections/
99
- /purl/upm/csp-auth/
10-
- /purl/upm/csp-azure-ad-usermanagement/
11-
- /purl/upm/csp-aws-ad-usermanagement/
1210
- /purl/upm/create-a-cluster/
1311
- /purl/upm/private-endpoints-info/
1412
- /purl/upm/read-only-workloads/
@@ -173,7 +171,7 @@ The following options aren't available when creating your cluster:
173171

174172
When provisioning database storage, not all of the storage space you specify is available for holding your data. Some space is reserved for other purposes. For a full explanation of the structure of a Postgres data directory, see [Database File Layout](https://www.postgresql.org/docs/current/storage-file-layout.html). You can make more storage space available for data if you specify separate storage for write ahead logs (WAL).
175173

176-
8. In the **Network, Logs, & Telemetry** section:
174+
8. In the **Network, Logs, & Telemetry** section: <PurlAnchor urlPath="/purl/upm/private-endpoints-info" />
177175

178176
In **Connectivity Type**, specify whether to use private or public networking. Networking is set to **Public** by default. Public means that any client can connect to your cluster’s public IP address over the internet. Optionally, you can limit traffic to your public cluster by specifying an IP allowlist, which allows access only to certain blocks of IP addresses. To limit access, select **Use allowlists** and add one or more classless inter-domain routing (CIDR) blocks. CIDR is a method for allocating IP addresses and IP routing to a whole network or subnet. If you have any CIDR block entries, access is limited to those IP addresses. If none are specified, all network traffic is allowed.
179177

@@ -224,8 +222,12 @@ For more information, see [Periodic maintenance](/edb-postgres-ai/cloud-service/
224222

225223
### Connections
226224

225+
<PurlAnchor urlPath="/purl/upm/connections/" />
226+
227227
#### Read-only workloads
228228

229+
<PurlAnchor urlPath="/purl/upm/read-only-connections/" />
230+
229231
!!! Note
230232

231233
The **Read-only Workloads** option is not available on single node clusters.
@@ -259,6 +261,8 @@ Use the **PgBouncer Configuration Settings** menu to set PgBouncer-specific sett
259261

260262
#### Identity and Access Management (IAM) Authentication
261263

264+
<PurlAnchor urlPath="/purl/upm/csp-auth" />
265+
262266
Enable **Identity and Access Management (IAM) Authentication** to turn on the ability to log in to Postgres using your AWS IAM credentials. For this feature to take effect, after you create the cluster, you must add each user to a role that uses AWS IAM authentication in Postgres. For details, see [IAM authentication for Postgres](/edb-postgres-ai/cloud-service/using_cluster/postgres_access/database_authentication/#iam-authentication-for-postgres).
263267

264268
#### Superuser Access
@@ -267,6 +271,8 @@ Enable **Superuser Access** to grant superuser privileges to the edb_admin role.
267271

268272
### Security
269273

274+
<PurlAnchor urlPath="/purl/upm/tde-security/" />
275+
270276
Enable **Transparent Data Encryption (TDE)** to use your own encryption key. This option is available for EDB Postgres Advanced Server and EDB Postgres Extended Server for version 15 and later. Select an encryption key from your project and region to encrypt the cluster with TDE. To learn more about TDE support, see [Transparent Data Encryption](/edb-postgres-ai/cloud-service/security/security/#your-own-encryption-key---transparent-data-encryption-tde).
271277

272278
!!!Note "Important"

advocacy_docs/edb-postgres-ai/cloud-service/getting_started/your_cloud_account/connecting_to_your_cloud/connecting_azure.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
title: Connecting your Azure cloud
33
navTitle: Azure
44
redirects:
5+
- /purl/upm/azure-subscription/
56
- /biganimal/latest/getting_started/02_connecting_to_your_cloud/connecting_azure/ #generated for BigAnimal URL path removal branch
67
- /biganimal/latest/getting_started/02_azure_market_setup/
78
---

advocacy_docs/edb-postgres-ai/cloud-service/getting_started/your_cloud_account/connecting_to_your_cloud/index.mdx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
title: Connecting your cloud
33
description: How to connect your own cloud account to the Cloud Service
44
redirects:
5-
- /purl/upm/azure-subscription/
65
- /purl/upm/connect-your-cloud-overview/
76
- /purl/upm/connect-your-cloud/
87
- /biganimal/latest/getting_started/02_connect_cloud_account/

advocacy_docs/edb-postgres-ai/cloud-service/getting_started/your_cloud_account/managing_regions.mdx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,9 @@ You can activate a region ahead of time using the Regions page.
3636

3737
## Suspend, reactivate, or delete a region
3838

39+
<PurlAnchor urlPath="/purl/upm/reactivate-a-region" />
40+
<PurlAnchor urlPath="/purl/upm/suspend-a-region" />
41+
3942
Before you suspend or delete a region, you must delete all clusters in that region.
4043

4144
1. On the left panel, select **Regions**.

advocacy_docs/edb-postgres-ai/cloud-service/getting_started/your_cloud_account/preparing_cloud_account/index.mdx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ indexCards: simple
44
description: When using Your Cloud Account, how to ensure its readiness to work with EDB Postgres AI.
55
redirects:
66
- /purl/upm/cloud-readiness/
7-
- /purl/upm/azure-raise-resource-limits/
87
- /biganimal/latest/getting_started/01_check_resource_limits/
98
- /biganimal/latest/getting_started/preparing_cloud_account/ #generated for BigAnimal URL path removal branch
109
navigation:

advocacy_docs/edb-postgres-ai/cloud-service/getting_started/your_cloud_account/preparing_cloud_account/preparing_azure/index.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
title: "Preparing your Azure account"
33
description: Prepare your Azure account to manage databases on EDB Postgres AI Cloud Service.
44
redirects:
5+
- /purl/upm/azure-raise-resource-limits/
56
- /biganimal/latest/getting_started/01_preparing_azure/
67
- /biganimal/latest/getting_started/preparing_cloud_account/01_preparing_azure/ #generated for BigAnimal URL path removal branch
78
---

advocacy_docs/edb-postgres-ai/cloud-service/managing_your_cluster/backup_and_restore.mdx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@ To determine the replication lag, you can compare the last log sequence number (
4343

4444
## Restores
4545

46+
<PurlAnchor urlPath="/purl/upm/restore-a-cluster" />
47+
4648
If a restore is necessary—for example, in case of an accidental `DROP TABLE` statement—you can restore clusters to any point in the backup retention period.
4749

4850
Cluster restores aren't performed in place on an existing cluster. Instead, a new cluster is created and initialized with data from the backup archive. Restores must replay the transaction logs between the most recent full database backup and the target restore point. Thus restore times (that is, RTO) depend on the write activity in the source cluster.

advocacy_docs/edb-postgres-ai/cloud-service/managing_your_cluster/modifying_your_cluster/05_db_configuration_parameters.mdx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ Not all database configuration parameters are supported by Cloud Service. Some p
2323

2424
## Using formulas for parameter values
2525

26+
<PurlAnchor urlPath="/purl/upm/pg-config-formulas-info" />
27+
2628
In addition to entering specific values for parameters, for some parameters you can specify formulas to calculate a value. You can use formulas for parameters of type integer and real in ternary formulas, such as the [shared buffer example](#examples), using the following operators: `+ - / * > >= < <= == != && || ! ? : ( )`. Use `?` and `:` . Use `( )` to specify [order of operations](#order-of-operations), if needed. GUCs used in formulas must also be of type integer or real. All arithmetic is done on 64-bit floating point values rounded to an integer result if the target GUC is of type integer and not real.
2729

2830
BigAnimal has what we refer to as *psuedo GUCs* to help with creating equations. These read-only GUCs are:

advocacy_docs/edb-postgres-ai/cloud-service/managing_your_cluster/periodic_maintenance.mdx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ In some cases, these updates might terminate existing network connections to you
1818

1919
## Specifying maintenance windows
2020

21+
<PurlAnchor urlPath="/purl/upm/maintenance-window" />
22+
2123
If you want to control when the updates are pushed, you can specify a weekly maintenance window for each cluster or each data group in the case of a distributed high-availability cluster. BigAnimal displays a *scheduled maintenance* message on your cluster list four hours prior to the scheduled maintenance time to remind you of the upcoming maintenance window. This reminder allows you to make any necessary preparations, such as saving your work and closing any open connections. For more information on specifying maintenance windows, see [Maintenance](/edb-postgres-ai/cloud-service/getting_started/creating_cluster/creating_a_cluster/#maintenance).
2224

2325
## Maintenance for high-availability clusters

advocacy_docs/edb-postgres-ai/cloud-service/references/supported_cluster_types/distributed_highavailability.mdx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,8 @@ Cross-cloud service provider witness nodes are available with AWS, Azure, and Go
6363

6464
## Read-only workloads
6565

66+
<PurlAnchor urlPath="/purl/upm/pgd-read-only-workloads" />
67+
6668
When you enable the read-only workloads option during the cluster creation, a read-only connection string is created for the data group. You can use this connection to allow your application or service to route read-only requests through the shadow nodes (non-write leaders) to lighten the load on the write leaders and improve the distributed high-availability cluster's performance.
6769

6870
If you have more than one data group, you can choose whether to enable the read-only workloads option on a per-data-group basis.

advocacy_docs/edb-postgres-ai/cloud-service/references/supported_database_versions.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ We support the major Postgres versions from the date they're made available unti
2020

2121
## End-of-life policy
2222

23+
<PurlAnchor urlPath="/purl/upm/end-of-life" />
24+
2325
Cloud Service deprecates support for Postgres versions following the same timeline as PostgreSQL. PostgreSQL, EDB Postgres Advanced Server, and EDB Postgres Extended Server follow the same timelines. We recommend that you take action and upgrade your Postgres databases running on the deprecated version to a later version as soon as possible.
2426

2527
Six months before the PostgreSQL deprecation date, Cloud Service doesn't allow you to create new instances with the deprecated database version.
@@ -30,6 +32,8 @@ The only exception is customers who purchased Extended Life Support (ELS) prior
3032

3133
## Key dates
3234

35+
<PurlAnchor urlPath="/purl/upm/db-version-key-dates" />
36+
3337
While PostgreSQL officially deprecated version 11 on November 9, 2023, Cloud Service deprecated PostgreSQL 11 on November 20, 2023 in alignment with the broader EDB portfolio.
3438

3539
On November 20, 2023, Cloud Service deprecated support for PostgreSQL 11 and EDB Postgres Advanced Server 11 using the following schedule. We recommend that you take action and upgrade your Postgres databases running on major version 11 to a later version, such as PostgreSQL version 15.

advocacy_docs/edb-postgres-ai/cloud-service/using_cluster/connect_from_a_client/index.mdx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ navigation:
88
- connect_using_dbeaver
99
- connecting_from_a_client
1010
redirects:
11+
- /purl/upm/ssl-production-recommendation/
1112
- /biganimal/latest/free_trial/detail/connect_to_a_cluster/ #generated for BigAnimal URL path removal branch
1213
- /biganimal/latest/using_cluster/02_connecting_your_cluster/connecting_from_a_client/
1314
---
@@ -28,6 +29,8 @@ You can connect to your cluster using the client of your choice including:
2829

2930
## Recommended settings for SSL mode
3031

32+
<PurlAnchor urlPath="/purl/upm/ssl-production-recommendation/" />
33+
3134
Different clients can have different default TLS/SSL modes (sslmode). For example, `psql` defaults to `prefer`, which means the client attempts to establish a TLS connection but falls back to non-TLS if the server doesn't support it. In the `psql` example provided by EDB in the **Quick Connect** field, `sslmode` is explicitly set to `require`, which means the client attempts a TLS connection and fails if the connection to the server can't be encrypted.
3235

3336
For public connections and in most environments, EDB recommends setting `sslmode` to `verify-full`. This setting ensures that you connect to the server you specified and that the connection is encrypted.

advocacy_docs/edb-postgres-ai/cloud-service/using_cluster/connecting_your_cluster/index.mdx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ title: "Connecting to your cluster"
33
description: Connect to your cluster from your applications, client apps, and EDB's tools.
44
redirects:
55
- /purl/upm/connect-to-cluster/
6-
- /purl/upm/ssl-production-recommendation/
76
- /biganimal/latest/using_cluster/02_connect_to_cluster/
87
- connecting_your_cluster
98
- /biganimal/latest/using_cluster/02_connecting_your_cluster/ #generated for BigAnimal URL path removal branch

advocacy_docs/edb-postgres-ai/cloud-service/using_cluster/faraway_replicas.mdx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,8 @@ You can create faraway replicas in any active regions in your cloud. There's no
7575

7676
## Modify a replica
7777

78+
<PurlAnchor urlPath="/purl/upm/manage-faraway-replicas" />
79+
7880
1. Sign in to the [Console](https://portal.biganimal.com/).
7981

8082
2. Go to the [Clusters](https://portal.biganimal.com/clusters) page. A list of previously created clusters appears.

advocacy_docs/edb-postgres-ai/cloud-service/using_cluster/monitoring_and_logging/other_monitoring/index.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ redirects:
1313

1414
## Metrics
1515

16+
<PurlAnchor urlPath="/purl/upm/metrics-doc/" />
17+
1618
You can access metrics in a [Prometheus format](https://prometheus.io/docs/concepts/data_model/) if you request this feature from Cloud Service Support. You can retrieve the hostname and port for your clusters by using the Prometheus URL available on the **Monitoring and logging** tab on each cluster's detail page in the Console.
1719

1820
These [example metrics](example_metrics/) can help you get started.
@@ -31,6 +33,8 @@ For more information on some common monitoring services, see:
3133

3234
## Logs
3335

36+
<PurlAnchor urlPath="/purl/upm/logs-doc" />
37+
3438
You can view your logs in your cloud provider's blob storage solution if you request this feature from Cloud Service Support. You can retrieve the location of your object storage on the **Monitoring and logging** tab on your cluster's detail page in the Console.
3539

3640
The general pattern for getting logs from blob storage into the cloud provider's solution is to write a custom serverless function that watches the blob storage and uploads to the desired solution.

advocacy_docs/edb-postgres-ai/cloud-service/using_cluster/postgres_access/database_authentication.mdx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ description: Setting up the database authentication for the Postgres clusters.
44
redirects:
55
- /purl/upm/csp-auth-use/
66
- /purl/upm/iam-auth-postgres/
7+
- /purl/upm/csp-aws-ad-usermanagement/
8+
- /purl/upm/csp-azure-ad-usermanagement/
79
- /biganimal/latest/using_cluster/01_postgres_access/ #generated for BigAnimal URL path removal branch
810
---
911

@@ -75,6 +77,10 @@ If you use a single database to host multiple schemas, create a database owner a
7577

7678
## IAM authentication for Postgres
7779

80+
<PurlAnchor urlPath="/purl/upm/iam-auth-postgres/" />
81+
<PurlAnchor urlPath="/purl/upm/csp-aws-ad-usermanagement" />
82+
<PurlAnchor urlPath="/purl/upm/csp-azure-ad-usermanagement" />
83+
7884
Any user with a supported cloud account connected to a BigAnimal subscription who has the Postgres IAM role iam_aws, iam_azure, or iam_gcp can authenticate to the database using their IAM credentials.
7985

8086
### Configuring IAM for Postgres

advocacy_docs/edb-postgres-ai/console/using/organizations/identity_provider/index.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,8 @@ Step-by-step instructions for setting up specific identity providers are availab
9292

9393
### Add a domain
9494

95+
<PurlAnchor urlPath="/purl/upm/domain-doc/" />
96+
9597
You need a verified domain so your users can have a streamlined login experience with their email address.
9698

9799
1. On the **Domains** tab, enter the domain name and select **Next: Verify Domain**.
@@ -160,6 +162,8 @@ You add users through your identity provider. A user who you add in the identity
160162

161163
### Add a tile
162164

165+
<PurlAnchor urlPath="/purl/upm/idp-tiles/" />
166+
163167
Once you establish the identity provider, you can create a EDB Postgres AI tile for users to access the organization's EDB Postgres AI application. To do so, copy the quick sign-in URL from the **Settings > Identity Provider** page of the EDB Postgres AI portal. For details on how to add a tile, refer to your identify provider documentation for instructions on setting up SSO access to your application.
164168

165169
## Next steps

advocacy_docs/edb-postgres-ai/console/using/projects/index.mdx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ navigation:
1616
- settings
1717
- migrate
1818
redirects:
19-
- /purl/upm/project-manage/
2019
- /biganimal/latest/administering_cluster/projects/
2120
---
2221

advocacy_docs/edb-postgres-ai/console/using/projects/users.mdx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ title: Managing project users
33
navTitle: Users
44
description: Add users to projects and assign roles to control access to projects
55
deepToC: true
6+
redirects:
7+
- /purl/upm/project-manage/
68
---
79

810
The **Users** page displays all the users in the organisation in a table. Each users full name, email, project roles, identity provider, and on the right hand side, a pen icon. Selecting the pen icon on a user allows you to assign or remove roles from that user.

gatsby-node.js

Lines changed: 48 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -635,6 +635,26 @@ exports.onPostBuild = async ({ graphql, reporter, pathPrefix }) => {
635635
//
636636
// additional headers
637637
//
638+
await addHeaders(graphql, reporter, pathPrefix);
639+
640+
//
641+
// redirects cleanup
642+
//
643+
await rewriteRedirects(pathPrefix, reporter);
644+
};
645+
646+
/**
647+
* Adds content type headers for raw files
648+
* @param {function} graphql
649+
* @param {GatsbyReporter} reporter
650+
* @param {string} pathPrefix
651+
*/
652+
async function addHeaders(graphql, reporter, pathPrefix) {
653+
const contentHeaderTimer = reporter.activityTimer(
654+
"adding content type headers",
655+
);
656+
contentHeaderTimer.start();
657+
638658
const publicFileData = await graphql(`
639659
query {
640660
allPublicFile {
@@ -699,17 +719,38 @@ exports.onPostBuild = async ({ graphql, reporter, pathPrefix }) => {
699719
"public/_headers",
700720
(await readFile("public/_headers")) + "\n" + newHeaders.join("\n"),
701721
);
722+
contentHeaderTimer.end();
723+
}
724+
725+
/**
726+
* Rewrites generated headers:
727+
* - fix up unnecessary path prefix for legacy redirects
728+
* - add hash for perma-URLs
729+
* @param {string} pathPrefix
730+
* @param {GatsbyReporter} reporter
731+
*/
732+
async function rewriteRedirects(pathPrefix, reporter) {
733+
const redirectTimer = reporter.activityTimer("rewriting redirects");
734+
redirectTimer.start();
702735

703-
//
704-
// redirects cleanup
705-
//
706736
const originalRedirects = await readFile("public/_redirects");
707737

708738
// rewrite legacy redirects to exclude the /docs prefix
739+
// rewrite perma-URL redirects to include hash
709740
const prefixRE = new RegExp(`^${pathPrefix}/edb-docs/`);
741+
const purlRE = new RegExp(
742+
`^/docs/purl/(?<product>[^/]+)/(?<component>[^/]+)/?\\s+(?<destination>\\S+)\\s+\\d+`,
743+
);
710744
let rewrittenRedirects = originalRedirects
711745
.split("\n")
712746
.map((line) => line.replace(prefixRE, "/edb-docs/"))
747+
.map((line) =>
748+
line.replace(
749+
purlRE,
750+
pathPrefix +
751+
"/purl/$<product>/$<component>/ $<destination>#$<product>_$<component> 302",
752+
),
753+
)
713754
.join("\n");
714755

715756
if (rewrittenRedirects.length === originalRedirects.length) {
@@ -764,17 +805,18 @@ exports.onPostBuild = async ({ graphql, reporter, pathPrefix }) => {
764805
# Netlify pathPrefix path rewrite
765806
${pathPrefix}/* /:splat 200`,
766807
);
767-
};
808+
redirectTimer.end();
809+
}
768810

769811
/**
770812
* Strip compilation hashes from generated HTML
771813
* this speeds up Netlify deploys, as (otherwise unchanged) files don't change every build
772814
* there probably should be a faster / more elegant way to do this, possibly by overriding one of the
773815
* default webpack configs... But I've had no luck doing so up to now.
774-
* @param {*} reporter Gatsby reporter
816+
* @param {GatsbyReporter} reporter Gatsby reporter
775817
*/
776818
async function removeCompilationHashes(reporter) {
777-
const hashTimer = reporter.createProgress("Removing compilation hashes");
819+
const hashTimer = reporter.createProgress("removing compilation hashes");
778820
hashTimer.start();
779821

780822
const { globby } = await import("globby");

0 commit comments

Comments
 (0)