From 647daa5eb45ecb9c9bba9b4edf8cc74b78b243d5 Mon Sep 17 00:00:00 2001 From: greennode-vdb Date: Tue, 9 Jun 2026 14:03:35 +0700 Subject: [PATCH 1/2] =?UTF-8?q?[docs]=20vDB=20PostgreSQL=20=E2=80=94=20upd?= =?UTF-8?q?ate=20SUMMARY=20menu=20labels=20VI=20+=20EN?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - VI: rename menu entries to Vietnamese-style labels ("Cài đặt Extension cho PostgreSQL Standalone/Cluster", "Cấu hình tham số cho PostgreSQL Standalone/Cluster") - EN: align labels to match VI pattern ("Extensions for PostgreSQL Standalone/Cluster", "Parameters for PostgreSQL Standalone/Cluster") - Move "Tài liệu tham khảo / Reference" entry to correct position --- English/SUMMARY.md | 10 +++++----- Vietnamese/SUMMARY.md | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/English/SUMMARY.md b/English/SUMMARY.md index 7a2ccbd3..0e7e3c7b 100644 --- a/English/SUMMARY.md +++ b/English/SUMMARY.md @@ -771,15 +771,15 @@ * [Promote Read Relica to Standalone](vdb/relational-database-service-rds/working-with-rds/promote-read-relica-thanh-standalone.md) * [Configuring Replication with RDS (MySQL/MariaDB)](vdb/relational-database-service-rds/working-with-rds/cau-hinh-replication-voi-rds-mysql-mariadb.md) * [Monitoring vDB with vMonitor Platform](vdb/relational-database-service-rds/working-with-rds/giam-sat-hoat-dong-vdb-bang-vmonitor-platform.md) - * [Reference](vdb/relational-database-service-rds/reference/README.md) * [PostgreSQL Standalone](vdb/relational-database-service-rds/postgresql/postgresql-standalone/README.md) - * [PostgreSQL Standalone Parameters](vdb/relational-database-service-rds/postgresql/postgresql-standalone/config-parameters-for-standalone.md) - * [PostgreSQL Standalone Extensions](vdb/relational-database-service-rds/postgresql/postgresql-standalone/vdb-postgresql-standalone-extensions.md) + * [Parameters for PostgreSQL Standalone](vdb/relational-database-service-rds/postgresql/postgresql-standalone/config-parameters-for-standalone.md) + * [Extensions for PostgreSQL Standalone](vdb/relational-database-service-rds/postgresql/postgresql-standalone/vdb-postgresql-standalone-extensions.md) * [PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/README.md) * [Create and Manage PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/create-and-manage-postgresql-cluster.md) - * [PostgreSQL Cluster Parameters](vdb/relational-database-service-rds/postgresql/postgresql-cluster/postgresql-cluster-parameters.md) - * [PostgreSQL Cluster Extensions](vdb/relational-database-service-rds/postgresql/postgresql-cluster/vdb-postgresql-cluster-extensions.md) + * [Parameters for PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/postgresql-cluster-parameters.md) + * [Extensions for PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/vdb-postgresql-cluster-extensions.md) * [Migrate from PostgreSQL Single to PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/migrate-from-postgresql-single-to-cluster.md) + * [Reference](vdb/relational-database-service-rds/reference/README.md) * [MemoryStore Database Service (MDS)](vdb/memorystore-database-service-mds/README.md) * [Redis Standalone](vdb/memorystore-database-service-mds/redis-standalone/README.md) * [Create MDS Instance](vdb/memorystore-database-service-mds/khoi-tao-mds-instance.md) diff --git a/Vietnamese/SUMMARY.md b/Vietnamese/SUMMARY.md index 4077e3ad..531bb1c9 100644 --- a/Vietnamese/SUMMARY.md +++ b/Vietnamese/SUMMARY.md @@ -899,15 +899,15 @@ * [Promote Read Relica thành Standalone](vdb/relational-database-service-rds/working-with-rds/promote-read-relica-thanh-standalone.md) * [Cấu hình Replication với RDS (MySQL/Mariadb)](vdb/relational-database-service-rds/working-with-rds/cau-hinh-replication-voi-rds-mysql-mariadb.md) * [Giám sát hoạt động vDB bằng vMonitor Platform](vdb/relational-database-service-rds/working-with-rds/giam-sat-hoat-dong-vdb-bang-vmonitor-platform.md) - * [Tài liệu tham khảo](vdb/relational-database-service-rds/reference/README.md) * [PostgreSQL Standalone](vdb/relational-database-service-rds/postgresql/postgresql-standalone/README.md) - * [Cấu hình tham số cho Standalone](vdb/relational-database-service-rds/postgresql/postgresql-standalone/cau-hinh-tham-so-cho-standalone.md) - * [PostgreSQL Standalone Extensions](vdb/relational-database-service-rds/postgresql/postgresql-standalone/cac-extension-duoc-ho-tro-cho-standalone.md) + * [Cấu hình tham số cho PostgreSQL Standalone](vdb/relational-database-service-rds/postgresql/postgresql-standalone/cau-hinh-tham-so-cho-standalone.md) + * [Cài đặt Extension cho PostgreSQL Standalone](vdb/relational-database-service-rds/postgresql/postgresql-standalone/cac-extension-duoc-ho-tro-cho-standalone.md) * [PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/README.md) * [Khởi tạo và Quản lý PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/khoi-tao-va-quan-ly-postgresql-cluster.md) - * [Cấu hình tham số cho Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/cau-hinh-tham-so-cho-cluster.md) - * [PostgreSQL Cluster Extensions](vdb/relational-database-service-rds/postgresql/postgresql-cluster/cac-extension-duoc-ho-tro-cho-cluster.md) + * [Cấu hình tham số cho PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/cau-hinh-tham-so-cho-cluster.md) + * [Cài đặt Extension cho PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/cac-extension-duoc-ho-tro-cho-cluster.md) * [Migrate từ PostgreSQL Single sang PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/migrate-tu-postgresql-single-sang-cluster.md) + * [Tài liệu tham khảo](vdb/relational-database-service-rds/reference/README.md) * [MemoryStore Database Service (MDS)](vdb/memorystore-database-service-mds/README.md) * [Redis Standalone](vdb/memorystore-database-service-mds/redis-standalone/README.md) * [Khởi tạo MDS Instance](vdb/memorystore-database-service-mds/khoi-tao-mds-instance.md) From 41176ab04976819c3138789fa2d519056d98d8bc Mon Sep 17 00:00:00 2001 From: greennode-vdb Date: Tue, 23 Jun 2026 11:31:10 +0700 Subject: [PATCH 2/2] =?UTF-8?q?[docs]=20vDB=20PostgreSQL=20=E2=80=94=20Log?= =?UTF-8?q?ical=20Replication=20&=20CDC=20guides=20+=20Replication/WAL=20p?= =?UTF-8?q?arams=20(VI=20+=20EN)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../assets/vdb-cdc-debezium-architecture.png | Bin 0 -> 143868 bytes .../vdb-logical-replication-architecture.png | Bin 0 -> 114203 bytes English/SUMMARY.md | 2 + .../configure-logical-replication.md | 238 ++++++++++++++++++ .../postgresql-cluster-parameters.md | 28 ++- .../postgresql/set-up-cdc-with-debezium.md | 223 ++++++++++++++++ Vietnamese/SUMMARY.md | 2 + .../cau-hinh-logical-replication.md | 238 ++++++++++++++++++ .../cau-hinh-tham-so-cho-cluster.md | 28 ++- .../postgresql/thiet-lap-cdc-voi-debezium.md | 223 ++++++++++++++++ 10 files changed, 978 insertions(+), 4 deletions(-) create mode 100644 .gitbook/assets/vdb-cdc-debezium-architecture.png create mode 100644 .gitbook/assets/vdb-logical-replication-architecture.png create mode 100644 English/vdb/relational-database-service-rds/postgresql/configure-logical-replication.md create mode 100644 English/vdb/relational-database-service-rds/postgresql/set-up-cdc-with-debezium.md create mode 100644 Vietnamese/vdb/relational-database-service-rds/postgresql/cau-hinh-logical-replication.md create mode 100644 Vietnamese/vdb/relational-database-service-rds/postgresql/thiet-lap-cdc-voi-debezium.md diff --git a/.gitbook/assets/vdb-cdc-debezium-architecture.png b/.gitbook/assets/vdb-cdc-debezium-architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..3f82f788629f55e2e307e6c3fa18ba4c37d2fd31 GIT binary patch literal 143868 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%0AQm$oh18yd#ns|L&`u;wYKWe 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 GcmD@9J@5Gd literal 0 HcmV?d00001 diff --git a/.gitbook/assets/vdb-logical-replication-architecture.png b/.gitbook/assets/vdb-logical-replication-architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..3af0a5b1cd0cb15b4d3bb63d31f830bd56616683 GIT binary patch literal 114203 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 This guide helps you set up **PostgreSQL Logical Replication** — replicating data changes in real time from a source cluster (Publisher) to a destination cluster (Subscriber). One or both clusters can be hosted on GreenNode vDB. + +--- + +## Prerequisites + +- At least one of the two clusters (Publisher or Subscriber) must be a PostgreSQL Cluster on GreenNode vDB (**version 16 or 17**). +- Both clusters must run the **same major version** of PostgreSQL. +- The user running SQL commands must be the **owner** of the tables to replicate (to create a Publication). + +{% hint style="info" %} +GreenNode vDB supports Logical Replication for **PostgreSQL 16 and 17** only. +{% endhint %} + +--- + +## How Logical Replication Works + +![Logical Replication architecture](../../../../.gitbook/assets/vdb-logical-replication-architecture.png) + +- **Publisher**: the source cluster holding the original data. You create a `PUBLICATION` to define which tables are replicated. +- **Subscriber**: the destination cluster receiving changes. You create a `SUBSCRIPTION` to connect to the Publisher and pull data. + +**Synchronization happens in two phases:** + +1. **Initial sync**: As soon as you create a Subscription, PostgreSQL automatically copies all existing data from Publisher to Subscriber — you do not need to manually dump and restore data. This may take minutes to hours depending on data size. +2. **Streaming**: After the initial sync completes, only incremental changes (INSERT, UPDATE, DELETE) are replicated in real time. + +{% hint style="info" %} +You **do not need to dump data** — Logical Replication handles that automatically. However, you **must create the table structure (schema) on the Subscriber** before creating the Subscription, because PostgreSQL does not replicate DDL. See [Step B.3](#step-b3-create-tables-on-subscriber) for instructions. +{% endhint %} + +--- + +## Part A: vDB PostgreSQL Cluster as Publisher + +> Follow the steps in this section if your GreenNode vDB cluster is the **data source** (Publisher). + +### Step A.1: Request Activation + +Contact **GreenNode Support** to request Logical Replication activation on your cluster. GreenNode Support will configure the cluster and provide you with a **username** and **password** for the replication user — this information will be used in the connection string when the Subscriber creates its Subscription. + +To change the replication user password, run the following command on the cluster: + +```sql +ALTER USER PASSWORD ''; +``` + +{% hint style="warning" %} +When managing Subscriptions, do not delete or modify replication slots that do not belong to you. These slots may belong to the system or other Subscriptions — accidentally dropping one will cause replication loss immediately. +{% endhint %} + +### Step A.2: Configure PostgreSQL Parameters + +Logical Replication requires three PostgreSQL parameters to be correctly configured on the **Publisher cluster**. + +| Parameter | Required value | Description | +|---|---|---| +| `wal_level` | `logical` | Required — default is `replica`, which is not sufficient for logical replication | +| `max_replication_slots` | ≥ total slots needed | Total replication slots for all replicas, subscriptions, and CDC connectors | +| `max_wal_senders` | ≥ total senders needed | Total WAL sender processes (typically equals `max_replication_slots`) | + +**How to calculate `max_replication_slots` and `max_wal_senders`:** + +| Component | Slots + senders needed | +|---|---| +| Each replica node in the cluster | 1 + 1 | +| Each Subscription (logical replication) | 1 + 1 | +| Each CDC connector (Debezium) | 1 + 1 | + +**Example:** 3-node cluster (2 replicas) + 1 subscription → `max_replication_slots = 3`, `max_wal_senders = 3`. + +{% hint style="warning" %} +Changing `wal_level`, `max_replication_slots`, and `max_wal_senders` requires a **cluster restart**. Update all three parameters at the same time to trigger only one restart. See [PostgreSQL Cluster Parameters](postgresql-cluster-parameters.md) for instructions. +{% endhint %} + +### Step A.3: Create a Publication + +1. Connect to the **Publisher cluster** using an account with **owner** rights on the tables to replicate. +2. Create a Publication for the tables to replicate: + +```sql +-- Replicate specific tables +CREATE PUBLICATION FOR TABLE orders, products; +``` + +{% hint style="info" %} +To use `FOR ALL TABLES`, contact **GreenNode Support** — this requires superuser privileges on the cluster. +{% endhint %} + +3. Verify the Publication was created: + +```sql +SELECT pubname, puballtables, pubinsert, pubupdate, pubdelete +FROM pg_publication; +``` + +--- + +## Part B: vDB PostgreSQL Cluster as Subscriber + +> Follow the steps in this section if your GreenNode vDB cluster is the **data destination** (Subscriber). + +### Step B.1: Request Logical Replication Activation + +Contact **GreenNode Support** to request Logical Replication activation on your cluster. GreenNode Support will configure the cluster and provide you with a **username** and **password** for the replication user — this information will be used in the connection string when the Subscriber creates its Subscription. + +To change the replication user password, run the following command on the cluster: + +```sql +ALTER USER PASSWORD ''; +``` + +{% hint style="warning" %} +When managing Subscriptions, do not delete or modify replication slots that do not belong to you. These slots may belong to the system or other Subscriptions — accidentally dropping one will cause replication loss immediately. +{% endhint %} + +### Step B.2: Grant CREATE on Schema and Target Database + +Connect to the **Subscriber cluster** using the **owner** account of the target database and schema, then run the following commands: + +```sql +-- Grant CREATE on the database (required to run CREATE SUBSCRIPTION) +GRANT CREATE ON DATABASE TO ; + +-- Grant USAGE and CREATE on the schema +GRANT USAGE ON SCHEMA TO ; +GRANT CREATE ON SCHEMA TO ; +``` + +{% hint style="info" %} +`` here is the account used to run `CREATE TABLE` (Step B.3) and `CREATE SUBSCRIPTION` (Step B.4) — not the replication user in the CONNECTION string (provided by GreenNode in Step B.1). +{% endhint %} + +### Step B.3: Create Tables on Subscriber + +Logical Replication **does not create tables automatically** on the Subscriber. You must create the schema and tables on the Subscriber before creating the Subscription. + +{% hint style="info" %} +**Tip:** Instead of writing DDL by hand, use `pg_dump --schema-only` to dump the table structure from the Publisher, review the file, then apply it to the Subscriber with `psql -f`. +{% endhint %} + +```bash +# Step 1: dump schema from Publisher to a file +pg_dump \ + --schema-only \ + --table= \ + -h \ + -U \ + -d \ + -f schema.sql + +# Step 2: inspect the file before applying (optional) +# cat schema.sql + +# Step 3: apply to Subscriber +psql \ + -h \ + -U \ + -d \ + -f schema.sql +``` + +To dump multiple tables, repeat `--table` for each one. Omit `--table` to dump the entire schema. + +**Or create the table manually:** + +```sql +-- Example: create the orders table on Subscriber +CREATE TABLE orders ( + id serial PRIMARY KEY, + product text NOT NULL, + qty int NOT NULL, + ts timestamptz DEFAULT now() +); +``` + +{% hint style="warning" %} +The schema and data types of tables on the Subscriber must **exactly match** the Publisher. A mismatch will cause the Subscription to fail when applying changes. +{% endhint %} + +### Step B.4: Create a Subscription + +1. Connect to the **Subscriber cluster** using the GreenNode-provided account. +2. Create the Subscription: + +```sql +CREATE SUBSCRIPTION my_subscription + CONNECTION 'host= port=5432 dbname= user= password= sslmode=require' + PUBLICATION ; +``` + +| Parameter | Description | +|---|---| +| `host` | Publisher hostname | +| `port` | PostgreSQL connection port | +| `dbname` | Source database name on Publisher | +| `user` | Username with replication rights on Publisher | +| `password` | Password with replication rights on Publisher | +| `sslmode` | SSL encryption mode | +| `publication_name` | Publication name on Publisher | + +{% hint style="warning" %} +After creating the Subscription, PostgreSQL performs an **initial sync** — copying all existing data from the Publisher to the Subscriber. This may take minutes to hours depending on data size. +{% endhint %} + +--- + +## Verify Replication Status + +**On Publisher** — check connected Subscriptions: + +```sql +SELECT application_name, state, sent_lsn, write_lsn, flush_lsn, replay_lsn +FROM pg_stat_replication; +``` + +**On Subscriber** — check Subscription status: + +```sql +SELECT subname, pid, received_lsn, last_msg_receipt_time +FROM pg_stat_subscription; +``` + +Replication is working correctly when `state = streaming` on the Publisher and, on the Subscriber, `pid` is non-`NULL` with `received_lsn` advancing. + +--- + +## Result + +Once complete, data from the tables in your Publication on the Publisher will be continuously synchronized to the Subscriber in real time. All changes (INSERT, UPDATE, DELETE) are applied automatically. + +| I want to... | Go to | +|---|---| +| Set up CDC with Debezium | [Set Up CDC with Debezium](set-up-cdc-with-debezium.md) | +| View cluster configuration parameters | [PostgreSQL Cluster Parameters](postgresql-cluster-parameters.md) | diff --git a/English/vdb/relational-database-service-rds/postgresql/postgresql-cluster/postgresql-cluster-parameters.md b/English/vdb/relational-database-service-rds/postgresql/postgresql-cluster/postgresql-cluster-parameters.md index d2c618a3..cf0144cc 100644 --- a/English/vdb/relational-database-service-rds/postgresql/postgresql-cluster/postgresql-cluster-parameters.md +++ b/English/vdb/relational-database-service-rds/postgresql/postgresql-cluster/postgresql-cluster-parameters.md @@ -9,13 +9,28 @@ This page lists the parameters that can be customized through a **DB Configurati * All parameters in the list are modifiable. {% endhint %} +{% hint style="warning" %} +**Memory note**: Many parameters directly affect total RAM consumed by PostgreSQL. Setting values too high relative to the node's RAM can cause PostgreSQL to be **OOMKilled**. + +**Parameters that affect memory:** + +* `max_connections` — when active queries are running, memory increases due to `work_mem` allocated per sort/hash operation, multiplied by the number of concurrent connections +* `shared_buffers` — allocates shared memory at PostgreSQL start and **does not return it to the OS** for the lifetime of the process; setting it too large squeezes the OS page cache and reduces I/O efficiency +* `work_mem` — multiplied by the number of concurrent connections **and** the number of sort/hash operations per query; total actual usage can be very large when many complex queries run in parallel +* `temp_buffers` — temp table buffer per session, multiplied by `max_connections` +* `max_worker_processes` — each background worker consumes additional memory +* `max_wal_senders` — each WAL sender process requires additional memory + +Choose values appropriate for the RAM of the node flavour in use. +{% endhint %} + *** ### Connections | Parameter | Default Value | Allowed Values | Type | Unit | Description | Restart Required | | --- | --- | --- | --- | --- | --- | --- | -| `max_connections` | 100 | 14 - 65536 | integer | | Maximum number of concurrent connections to the database | **Yes** | +| `max_connections` | 100 | 25 - 2000 | integer | | Maximum number of concurrent connections to the database | **Yes** | ### Memory & Buffers @@ -80,7 +95,16 @@ This page lists the parameters that can be customized through a **DB Configurati | Parameter | Default Value | Allowed Values | Type | Unit | Description | Restart Required | | --- | --- | --- | --- | --- | --- | --- | -| `max_worker_processes` | 32 | 0 - 65536 | integer | | Maximum number of background worker processes | **Yes** | +| `max_worker_processes` | 32 | 2 - 65536 | integer | | Maximum number of background worker processes | **Yes** | + +### Replication & WAL + +| Parameter | Default Value | Allowed Values | Type | Unit | Description | Restart Required | +| --- | --- | --- | --- | --- | --- | --- | +| `wal_level` | replica | `replica` / `logical` | string | | Level of information written to WAL. Set to `logical` to use Logical Replication or CDC | **Yes** | +| `max_wal_senders` | 10 | 10 - 65536 | integer | | Maximum number of WAL sender processes, used for streaming replication and CDC | **Yes** | +| `max_wal_size` | 2048 | 32 - 2147483647 | integer | MB | Maximum WAL size before triggering a checkpoint | No | +| `checkpoint_timeout` | 300 | 30 - 86400 | integer | s | Maximum time between two automatic checkpoints | No | ### Transactions & Locking diff --git a/English/vdb/relational-database-service-rds/postgresql/set-up-cdc-with-debezium.md b/English/vdb/relational-database-service-rds/postgresql/set-up-cdc-with-debezium.md new file mode 100644 index 00000000..5ce0aecf --- /dev/null +++ b/English/vdb/relational-database-service-rds/postgresql/set-up-cdc-with-debezium.md @@ -0,0 +1,223 @@ +# Set Up CDC with Debezium + +> This guide helps you configure **Change Data Capture (CDC)** from a vDB PostgreSQL Cluster to external systems — Kafka, data pipelines, search indexes — using the **Debezium PostgreSQL Connector**. + +--- + +## Prerequisites + +- A PostgreSQL Cluster on vDB (**version 16 or 17**). +- The user creating the Publication must be the owner of the tables, or contact GreenNode Support to create a `FOR ALL TABLES` Publication. + +--- + +## What is CDC and How Does it Differ from Logical Replication? + +CDC captures all data changes (INSERT, UPDATE, DELETE) from PostgreSQL and streams them to external systems in real time. + +![CDC architecture with Debezium](../../../../.gitbook/assets/vdb-cdc-debezium-architecture.png) + +| | Logical Replication | CDC (Debezium) | +|---|---|---| +| Data destination | Another PostgreSQL Cluster | Kafka, data pipeline, etc. | +| Who creates Replication Slot? | PostgreSQL automatically | Debezium on startup | +| Slot cleanup on stop | PostgreSQL automatically | **Must clean up manually** | + +--- + +## Step 1: Request CDC Activation and Receive Credentials + +Contact **GreenNode Support** to request CDC activation on your cluster. GreenNode Support will create a dedicated user and provide you with a **username** and **password** to configure the Debezium connector. + +To change the replication user password, run the following command on the cluster: + +```sql +ALTER USER PASSWORD ''; +``` + +{% hint style="warning" %} +When managing replication slots, do not delete or modify replication slots that do not belong to you. These slots may belong to the system or other Subscriptions — accidentally dropping one may impact the system. +{% endhint %} + +--- + +## Step 2: Check and Configure PostgreSQL Parameters + +CDC requires three PostgreSQL parameters to be correctly configured on the source cluster. If not configured, Debezium will fail to connect and adding new replicas from the portal may also fail. + +| Parameter | Required value | Description | +|---|---|---| +| `wal_level` | `logical` | Required — default is `replica`, which is not sufficient for CDC | +| `max_replication_slots` | ≥ total slots needed | Total replication slots for all replicas, subscriptions, and CDC connectors | +| `max_wal_senders` | ≥ total senders needed | Total WAL sender processes (typically equals `max_replication_slots`) | + +**How to calculate `max_replication_slots` and `max_wal_senders`:** + +| Component | Slots + senders needed | +|---|---| +| Each replica node in the cluster | 1 + 1 | +| Each Subscription (logical replication) | 1 + 1 | +| Each CDC connector (Debezium) | 1 + 1 | + +**Example:** 3-node cluster (2 replicas) + 1 CDC connector → `max_replication_slots = 3`, `max_wal_senders = 3`. + +{% hint style="warning" %} +Changing `wal_level`, `max_replication_slots`, and `max_wal_senders` requires a **cluster restart**. Update all three parameters at the same time to trigger only one restart. See [PostgreSQL Cluster Parameters](postgresql-cluster-parameters.md) for instructions. +{% endhint %} + +--- + +## Step 3: Create a Publication + +A **Publication** defines the set of tables that Debezium will monitor. You must create it before configuring the connector. + +1. Connect to the PostgreSQL Cluster using an account with owner rights on the tables to capture. +2. Create a Publication for the tables to capture: + +```sql +CREATE PUBLICATION my_cdc_pub FOR TABLE public.orders, public.products; +``` + +{% hint style="info" %} +To use `FOR ALL TABLES`, contact **GreenNode Support** — this requires superuser privileges on the cluster. +{% endhint %} + +3. Verify the Publication: + +```sql +SELECT pubname, puballtables, pubinsert, pubupdate, pubdelete +FROM pg_publication; +``` + +--- + +## Step 4: Configure the Debezium Connector + +**Kafka Connect** is the framework (bundled with Kafka) for running *connectors* — processes that move data between Kafka and external systems. Connectors are loaded into Kafka Connect as JSON configuration and managed via **REST API**. + +The **Debezium PostgreSQL Connector** runs as a *source connector* inside Kafka Connect: it maintains a connection to the source cluster, watches for data changes in the database, and pushes each change as an event to the corresponding Kafka topic. + +Use the **username and password provided by GreenNode** (replication user) to configure the Debezium PostgreSQL Connector: + +```json +{ + "name": "", + "config": { + "connector.class": "io.debezium.connector.postgresql.PostgresConnector", + "database.hostname": "", + "database.port": "5432", + "database.user": "", + "database.password": "", + "database.dbname": "", + "topic.prefix": "", + "plugin.name": "pgoutput", + "publication.name": "my_cdc_pub", + "slot.name": "", + "table.include.list": "public.orders,public.products", + "snapshot.mode": "initial" + } +} +``` + +| Parameter | Description | +|---|---| +| `database.hostname` | Hostname provided by GreenNode | +| `database.port` | PostgreSQL connection port | +| `database.user` | Username provided by GreenNode | +| `database.password` | Password provided by GreenNode | +| `database.dbname` | Source database name | +| `topic.prefix` | Prefix for Kafka topic names. Each table is published to `..` — for example: prefix `pg-cdc` → topic `pg-cdc.public.orders` | +| `plugin.name` | Logical decoding plugin (built-in since PG 10, no extension needed) | +| `publication.name` | Name of the Publication created in Step 3 | +| `slot.name` | Replication slot name — use a meaningful name for easier management | +| `table.include.list` | List of tables to capture (format: `schema.table`) | +| `snapshot.mode` | Snapshot mode when the connector starts. In the example, `initial` snapshots all existing data on first startup then switches to streaming WAL. | + +See all options at [Debezium PostgreSQL Connector — Snapshot properties](https://debezium.io/documentation/reference/stable/connectors/postgresql.html#postgresql-connector-snapshot-properties). + +{% hint style="info" %} +`plugin.name: pgoutput` is built into PostgreSQL since version 10. No additional extension installation is required. +{% endhint %} + +--- + +## Step 5: Register the Connector via Kafka Connect REST API + +Register the connector with: + +```bash +curl -X POST http://:8083/connectors \ + -H "Content-Type: application/json" \ + -d @connector-config.json +``` + +Check the connector status: + +```bash +curl -s http://:8083/connectors//status +``` + +The connector is running normally when both the connector and task `state` are `RUNNING`. + +--- + +## Step 6: Monitor the Replication Slot + +{% hint style="warning" %} +Unlike Logical Replication, **Debezium does not delete the Replication Slot when it stops**. If the connector crashes or is removed without cleaning up the slot, the slot continues holding WAL indefinitely → disk full → cluster crash. +{% endhint %} + +Periodically check the Replication Slot status by connecting to the PostgreSQL Cluster and running: + +```sql +SELECT + slot_name, + active, + pg_size_pretty(pg_wal_lsn_diff(pg_current_wal_lsn(), restart_lsn)) AS wal_lag +FROM pg_replication_slots; +``` + +When you no longer need the connector, **stop or delete the connector first** (so the slot becomes inactive), **then drop the slot** — a slot that is still active cannot be dropped: + +```sql +SELECT pg_drop_replication_slot(''); +``` + +--- + +## Actions to Avoid + +{% hint style="warning" %} +The following actions may cause data loss or disrupt the CDC pipeline. +{% endhint %} + +| Action | Risk | +|---|---| +| Delete the connector without dropping the Replication Slot first | Inactive slot → WAL accumulates → disk full → cluster crash | +| Run `pg_drop_replication_slot()` on a slot that is not yours | May drop a system slot → replication lost | + +--- + +## Result + +Once complete, Debezium captures all changes from tables in your Publication and pushes them to Kafka topics in the following format: + +``` +..
+``` + +Example: `my-cdc.public.orders` + +Check messages on Kafka using `kafka-console-consumer`: + +```bash +kafka-console-consumer \ + --bootstrap-server :9092 \ + --topic my-cdc.public.orders \ + --from-beginning +``` + +| I want to... | Go to | +|---|---| +| Configure Logical Replication between two Clusters | [Configure Logical Replication](configure-logical-replication.md) | +| View cluster configuration parameters | [PostgreSQL Cluster Parameters](postgresql-cluster-parameters.md) | diff --git a/Vietnamese/SUMMARY.md b/Vietnamese/SUMMARY.md index 531bb1c9..db9bcbbe 100644 --- a/Vietnamese/SUMMARY.md +++ b/Vietnamese/SUMMARY.md @@ -907,6 +907,8 @@ * [Cấu hình tham số cho PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/cau-hinh-tham-so-cho-cluster.md) * [Cài đặt Extension cho PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/cac-extension-duoc-ho-tro-cho-cluster.md) * [Migrate từ PostgreSQL Single sang PostgreSQL Cluster](vdb/relational-database-service-rds/postgresql/postgresql-cluster/migrate-tu-postgresql-single-sang-cluster.md) + * [Cấu hình Logical Replication](vdb/relational-database-service-rds/postgresql/cau-hinh-logical-replication.md) + * [Thiết lập CDC với Debezium](vdb/relational-database-service-rds/postgresql/thiet-lap-cdc-voi-debezium.md) * [Tài liệu tham khảo](vdb/relational-database-service-rds/reference/README.md) * [MemoryStore Database Service (MDS)](vdb/memorystore-database-service-mds/README.md) * [Redis Standalone](vdb/memorystore-database-service-mds/redis-standalone/README.md) diff --git a/Vietnamese/vdb/relational-database-service-rds/postgresql/cau-hinh-logical-replication.md b/Vietnamese/vdb/relational-database-service-rds/postgresql/cau-hinh-logical-replication.md new file mode 100644 index 00000000..081b1d8d --- /dev/null +++ b/Vietnamese/vdb/relational-database-service-rds/postgresql/cau-hinh-logical-replication.md @@ -0,0 +1,238 @@ +# Cấu hình Logical Replication cho PostgreSQL Cluster + +> Hướng dẫn này giúp bạn thiết lập **PostgreSQL Logical Replication** — sao chép thay đổi dữ liệu theo thời gian thực từ cluster nguồn (Publisher) sang cluster đích (Subscriber). Một hoặc cả hai cluster có thể nằm trên GreenNode vDB. + +--- + +## Điều kiện cần (Prerequisites) + +- Ít nhất một trong hai cluster (Publisher hoặc Subscriber) phải là PostgreSQL Cluster trên GreenNode vDB (**phiên bản 16 hoặc 17**). +- Cả hai cluster phải dùng **cùng phiên bản major** PostgreSQL. +- Người dùng thực hiện các lệnh SQL phải có quyền **owner** trên các bảng cần replicate (để tạo Publication). + +{% hint style="info" %} +GreenNode vDB hỗ trợ Logical Replication cho **PostgreSQL 16 và 17**. +{% endhint %} + +--- + +## Logical Replication hoạt động như thế nào? + +![Kiến trúc Logical Replication](../../../../.gitbook/assets/vdb-logical-replication-architecture.png) + +- **Publisher**: cluster nguồn, chứa dữ liệu gốc. Bạn tạo `PUBLICATION` để chỉ định bảng nào được phép replicate. +- **Subscriber**: cluster đích, nhận và áp dụng thay đổi. Bạn tạo `SUBSCRIPTION` để kết nối đến Publisher và kéo dữ liệu về. + +**Quá trình đồng bộ gồm hai giai đoạn:** + +1. **Initial sync (đồng bộ ban đầu)**: Ngay khi bạn tạo Subscription, PostgreSQL tự động sao chép toàn bộ dữ liệu hiện có từ Publisher sang Subscriber — bạn không cần dump và restore dữ liệu thủ công. Quá trình này có thể mất vài phút đến vài giờ tuỳ theo kích thước dữ liệu. +2. **Streaming (streaming thay đổi liên tục)**: Sau khi initial sync hoàn tất, chỉ các thay đổi phát sinh mới (INSERT, UPDATE, DELETE) được đồng bộ theo thời gian thực. + +{% hint style="info" %} +Bạn **không cần dump dữ liệu** — Logical Replication tự xử lý phần đó. Tuy nhiên bạn **phải tạo sẵn cấu trúc bảng (schema)** trên Subscriber trước khi tạo Subscription, vì PostgreSQL không tự replicate DDL. Xem hướng dẫn tại [Bước B.3](#bước-b3-tạo-bảng-trên-subscriber). +{% endhint %} + +--- + +## Phần A: vDB PostgreSQL Cluster là Publisher + +> Thực hiện các bước trong phần này nếu cluster GreenNode vDB của bạn là **nguồn dữ liệu** (Publisher). + +### Bước A.1: Yêu cầu kích hoạt + +Liên hệ **GreenNode Support** để yêu cầu kích hoạt tính năng Logical Replication trên cluster của bạn. GreenNode Support sẽ cấu hình và cung cấp **username** và **password** của user replication — thông tin này sẽ được dùng trong connection string khi Subscriber tạo Subscription. + +Để đổi password của replication user, chạy lệnh sau trên cluster: + +```sql +ALTER USER PASSWORD ''; +``` + +{% hint style="warning" %} +Khi quản lý Subscription, không xóa hoặc chỉnh sửa các replication slot không thuộc sở hữu của bạn. Các slot này có thể thuộc về hệ thống — xóa nhầm có thể gây ảnh hưởng đến hệ thống. +{% endhint %} + +### Bước A.2: Cấu hình tham số PostgreSQL + +Logical Replication yêu cầu ba tham số PostgreSQL được cấu hình đúng trên **Publisher cluster**. + +| Tham số | Giá trị yêu cầu | Mô tả | +|---|---|---| +| `wal_level` | `logical` | Bắt buộc — mặc định là `replica`, không đủ để chạy logical replication | +| `max_replication_slots` | ≥ số slot cần dùng | Tổng số replication slot cho tất cả replica, subscription và CDC connector | +| `max_wal_senders` | ≥ số sender cần dùng | Tổng số WAL sender process (thường bằng `max_replication_slots`) | + +**Cách tính `max_replication_slots` và `max_wal_senders`:** + +| Thành phần | Slot + sender cần | +|---|---| +| Mỗi replica node trong cluster | 1 + 1 | +| Mỗi Subscription (logical replication) | 1 + 1 | +| Mỗi CDC connector (Debezium) | 1 + 1 | + +**Ví dụ:** cluster 3 node (2 replica) + 1 subscription → `max_replication_slots = 3`, `max_wal_senders = 3`. + +{% hint style="warning" %} +Thay đổi `wal_level`, `max_replication_slots` và `max_wal_senders` yêu cầu **khởi động lại cluster**. Nên cập nhật cả ba tham số cùng một lần để chỉ gây một lần restart. Xem hướng dẫn tại [Cấu hình tham số cho Cluster](cau-hinh-tham-so-cho-cluster.md). +{% endhint %} + +### Bước A.3: Tạo Publication + +1. Kết nối đến **Publisher cluster** bằng tài khoản có quyền **owner** trên các bảng cần replicate. +2. Tạo Publication cho các bảng cần replicate: + +```sql +-- Replicate các bảng cụ thể +CREATE PUBLICATION FOR TABLE orders, products; +``` + +{% hint style="info" %} +Nếu bạn cần tạo publication `FOR ALL TABLES`, liên hệ **GreenNode Support** để được hỗ trợ. +{% endhint %} + +3. Kiểm tra Publication đã được tạo: + +```sql +SELECT pubname, puballtables, pubinsert, pubupdate, pubdelete +FROM pg_publication; +``` + +--- + +## Phần B: vDB PostgreSQL Cluster là Subscriber + +> Thực hiện các bước trong phần này nếu cluster GreenNode vDB của bạn là **đích nhận dữ liệu** (Subscriber). + +### Bước B.1: Yêu cầu kích hoạt tính năng Logical Replication + +Liên hệ **GreenNode Support** để yêu cầu kích hoạt tính năng Logical Replication trên cluster của bạn. GreenNode Support sẽ cấu hình và cung cấp **username** và **password** của user replication — thông tin này sẽ được dùng trong connection string khi Subscriber tạo Subscription. + +Để đổi password của replication user, chạy lệnh sau trên cluster: + +```sql +ALTER USER PASSWORD ''; +``` + +{% hint style="warning" %} +Khi quản lý Subscription, không xóa hoặc chỉnh sửa các replication slot không thuộc sở hữu của bạn. Các slot này có thể thuộc về hệ thống — xóa nhầm có thể gây ảnh hưởng đến hệ thống. +{% endhint %} + +### Bước B.2: Cấp quyền CREATE trên schema và database đích + +Kết nối đến **Subscriber cluster** bằng tài khoản **owner** của schema và database đích, sau đó chạy các lệnh sau: + +```sql +-- Cấp quyền CREATE trên database (bắt buộc để chạy CREATE SUBSCRIPTION) +GRANT CREATE ON DATABASE TO ; + +-- Cấp quyền USAGE và CREATE trên schema +GRANT USAGE ON SCHEMA TO ; +GRANT CREATE ON SCHEMA TO ; +``` + +{% hint style="info" %} +`` ở đây là tài khoản dùng để chạy `CREATE TABLE` (Bước B.3) và `CREATE SUBSCRIPTION` (Bước B.4) — không phải replication user trong CONNECTION string (được GreenNode cung cấp ở Bước B.1). +{% endhint %} + +### Bước B.3: Tạo bảng trên Subscriber + +Logical Replication **không tự tạo bảng** trên Subscriber. Trước khi tạo Subscription, bạn phải tạo schema và bảng tương ứng trên Subscriber. + +{% hint style="info" %} +**Gợi ý:** Thay vì viết lại thủ công, bạn có thể dùng `pg_dump --schema-only` để dump cấu trúc bảng từ Publisher, kiểm tra file, rồi áp dụng lên Subscriber bằng `psql -f`. +{% endhint %} + +```bash +# Bước 1: dump schema từ Publisher ra file +pg_dump \ + --schema-only \ + --table= \ + -h \ + -U \ + -d \ + -f schema.sql + +# Bước 2: kiểm tra nội dung file trước khi apply + +# Bước 3: áp dụng lên Subscriber +psql \ + -h \ + -U \ + -d \ + -f schema.sql +``` + +Nếu muốn dump nhiều bảng, thêm `--table` cho từng bảng. Bỏ flag `--table` để dump toàn bộ schema. + +**Hoặc tạo bảng thủ công:** + +```sql +-- Ví dụ: tạo bảng orders trên Subscriber +CREATE TABLE orders ( + id serial PRIMARY KEY, + product text NOT NULL, + qty int NOT NULL, + ts timestamptz DEFAULT now() +); +``` + +{% hint style="warning" %} +Schema và kiểu dữ liệu của bảng trên Subscriber phải **khớp hoàn toàn** với Publisher. Nếu không khớp, Subscription có thể sẽ báo lỗi. +{% endhint %} + +### Bước B.4: Tạo Subscription + +1. Kết nối đến **Subscriber cluster** bằng tài khoản GreenNode cung cấp. + +2. Tạo Subscription: + +```sql +CREATE SUBSCRIPTION my_subscription + CONNECTION 'host= port=5432 dbname= user= password= sslmode=require' + PUBLICATION ; +``` + +| Tham số | Mô tả | +|---|---| +| `host` | Hostname của Publisher | +| `port` | Port kết nối PostgreSQL | +| `dbname` | Tên database nguồn trên Publisher | +| `user` | Username có quyền replication trên Publisher | +| `password` | Password có quyền replication trên Publisher | +| `sslmode` | Chế độ mã hóa SSL | +| `publication_name` | Tên publication trên Publisher | + +{% hint style="warning" %} +Sau khi tạo Subscription, PostgreSQL sẽ thực hiện **initial sync** — sao chép toàn bộ dữ liệu hiện có từ Publisher sang Subscriber. Quá trình này có thể mất vài phút đến vài giờ tuỳ theo kích thước dữ liệu. +{% endhint %} + +--- + +## Kiểm tra trạng thái Replication + +**Trên Publisher** — xem Subscription đang kết nối: + +```sql +SELECT application_name, state, sent_lsn, write_lsn, flush_lsn, replay_lsn +FROM pg_stat_replication; +``` + +**Trên Subscriber** — xem trạng thái Subscription: + +```sql +SELECT subname, pid, received_lsn, last_msg_receipt_time +FROM pg_stat_subscription; +``` + +Khi `state = streaming` trên Publisher, và trên Subscriber `pid` khác `NULL` cùng `received_lsn` tăng dần, replication đang hoạt động bình thường. + +--- + +## Kết quả + +Sau khi hoàn thành, dữ liệu từ các bảng trong Publication trên Publisher sẽ được tự động đồng bộ sang Subscriber theo thời gian thực. Mọi thay đổi (INSERT, UPDATE, DELETE) đều được áp dụng. + +| Tôi muốn tiếp theo... | Đi đến | +|---|---| +| Thiết lập CDC với Debezium | [Thiết lập CDC với Debezium](thiet-lap-cdc-voi-debezium.md) | +| Xem các tham số cấu hình Cluster | [Cấu hình tham số cho Cluster](cau-hinh-tham-so-cho-cluster.md) | \ No newline at end of file diff --git a/Vietnamese/vdb/relational-database-service-rds/postgresql/postgresql-cluster/cau-hinh-tham-so-cho-cluster.md b/Vietnamese/vdb/relational-database-service-rds/postgresql/postgresql-cluster/cau-hinh-tham-so-cho-cluster.md index 6c89e728..e8e202a1 100644 --- a/Vietnamese/vdb/relational-database-service-rds/postgresql/postgresql-cluster/cau-hinh-tham-so-cho-cluster.md +++ b/Vietnamese/vdb/relational-database-service-rds/postgresql/postgresql-cluster/cau-hinh-tham-so-cho-cluster.md @@ -9,13 +9,28 @@ Trang này liệt kê các parameter có thể tùy chỉnh thông qua **DB Conf * Tất cả parameter trong danh sách đều có thể chỉnh sửa (modifiable). {% endhint %} +{% hint style="warning" %} +**Lưu ý về memory**: Nhiều parameter ảnh hưởng trực tiếp đến tổng lượng RAM mà PostgreSQL tiêu thụ. Đặt giá trị quá cao so với RAM của node có thể khiến PostgreSQL bị **OOMKilled**. + +**Các parameter ảnh hưởng đến memory:** + +* `max_connections` — khi có active query, memory tăng thêm do `work_mem` cấp phát per sort/hash operation và nhân với số connection đồng thời +* `shared_buffers` — cấp phát shared memory ngay khi PostgreSQL start và **không trả lại cho OS** trong suốt vòng đời process; đặt quá lớn sẽ chèn ép OS page cache, làm giảm hiệu quả I/O +* `work_mem` — nhân với số connection đồng thời **và** số sort/hash operation per query; tổng thực tế có thể rất lớn khi nhiều query phức tạp chạy song song +* `temp_buffers` — buffer temp table per session, nhân với `max_connections` +* `max_worker_processes` — mỗi background worker tiêu thụ thêm memory +* `max_wal_senders` — mỗi WAL sender process cần thêm memory + +Hãy chọn giá trị phù hợp với RAM của flavour node đang dùng. +{% endhint %} + *** ### Connections | Parameter | Giá trị mặc định | Giá trị cho phép | Kiểu | Unit | Công dụng | Restart Required | | --- | --- | --- | --- | --- | --- | --- | -| `max_connections` | 100 | 14 - 65536 | integer | | Số lượng tối đa các connection đồng thời truy cập đến database | **Có** | +| `max_connections` | 100 | 25 - 2000 | integer | | Số lượng tối đa các connection đồng thời truy cập đến database | **Có** | ### Memory & Buffers @@ -80,7 +95,16 @@ Trang này liệt kê các parameter có thể tùy chỉnh thông qua **DB Conf | Parameter | Giá trị mặc định | Giá trị cho phép | Kiểu | Unit | Công dụng | Restart Required | | --- | --- | --- | --- | --- | --- | --- | -| `max_worker_processes` | 32 | 0 - 65536 | integer | | Số tiến trình background tối đa | **Có** | +| `max_worker_processes` | 32 | 2 - 65536 | integer | | Số tiến trình background tối đa | **Có** | + +### Replication & WAL + +| Parameter | Giá trị mặc định | Giá trị cho phép | Kiểu | Unit | Công dụng | Restart Required | +| --- | --- | --- | --- | --- | --- | --- | +| `wal_level` | replica | `replica` / `logical` | string | | Mức độ thông tin ghi vào WAL. Đặt `logical` để dùng Logical Replication hoặc CDC | **Có** | +| `max_wal_senders` | 10 | 10 - 65536 | integer | | Số lượng WAL sender process tối đa, dùng cho streaming replication và CDC | **Có** | +| `max_wal_size` | 2048 | 32 - 2147483647 | integer | MB | Kích thước WAL tối đa trước khi trigger checkpoint | Không | +| `checkpoint_timeout` | 300 | 30 - 86400 | integer | s | Khoảng thời gian tối đa giữa hai checkpoint tự động | Không | ### Transactions & Locking diff --git a/Vietnamese/vdb/relational-database-service-rds/postgresql/thiet-lap-cdc-voi-debezium.md b/Vietnamese/vdb/relational-database-service-rds/postgresql/thiet-lap-cdc-voi-debezium.md new file mode 100644 index 00000000..8856dc0b --- /dev/null +++ b/Vietnamese/vdb/relational-database-service-rds/postgresql/thiet-lap-cdc-voi-debezium.md @@ -0,0 +1,223 @@ +# Thiết lập CDC với Debezium + +> Hướng dẫn này giúp bạn cấu hình **Change Data Capture (CDC)** từ PostgreSQL Cluster vDB sang external systems — Kafka, data pipeline, search index — sử dụng **Debezium PostgreSQL Connector**. + +--- + +## Điều kiện cần (Prerequisites) + +- Đã có PostgreSQL Cluster trên vDB (**phiên bản 16 hoặc 17**). +- Người dùng thực hiện tạo Publication phải là owner của bảng hoặc liên hệ GreenNode Support để tạo `FOR ALL TABLES`. + +--- + +## CDC là gì và khác gì Logical Replication? + +CDC capture toàn bộ thay đổi dữ liệu (INSERT, UPDATE, DELETE) từ PostgreSQL và đẩy ra external systems theo thời gian thực. + +![Kiến trúc CDC với Debezium](../../../../.gitbook/assets/vdb-cdc-debezium-architecture.png) + +| | Logical Replication | CDC (Debezium) | +|---|---|---| +| Đích nhận dữ liệu | PostgreSQL khác | Kafka, data pipeline, v.v. | +| Ai tạo Replication Slot? | PostgreSQL tự động | Debezium tạo khi khởi động | +| Cleanup Slot khi dừng | PostgreSQL tự động | **Phải xóa thủ công** | + +--- + +## Bước 1: Yêu cầu kích hoạt CDC và nhận thông tin đăng nhập + +Liên hệ **GreenNode Support** để yêu cầu kích hoạt tính năng CDC trên cluster của bạn. GreenNode Support sẽ tạo user chuyên dụng và cung cấp lại cho bạn **username** và **password** để cấu hình Debezium connector. + +Để đổi password của replication user, chạy lệnh sau trên cluster: + +```sql +ALTER USER PASSWORD ''; +``` + +{% hint style="warning" %} +Trong quá trình quản lý replication slot, không xóa hoặc chỉnh sửa các replication slot không thuộc sở hữu của bạn. Các slot này có thể thuộc về hệ thống — xóa nhầm có thể gây ảnh hưởng đến hệ thống. +{% endhint %} + +--- + +## Bước 2: Kiểm tra và cấu hình tham số PostgreSQL + +CDC yêu cầu ba tham số PostgreSQL được cấu hình đúng trên cluster nguồn. Nếu chưa được cấu hình, Debezium sẽ không thể kết nối và việc thêm replica mới trên portal cũng có thể thất bại. + +| Tham số | Giá trị yêu cầu | Mô tả | +|---|---|---| +| `wal_level` | `logical` | Bắt buộc — mặc định là `replica`, không đủ để chạy CDC | +| `max_replication_slots` | ≥ số slot cần dùng | Tổng số replication slot cho tất cả replica, subscription và CDC connector | +| `max_wal_senders` | ≥ số sender cần dùng | Tổng số WAL sender process (thường bằng `max_replication_slots`) | + +**Cách tính `max_replication_slots` và `max_wal_senders`:** + +| Thành phần | Slot + sender cần | +|---|---| +| Mỗi replica node trong cluster | 1 + 1 | +| Mỗi Subscription (logical replication) | 1 + 1 | +| Mỗi CDC connector (Debezium) | 1 + 1 | + +**Ví dụ:** cluster 3 node (2 replica) + 1 CDC connector → `max_replication_slots = 3`, `max_wal_senders = 3`. + +{% hint style="warning" %} +Thay đổi `wal_level`, `max_replication_slots` và `max_wal_senders` yêu cầu **khởi động lại cluster**. Nên cập nhật cả ba tham số cùng một lần để chỉ gây một lần restart. Xem hướng dẫn tại [Cấu hình tham số cho Cluster](cau-hinh-tham-so-cho-cluster.md). +{% endhint %} + +--- + +## Bước 3: Tạo Publication + +**Publication** định nghĩa tập hợp bảng mà Debezium sẽ theo dõi. Bạn cần tạo Publication trước khi cấu hình connector. + +1. Kết nối đến PostgreSQL Cluster bằng tài khoản có quyền owner trên các bảng cần capture. +2. Tạo Publication cho các bảng cần capture: + +```sql +CREATE PUBLICATION my_cdc_pub FOR TABLE public.orders, public.products; +``` + +{% hint style="info" %} +Nếu cần `FOR ALL TABLES`, liên hệ **GreenNode Support** để được hỗ trợ — tính năng này yêu cầu quyền superuser trên cluster. +{% endhint %} + +3. Kiểm tra Publication: + +```sql +SELECT pubname, puballtables, pubinsert, pubupdate, pubdelete +FROM pg_publication; +``` + +--- + +## Bước 4: Cấu hình Debezium Connector + +**Kafka Connect** là framework (đi kèm Kafka) dùng để chạy các *connector* — tiến trình di chuyển dữ liệu giữa Kafka và hệ thống bên ngoài. Connector được nạp vào Kafka Connect dưới dạng cấu hình JSON và quản lý qua **REST API**. + +**Debezium PostgreSQL Connector** chạy như một *source connector* bên trong Kafka Connect: nó giữ kết nối tới cluster nguồn, theo dõi dữ liệu trong database và đẩy mỗi thay đổi thành event vào Kafka topic tương ứng. + +Sử dụng **username và password do GreenNode cung cấp** (user replication) để cấu hình Debezium PostgreSQL Connector: + +```json +{ + "name": "", + "config": { + "connector.class": "io.debezium.connector.postgresql.PostgresConnector", + "database.hostname": "", + "database.port": "5432", + "database.user": "", + "database.password": "", + "database.dbname": "", + "topic.prefix": "", + "plugin.name": "pgoutput", + "publication.name": "my_cdc_pub", + "slot.name": "", + "table.include.list": "public.orders,public.products", + "snapshot.mode": "initial" + } +} +``` + +| Tham số | Mô tả | +|---|---| +| `database.hostname` | Hostname do GreenNode cung cấp | +| `database.port` | Port kết nối PostgreSQL | +| `database.user` | Username do GreenNode cung cấp | +| `database.password` | Password do GreenNode cung cấp | +| `database.dbname` | Tên database nguồn | +| `topic.prefix` | Tiền tố cho tên Kafka topic. Mỗi bảng sẽ được publish vào topic `..
` — ví dụ: prefix `pg-cdc` → topic `pg-cdc.public.orders` | +| `plugin.name` | Plugin logical decoding (built-in từ PG 10, không cần cài thêm) | +| `publication.name` | Tên Publication đã tạo ở Bước 3 | +| `slot.name` | Tên replication slot — đặt tên có ý nghĩa để dễ quản lý | +| `table.include.list` | Danh sách bảng cần capture (format: `schema.table`) | +| `snapshot.mode` | Chế độ snapshot khi connector khởi động (xem bảng bên dưới). Trong ví dụ, mode `initial` dùng để snapshot toàn bộ dữ liệu hiện có khi khởi động lần đầu, sau đó chuyển sang streaming WAL | + +Xem đầy đủ các tùy chọn tại [Debezium PostgreSQL Connector — Snapshot properties](https://debezium.io/documentation/reference/stable/connectors/postgresql.html#postgresql-connector-snapshot-properties). + +{% hint style="info" %} +`plugin.name: pgoutput` là plugin tích hợp sẵn trong PostgreSQL từ phiên bản 10. Bạn không cần cài thêm extension nào. +{% endhint %} + +--- + +## Bước 5: Đăng ký connector qua Kafka Connect REST API + +Đăng ký connector bằng lệnh: + +```bash +curl -X POST http://:8083/connectors \ + -H "Content-Type: application/json" \ + -d @connector-config.json +``` + +Kiểm tra trạng thái connector: + +```bash +curl -s http://:8083/connectors//status +``` + +Connector đang hoạt động bình thường khi `state` của connector và task đều là `RUNNING`. + +--- + +## Bước 6: Monitor Replication Slot + +{% hint style="warning" %} +Khác với Logical Replication, **Debezium không tự xóa Replication Slot khi dừng**. Nếu connector crash hoặc bị xóa mà không cleanup slot, slot sẽ tiếp tục giữ WAL → disk đầy → cluster crash. +{% endhint %} + +Định kỳ kiểm tra trạng thái Replication Slot bằng cách kết nối vào PostgreSQL Cluster và chạy: + +```sql +SELECT + slot_name, + active, + pg_size_pretty(pg_wal_lsn_diff(pg_current_wal_lsn(), restart_lsn)) AS wal_lag +FROM pg_replication_slots; +``` + +Khi không còn dùng connector, **dừng hoặc xóa connector trước** (để slot chuyển sang trạng thái inactive), **sau đó mới drop slot** — không thể drop một slot đang active: + +```sql +SELECT pg_drop_replication_slot(''); +``` + +--- + +## Những điều cần lưu ý + +{% hint style="warning" %} +Các hành động dưới đây có thể gây ảnh hưởng đến hệ thống hoặc làm gián đoạn CDC pipeline. +{% endhint %} + +| Hành động | Rủi ro | +|---|---| +| Xóa connector mà không xóa Replication Slot trước | Slot inactive → WAL tích lũy → disk đầy → cluster crash | +| Chạy `pg_drop_replication_slot()` trên slot không phải của bạn | Có thể xóa slot của hệ thống → có thể gây ảnh hưởng đến hệ thống| + +--- + +## Kết quả + +Sau khi hoàn thành, Debezium sẽ capture toàn bộ thay đổi từ các bảng trong Publication và đẩy ra Kafka topic theo format: + +``` +..
+``` + +Ví dụ: `my-cdc.public.orders` + +Kiểm tra message trên Kafka bằng `kafka-console-consumer`: + +```bash +kafka-console-consumer \ + --bootstrap-server :9092 \ + --topic my-cdc.public.orders \ + --from-beginning +``` + +| Tôi muốn tiếp theo... | Đi đến | +|---|---| +| Cấu hình Logical Replication giữa hai Cluster | [Cấu hình Logical Replication](cau-hinh-logical-replication.md) | +| Xem các tham số cấu hình Cluster | [Cấu hình tham số cho Cluster](cau-hinh-tham-so-cho-cluster.md) |