设为首页 加入收藏

TOP

Postgres-XL集群搭建详细创建步骤(一)
2018-03-13 09:06:43 】 浏览:1080
Tags:Postgres-XL 集群 搭建 详细 创建 步骤

最近公司业务需求,需要使用Postgres-XL 集群,关于这部分知识,网络资料不多。经过一段时间的查询,和各种弯路之后,终于完成安装。将详细步骤完整记录,以备查阅。也希望能帮到需要的人。


下面就开始吧:


主机列表和集群安装的角色分配


10.21.13.109  GTM
10.21.13.67  coordinator&datanode
10.21.13.60  datanode


2.创建postgres用户,这部分我使用ansible完成的用户创建,以及相关软件包的应用,节省劳动力(yum其实可以使用ansible自带的方式,所以我ansible写的比较业余)


ansible all -m shell -a  "useradd postgres"
ansible all -m shell -a 'echo "postgres:postgres" | chpasswd'
ansible all -m shell -a "yum install -y flex bison readline-devel zlib-devel openjade docbook-style-dsssl gcc"


3. 在每个节点上下载软件,并解压缩


ansible all -m shell -a "wget https://www.postgres-xl.org/downloads/postgres-xl-9.5r1.6.tar.bz2"
ansible all -m shell -a "mv /root/postgres-xl-9.5r1.6.tar.bz2 /tmp; chown postgres:postgres /tmp/postgres-xl-9.5r1.6.tar.bz2"
ansible all -m shell -a "tar  -jxvf /tmp/postgres-xl-9.5r1.6.tar.bz2 -C /home/postgres"


4. 全部节点都创建pgxc路径,用来存放postgres文件


1 ansible all -m shell -a "su - postgres -c 'mkdir -p /home/postgres/pgxc/nodes/'"


5. 修改每个节点的.bashrc文件,注意:修改/etc/profile是不生效的。


su - postgres
vi .bashrc


添加如下内容:


export PGHOME=/home/postgres/pgxl
export PGUSER=postgres
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
export PATH=$PGHOME/bin:$PATH


使之生效:


source ~/.bashrc


6. 关闭防火墙或者放开相应的端口,这里我直接关闭了每个虚拟机的防火墙,并且重启它们:


service iptables stop
chkconfig iptables off  --重启后生效


7. 关闭SELinux:


查看SELinux状态:


/usr/sbin/sestatus -v    ##如果SELinux status参数为enabled即为开启状态
SELinux status:                enabled


临时关闭(不用重启机器):


setenforce 0      ##设置SELinux 成为permissive模式
                          ##setenforce 1 设置SELinux 成为enforcing模式


永久关闭:


修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled


8. 到每一个节点执行下面的软件安装步骤,这个过程注意,如果中间有报错,需要解决到。例如确实gcc包之类的,不然后面的编译也不会成功的。


cd postgres-xl
./configure --prefix=/home/postgres/pgxl/
make
make install
cd contrib/
make
make instal


9. 执行pgxc_ctl命令来生成配置集群的模板文件:


./pgxc_ctl              ---会提示Error说没有配置文件,忽略即可


PGXC prepare            ---执行该命令将会生成一份配置文件模板


10. 根据模板修改对应的主机名,端口等信息,内容如下:


vi ~/pgxc_ctl/pgxc_ctl.conf
pgxcInstallDir=$HOME/pgxc
pgxcOwner=$USER
pgxcUser=$pgxcOwner
tmpDir=/tmp
localTmpDir=$tmpDir
configBackup=n
configBackupHost=pgxc-linker
configBackupDir=$HOME/pgxc
configBackupFile=pgxc_ctl.bak
gtmName=gtm
gtmMasterServer=10.21.13.109
gtmMasterPort=20001
gtmMasterDir=$HOME/pgxc/nodes/gtm
gtmExtraConfig=none
gtmMasterSpecificExtraConfig=none
gtmSlave=n
gtmProxyDir=$HOME/pgxc/nodes/gtm_pxy
gtmProxy=y
gtmProxyNames=(gtm_pxy1 gtm_pxy2)
gtmProxyServers=(10.21.13.67 10.21.13.60)
gtmProxyPorts=(20001 20001)
gtmProxyDirs=($gtmProxyDir $gtmProxyDir)
gtmPxyExtraConfig=none
gtmPxySpecificExtraConfig=(none none)
coordMasterDir=$HOME/pgxc/nodes/coord
coordSlaveDir=$HOME/pgxc/nodes/coord_slave
coordArchLogDir=$HOME/pgxc/nodes/coord_archlog
coordNames=(coord1)
coordPorts=(20004)
poolerPorts=(20010)
coordPgHbaEntries=(10.21.13.0/25)  <<<<<<<<<<<<<<<<<<<<<<<<<非常重要
coordMasterServers=(10.21.13.67)
coordMas

首页 上一页 1 2 3 4 5 6 下一页 尾页 1/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇安装oracle之后遇到的各种问题总结 下一篇Redis Cluster集群部署搭建详解

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目