debian

Debian PostgreSQL集群搭建方法是什么

小樊
48
2025-07-18 10:15:19
栏目: 云计算

在Debian系统上搭建PostgreSQL集群通常涉及以下几个步骤:

1. 安装PostgreSQL

首先,确保你的Debian系统是最新的,然后使用APT包管理器安装PostgreSQL服务器。

sudo apt update
sudo apt install postgresql postgresql-contrib

2. 配置PostgreSQL

编辑postgresql.conf文件,设置监听地址、端口等参数。例如:

listen_addresses = '*'
port = 5432

编辑pg_hba.conf文件,配置数据库的访问权限。例如,允许本地和远程连接:

host all all 0.0.0.0/0 md5

3. 初始化主从复制

在主节点上,配置pg_hba.conf以允许从节点连接,并创建一个基于时间点的恢复点:

host replication replicator 192.168.1.0/24 md5

在从节点上,配置recovery.conf文件,指向主节点的恢复点:

standby_mode = 'on'
primary_conninfo = 'host=192.168.1.1 port=5432 user=replicator password=yourpassword'

4. 使用Patroni搭建高可用集群

Patroni是一个用于管理PostgreSQL集群的工具,它可以确保数据库的高可用性和故障转移。

安装Patroni

sudo apt install python3-pip
sudo pip3 install patroni[etcd]

配置Patroni

在每个节点上创建Patroni配置文件,例如/etc/patroni.yml

scope: postgres
namespace: /db/
name: pg1
restapi:
  listen: 0.0.0.0:8008
  connect_address: 192.168.1.1:8008
etcd:
  host: 192.168.1.2:2379
bootstrap:
  dcs:
    ttl: 30
    loop_wait: 10
    retry_timeout: 10
    maximum_lag_on_failover: 1048576
    postgresql:
      use_pg_rewind: true
      use_slots: true
      parameters:
        wal_level: replica
        max_connections: 100
        hot_standby: on
postgresql:
  listen: 0.0.0.0:5432
  connect_address: 192.168.1.1:5432
  data_dir: /var/lib/postgresql/12/main
  pg_hba:
  - host replication replicator 192.168.1.0/24 md5
  - host all all 0.0.0.0/0 md5
  authentication:
    replication:
      username: replicator
      password: yourpassword
    superuser:
      username: postgres
      password: yourpassword

启动Patroni

使用以下命令启动Patroni:

sudo patroni /etc/patroni.yml

5. 验证集群状态

使用Patroni提供的API来检查集群的状态:

curl http://192.168.1.101:8008/postgres/status/

注意事项

通过以上步骤,你应该能够在Debian系统上成功搭建一个高可用的PostgreSQL集群。

0
看了该问题的人还看了