资讯专栏INFORMATION COLUMN

Postgres-XL安装与配置

ysl_unh / 3197人阅读

摘要:接上篇初识写一下简称的部署与测试。如果执行报错则根据提示安装相应的库即可,如等。默认的安装目录是,和原生相同,很顺手。

接上篇《初识Postgres-XL》https://segmentfault.com/a/11...
写一下Postgres-XL(简称PGXL)的部署与测试。

第一节 安装
安装很简单,源码安装,和PG的安装基本相同,可能比PG多一个依赖库。在所有节点上执行相同操作。

./configure
make 
make install

如果执行./configure报错则根据提示安装相应的库即可,如readline-devel等。默认的安装目录是/usr/local/pgsql,和原生PG相同,很顺手。需要注意的是pgxc_ctl这个工具需要多带带编译安装,在源码包的contrib/pgxc_ctl/目录下执行make && make install即可。

第二节 配置
集群的配置可以通过两种方式完成:
第一种,手动配置:首先通过initgtm、initdb命令在相应的节点上初始化GTM、GTM Proxy(非必须)初始化Coordinator和Datanode节点,然后依次启动GTM、Coordinator和Datanode。不推介这种方式,不细说。
第二种,通过pgxc_ctl这个工具配置管理集群:使用pgxc_ctl配置集群之前需要在当前节点和集群各个节点之间做ssh免密码认证,执行pgxc_ctl的节点可以是集群内的任意一个节点也可以是集群外的节点。这个工具的原理大概是通过ssh执行各种bash命令完成集群各节点的配置与启动,非常方便,可以完全控制整个集群与各个节点。pgxc_ctl的官方操作手册在这里:http://files.postgres-xl.org/...
配置过程如下:
直接执行pgxc_ctl,进入pgxc_ctl命令行环境,第一次执行会在主目录下生成pgxc_ctl目录,其中包括配置文件与日志,首次执行pgxc_ctl会提示没找到配置文件,因为此时还没有配置文件,在pgxc_ctl命令行中执行prepare,会生成默认的配置文件pgxc_ctl.conf,此时q退出命令行,编辑生成的配置文件,再次执行pgxc_ctl时就会使用这个配置文件。
我的集群配置是这样的:三台机器,地址分别是172.17.0.2、172.17.0.4、172.17.0.5,一台跑GTM,另外两台同时跑Coordinator和Datanode节点,暂不考虑高可用配置。下面将我在pgxc_ctl.conf中的配置贴出来,省去了无关配置与注释:

#---- OVERALL -----------------------------------------------------
pgxcOwner=postgres              # owner of the Postgres-XC databaseo cluster.
pgxcUser=$pgxcOwner             # OS user of Postgres-XC owner
tmpDir=/tmp                     # temporary dir used in XC servers
localTmpDir=$tmpDir             # temporary dir used here locally
configBackup=n                  # If you want config file backup, specify y to this value.

#---- GTM Master --------------------------------------------------
gtmName=gtm
gtmMasterServer=172.17.0.2
gtmMasterPort=6666
gtmMasterDir=/pgdata/gtm
gtmExtraConfig=none                     # Will be added gtm.conf for both Master and Slave (done at initilization only)
gtmMasterSpecificExtraConfig=none       # Will be added to Master"s gtm.conf (done at initialization only)
#---- GTM Slave -----------------------------------------------
gtmSlave=n         # Specify y if you configure GTM Slave. 
#---- GTM Proxy -----------------------------------------------
gtmProxy=n  

#---- Coordinators ------------------------------------------------
#---- shortcuts ----------
coordMasterDir=/pgdata/coord
coordSlaveDir=/pgdata/coord
coordArchLogDir=/pgdata/coord/archive
#---- Overall ------------
coordNames=(c1 c2)              # Master and slave use the same name
coordPorts=(5432 5432)          # Master ports
poolerPorts=(5433 5433)         # Master pooler ports
coordPgHbaEntries=(0.0.0.0/0)   # 
#---- Master -------------
coordMasterServers=(172.17.0.4 172.17.0.5)   # none means this master is not available
coordMasterDirs=($coordMasterDir $coordMasterDir)
coordMaxWALsernder=0                         # max_wal_senders 
coordMaxWALSenders=($coordMaxWALsernder $coordMaxWALsernder)  # 
#---- Slave -------------
coordSlave=n       
#---- Configuration files---
coordExtraConfig=coordExtraConfig       # Extra configuration file for coordinators.  
cat > $coordExtraConfig <

配置文件看着挺长,其实理顺了之后发现要配置的地方其实就那么几块。
完成配置文件之后,一切就变得随心所欲,你需要做的只是执行pgxc_ctl,在其交互式环境中执行init all 即可完成所有节点的初始化可启动。之后执行monitor all 查看所有节点的状态。pgxc_ctl还能完成启停节点、增删节点等一系列操作,具体可以参考官方操作文档:http://files.postgres-xl.org/...

先到这里,有时间的话写一下我在试用PGXL过程中遇到的问题以及可用性评估等。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/38955.html

相关文章

  • 初识Postgres-XL

    摘要:所有节点中分为三种角色全局事务管理器协调器和数据节点。一旦故障,整个集群立刻无法访问,此时可以切换到节点上。 第一节 简介Postgres-XL是一款开源的PG集群软件,XL代表eXtensible Lattice,即可扩展的PG格子之意,以下简称PGXL。官方称其既适合写操作压力较大的OLTP应用,又适合读操作为主的大数据应用。它的前身是Postgres-XC(简称PGXC),...

    JasinYip 评论0 收藏0
  • PG的两种集群技术:Pgpool-IIPostgres-XL

    摘要:最近研究了的两种集群方案,分别是和,在这里总结一下二者的机制结构优劣测试结果等。其中的前身的,的前身是。为了避免单点故障,可以为所有节点配置对应的节点。测试测试结果测试结果显示,两种集群与单机的性能指标几乎一致,无法分辨高下。 最近研究了PG的两种集群方案,分别是Pgpool-II和Postgres-XL,在这里总结一下二者的机制、结构、优劣、测试结果等。 1、 Pgpool-I...

    gitmilk 评论0 收藏0
  • 通过rhel7的kvm虚拟机实现3节点Postgres-XL(包括gtm standby)

    摘要:这里只演示修改下运行停掉的服务下运行,编辑配置文件,修改连接地址以下为修改后的显示结果,是的服务,从可以看到下运行     关于postgres-xl的实验是在我自己笔记本rhel7.2_x64的环境下,用kvm实现的,总共有6台虚拟机:    一台openfiler2.99发布共享存储,一台gtm master,一台gtm slave,三台gtm_proxy/coordinator/...

    huhud 评论0 收藏0
  • 构建可扩展的PostgreSQL解决方案

    摘要:这可以通过负载平衡来实现数据分片当问题不是并发查询的数量,而是数据库的大小和单个查询的速度时,可以实现不同的方法。 showImg(https://segmentfault.com/img/remote/1460000018875091); 来源 | 愿码(ChainDesk.CN)内容编辑 愿码Slogan | 连接每个程序员的故事 网站 | http://chaindesk.cn...

    jonh_felix 评论0 收藏0

发表评论

0条评论

ysl_unh

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<