陈老师:1415968548 郑老师:2735197625 乐老师:354331153
客服热线:
19941464235/19906632509(微信同号)

客服微信

【PostgreSQL】PGXC集群安装

作者:云贝教育-刘峰
原创
发布时间:2024-04-09 12:01
浏览量:746

本文为云贝教育 刘峰 原创,请尊重知识产权,转发请注明出处,不接受任何抄袭、演绎和未经注明出处的转载。

前言

环境说明

· 操作系统版本:CentOS Linux release 7.6.1810 (Core)

· pgxc版本:postgres-x2

· 安装用户:postgres

· 介质上传目录:/home/postgres/soft

安装规划

主机名

IP地址

角色

端口

Nodename

数据目录

db1

192.168.2.103

GTM

6666

gtm1

/home/postgres/gtm

db2

192.168.2.104

GTM备节点

6677

gtm2

/home/postgres/gtm_standby

db1

192.168.2.104

Coordinator

6667

cn1

/home/postgres/coordinator

Datanode

6668

dn1

/home/postgres/pgdata

Gtm Proxy

6669

gtmproxy1

/home/postgres/gtm_proxy

db2

192.168.2.103

Coordinator

6667

cn2

/home/postgres/coordinator

Datanode

6668

dn2

/home/postgres/pgdata

Gtm Proxy

6669

gtmproxy2

/home/postgres/gtm_proxy

测试环境上可以用两个节点来配置,生产环境建议主备节点不要放在同一个节点上。

集群介绍

什么是 Postgres-X2

· 不共享任何集群:多个协作的类似 PostgreSQL 的服务器,不共享资源,通过添加商用硬件进行扩展

· 编写可扩展的 PostgreSQL 集群:与纯 PostgreSQL (DBT-1) 相比,五台服务器的可扩展性性能加速超过 3 倍。截至 1.0 版本的结果。

· 同步多主机配置:任何主机的任何更新都可以立即从其他主机看到。

· 表位置透明:可以继续使用相同的应用程序。交易处理没有变化。

· 基于 PostgreSQL:与 PostgreSQL 相同的应用程序 API

组件介绍


GTTM

gtm 代表全局事务管理器,它提供以集成方式运行所有 Postgres-XC 组件所需的核心事务管理功能。协调器和数据节点连接到 GTM 以在不同的服务器上一致地运行事务。

gtm_proxy

这是协调器/数据节点到 GTM 的连接代理,以减少交互和数据量。

coordinator协调器

这是 Postgres-XC 应用程序的连接点。协调器接受来自应用程序的 SQL 语句,分析并确定数据的存储位置,并处理每个数据节点的 SQL 语句。您可以在 Postgres-XC 中配置任意多个协调器。

datanode数据节点

该节点存储用户数据,Datanode从协调器读取其本地SQL 语句并处理它们。

一、下载安装包

目前安装包已上传git开源,下载地址


上传到所有节点,建议目录为/home/postgres/soft

二、安装依赖包


三、安装

3.1 解压安装包(两个节点都执行)


3.2 编绎安装(两个节点都执行)

1configure


2) make


3) make install

安装前用root配置目录


执行安装


四、环境配置

4.1 主机配置/etc/hosts


4.2 配置环境变量

配置/home/postgres/.bash_profile


五、初始化集群

5.1 初始化gtm

1) db1上执行


gtm初始化之后,参数文件是默认的,需要调整/home/postgres/gtm/gtm.conf


2) db2上执行


gtm初始化之后,参数文件是默认的,需要调整/home/postgres/gtm/gtm.conf


5.2 初始化cn和dn

1) db1上执行

初始化


修改cn1的参数


修改dn1的参数

2) db2上执行


修改cn2的参数


修改dn2的参数


3) 针对pg_hbacndn统一配置

5.3 启动集群

启动顺序:


  1. gtm
  2. dn
  3. cn


1)启动gtm

db1启动主gtm


主节点日志/home/postgres/gtm/gtm.log


db2启动备gtm


备节点日志/home/postgres/gtm/gtm.log


2)启动dn

db1启动dn1


db1日志

cat datanode1-2023-12-21.log


db2启动db2


db2日志

cat datanode2-2023-12-21.log


3)启动cn

db1启动cn1


查看cn1日志

cat coordinator1-2023-12-21.log


db2启动cn2


查看cn1日志

cat coordinator2-2023-12-21.log


六、配置集群

6.1 在cn1上注册节点


配置完成,加载配置信息


6.2 在cn2上注册节点


七、验证集群功能

7.1 验证建库建表

1)在cn1上创建数据库,切换到指定数据库,在指定数据库上创建表


2)在cn2上查看


7.2 验证表数据分布

1)登录dn1,查看表数据


2)登录dn2,查看表数据


3)也可以直接在CN上查询



想了解更多PG相关的学习资料(技术文章和视频),可以微信公众号或B站搜索《云贝教育》,免费获取。
想了解更多PG相关的学习资料(技术文章和视频),可以微信公众号或B站搜索《云贝教育》,免费获取。
想了解更多PG相关的学习资料(技术文章和视频),可以微信公众号或B站搜索《云贝教育》,免费获取。