本文主要是介绍MatrixDB 4.x 通过命令进行集群化安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
MatrixDB 4.x 通过命令进行集群化安装
一、集群规划
192.168.174.127 master
192.168.174.128 segment1
192.168.174.129 segment2
二、安装前准备
更改主机名
hostnamectl set-hostname mdw
hostnamectl set-hostname sdw01
hostnamectl set-hostname sdw02
操作系统
[root@one ~]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
查看主机配置
vim /etc/hosts
192.168.174.127 mdw
192.168.174.128 sdw01
192.168.174.129 sdw02
repo安装
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
防火墙
systemctl stop firewalld.service
systemctl status firewalld.service
systemctl disable firewalld.service
iptables -L
selinux设置
sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/g’ /etc/selinux/config
setenforce 0
内核参数配置
vim /etc/sysctl.conf
kernel.shmmax = 500000000
kernel.shmmni = 4096
kernel.shmall = 4000000000
kernel.sem = 250 512000 100 2048
kernel.sysrq = 1
kernel.core_uses_pid = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.msgmni = 2048
net.ipv4.tcp_syncookies = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.tcp_rw_recycle=1
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.conf.all.arp_filter = 1
net.ipv4.ip_local_port_range = 10000 65535
net.core.netdev_max_backlog = 10000
net.core.rmem_max = 2097152
net.core.wmem_max = 2097152
vm.overcommit_memory = 2
kernel.pid_max=1000000
使配置生效
sysctl -p
vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072
三、安装依赖
python依赖
MatrixDB 4需要Python 3.6,请使用下列命令安装并将Python 3.6设为默认版本:
yum install centos-release-scl
yum install rh-python36
scl enable rh-python36 bash
库依赖
sudo yum install -y epel-release || sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(cut -d: -f5 /etc/system-release-cpe | cut -d. -f1).noarch.rpm
sudo yum install -y https://apache.bintray.com/arrow/centos/$(cut -d: -f5 /etc/system-release-cpe | cut -d. -f1)/apache-arrow-release-latest.rpm
sudo yum install -y arrow-libs-3.0.0 parquet-libs-3.0.0
四、Matrixdb安装
yum install matrixdb-4.0.1.enterprise-1.el7.x86_64.rpm -y
创建用户
groupadd -g 531 mxadmin
useradd -u 3031 mxadmin -g mxadmin
echo 'matrixdb@2021'|passwd --stdin mxadmin
--授予sudo权限
echo 'mxadmin ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
环境变量
su - mxadmin
cat ~/.basrc
source /usr/local/matrixdb/greenplum_path.sh
export MASTER_DATA_DIRECTORY=/data/matrixdb/master/gpseg-1
export PGHOST=mdw
export PGPORT=5432
export PGUSER=mxadmin
export PGPASSWORD=yourpassword
export PGDATABASE=postgres
集群初始化配置文件
[mxadmin@mdw ~]$ mkdir gpconfigs
[mxadmin@mdw gpconfigs]$ cat all_hosts
mdw
sdw01
sdw02
[mxadmin@mdw gpconfigs]$ cat seg_host
sdw01
sdw02
交换密钥
ssh-keygen
ssh-copy-id sdw01
ssh-copy-id sdw02[mxadmin@mdw gpconfigs]$ gpssh-exkeys -f ./all_hosts
[STEP 1 of 5] create local ID and authorize on local host... /home/mxadmin/.ssh/id_rsa file exists ... key generation skipped[STEP 2 of 5] keyscan all hosts and update known_hosts file[STEP 3 of 5] retrieving credentials from remote hosts... send to sdw01... send to sdw02[STEP 4 of 5] determine common authentication file content[STEP 5 of 5] copy authentication files to all remote hosts... finished key exchange with sdw01... finished key exchange with sdw02[INFO] completed successfully
创建数据目录
gpssh -f all_hosts
=> sudo mkdir /data/matrixdb/primary -p
[ mdw]
[sdw02]
[sdw01]
=> sudo mkdir /data/matrixdb/master -p
[ mdw]
[sdw02]
[sdw01]
=> sudo mkdir /data/matrixdb/mirror -p
[ mdw]
[sdw02]
[sdw01]
=> sudo chown mxadmin.mxadmin -R /data/matrixdb
[ mdw]
[sdw02]
[sdw01]
=> exit
配置文件
vim ~/gpconfigs/initgp_config
ARRAY_NAME="MatrixDB Data Platform"
SEG_PREFIX=gpseg
PORT_BASE=40000
declare -a DATA_DIRECTORY=(/data/matrixdb/primary)
MASTER_HOSTNAME=mdw
MASTER_DIRECTORY=/data/matrixdb/master
MASTER_PORT=5432
TRUSTED_SHELL=/usr/bin/ssh
CHECK_POINT_SEGMENTS=8
ENCODING=UNICODE
MIRROR_PORT_BASE=50000
REPLICATION_PORT_BASE=41000
MIRROR_REPLICATION_PORT_BASE=51000
declare -a MIRROR_DATA_DIRECTORY=(/data/matrixdb/mirror)
MACHINE_LIST_FILE=/home/mxadmin/gpconfigs/seg_host
执行集群初始化
gpinitsystem -c initgp_config -h seg_host -a -D
修改配置
为了方便远程登陆,需要修改如下配置
cd $MASTER_DATA_DIRECTORY
vim pg_hba.conf
host all all 192.168.174.0/24 md5
五、登陆
[mxadmin@mdw gpAdminLogs]$ psql
psql (12)
Type "help" for help.postgres=# select * from gp_segment_configuration order by 1 asc;dbid | content | role | preferred_role | mode | status | port | hostname | address | datadir
------+---------+------+----------------+------+--------+-------+----------+---------+--------------------------------1 | -1 | p | p | n | u | 5432 | mdw | mdw | /data/matrixdb/master//gpseg-12 | 0 | p | p | n | u | 40000 | sdw01 | sdw01 | /data/matrixdb/primary/gpseg03 | 1 | p | p | n | u | 40000 | sdw02 | sdw02 | /data/matrixdb/primary/gpseg1
(3 rows)postgres=# select version();version ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------PostgreSQL 12 (MatrixDB 4.0.2-enterprise) (Greenplum Database 7.0.0+dev.16862.geacab77254 build commit:eacab77254fea8a76eff31a89dfda868a9217971) on x86_64-pc-linux-gnu, compiled by gcc (GCC)
7.3.1 20180303 (Red Hat 7.3.1-5), 64-bit compiled on Jun 1 2021 09:38:15
(1 row)
视频版
https://member.bilibili.com/platform/upload-manager/article
这篇关于MatrixDB 4.x 通过命令进行集群化安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!