Centos7.3 安装Greenplum 6.20.4 实操版

2023年 8月 12日 59.7k 0

目录

一、前期准备

1、确定服务器

2、修改主节点hosts

3、为所有主机创建gp用户

4、修改系统内核/etc/sysctl.conf文件(所有节点)

5、 修改系统资源限制(所有节点)

6、查看防火墙和selinux,关闭selinux防火墙如果无用也关闭(获取开发指定端口)

二、Greenplum安装

1、安装greenplum(每个节点都需要安装)

方法一(推荐)

方法二

2、配置greenplum环境变量

3、配置免密登录

4、创建数据存储区域

5、校验你的硬件以及网络性能

6、创建Greenplum Database配置文件

7、初始化数据库

8、Greenplum数据库操作

1)集群操作

2)数据库登录退出

一、前期准备1、确定服务器我这里一共使用3台服务器,其中一台作为master,另外两台作为segment

IP

主机名

角色

10.170.1.1

h_xx01

master

10.170.1.2

h_xx02

segment

10.170.1.3

h_xx03

segment

注:这里的主机名为后续gp数据库之间通信的关键,所以如果你的服务器echo $HOSTNAME为空,那么需要你自己添加,方法网上有很多,这里不赘述了。

2、修改主节点hosts注:只需要修改master节点即可

vi /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

10.170.1.1 h_xx01

10.170.1.2 h_xx02

10.170.1.3 h_xx033、为所有主机创建gp用户我这里使用的用户名为gpadmin

groupadd gpadmin useradd gpadmin -r -m -g gpadmin passwd gpadmin New password: Retype new password: 4、修改系统内核/etc/sysctl.conf文件(所有节点)

vi /etc/sysctl.conf

kernel.shmall = 197951838 #控制可以使用的共享内存的总页数 kernel.shmmax = 810810728448 #定义单个共享内存段的大值,建议值为多于物理内存的一半,可取的大值为物理内存值 -1byte kernel.shmmni = 4096 #默认值4096 vm.overcommit_memory = 2 #说明在后kernel.sem = 500 2048000 200 40960kernel.sysrq = 1 #设置为1表示开启sysrp功能kernel.core_uses_pid = 1kernel.msgmnb = 65536kernel.msgmax = 65536kernel.msgmni = 2048net.ipv4.tcp_max_syn_backlog = 4096 #所能接受SYN同步包的大客户端数量net.ipv4.conf.all.arp_filter = 1net.ipv4.ip_local_port_range = 1025 65535net.core.netdev_max_backlog = 10000net.ipv4.tcp_tw_recycle = 1 #表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭

保存后执行sysctl -p,让以上修改生效

说明:

vm.overcommit_memory可选值:0,1,2。

0,:表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否 则,内存申请失败,并把错误返回给应用进程。

1:表示内核允许分配所有的物理内存,而不管当前的内存状态如何。

2: 表示内核允许分配超过所有物理内存和交换空间总和的内存

kernel.shmall参考值:

当内存为 12G 时, kernel.shmall = 3145728

当内存为 16G 时, kernel.shmall = 4194304

当内次为 32G 时, kernel.shmall = 8388608

当内存为 64G 时, kernel.shmall = 16777216

当内存为 128G 时, kernel.shmall = 33554432

kernel.sem 参数说明:

500 信号集容纳大信号数量

2048000 所有信号的大数量

200 调用单个信号集中大信号数量

40960 信号集的大值

kernel.msgmni:表示系统内大消息队列个数 kernel.msgmnb:表示单个消息队列的大容量 kernel.msgmax:表示消息队列中单个消息的大容量

net.core.netdev_max_backlog 表示当每个网络接口 接受数据包的速率比内核处理这些包的速率快时,允许发送到队列的数据包的大数目

5、 修改系统资源限制(所有节点)vi /etc/security/limits.conf

* soft nofile 524288 * hard nofile 524288 * soft nproc 131072 * hard nproc 1310726、查看防火墙和selinux,关闭selinux防火墙如果无用也关闭(获取开发指定端口)二、Greenplum安装1、安装greenplum(每个节点都需要安装)方法一(推荐)gp数据库在安装是需要以下依赖包 apr apr-util openssh openssh-clients openssh-server因此在安装数据库前使用yum方式安装依赖包yum -y install apr apr-util openssh openssh-clients openssh-server再安装数据库rpm -ivh --prefix=/greenplum/gp open-source-greenplum-db-6.20.4-rhel7-x86_64.rpm说明:--prefix=/greenplum/gp 为指定的安装路径,可自己修改方法二这种方式无需考虑依赖包的情况,但是实际安装时会发现装了很多无用的依赖包sudo yum -y install greenplum-db-6.20.4-rhel7-x86_64.rpm --installroot=/greenplum/gp说明:--installroot=/greenplum/gp 指定安装路径2、配置greenplum环境变量 注:这一步可以省略,但是在执行gp的相关命令前要source greenplum_path.sh

在这里我配置的方式比较偷懒,使用root用户直接在 /etc/profile文件末添加

vi /etc/profile 在末尾添加source /greenplum/gp/greenplum-db-6.20.4/greenplum_path.sh3、配置免密登录在master服务器上使用gpadmin用户执行source /greenplum/gp/greenplum-db-6.20.4/greenplum_path.shssh-keygen -t rsa -b 4096

-bash-4.4$ ssh-keygen -t rsa -b 4096Generating public/private rsa key pair.Enter file in which to save the key (/greenplum/.ssh/id_rsa): 回车Enter passphrase (empty for no passphrase): 回车Enter same passphrase again: 回车直接回车即可,如果输入密码还需要使用密码才可以打开key使用ssh-copy-id命令添加gpadmin用户的公共密钥到集群中其余子节点的authorized_hosts SSH文件执行命令ssh-copy-id 主机名根据提示输入yes,然后输入gpadmin设置的密码创建文件,记录所有节点主机名使用gpadmin创建免密互通主机名文件hostfile_exkeys(文件名自己随便起),该文件中记录所有记得主机名执行如下命令为gpadmin用户配置免密SSHsource /greenplum/gp/greenplum-db-6.20.4/greenplum_path.shgpssh-exkeys -f hostfile_exkeys 当你看到[INFO] completed successfully 表示完成

进行免密操作测试gpssh -f hostfile_exkeys -e 'pwd'假如安装成功,您应该可以没有密码打断的登录到所有的子节点,所有子节点都应该展示他们的路径,并且目录是gpadmin用户拥有的权限4、创建数据存储区域为主节点上创建数据存储区域,简单理解为创建一个目录用于存储主节点数据mkdir /greenplum/gp/data_master为子节点创建数据存储区域创建一个文件segfile(文件名自定义),文件中记录所有从节点服务器的主机名使用gpssh工具在所有从主机上创建主数据和镜像数据目录:source /greenplum/gp/greenplum-db-6.20.4/greenplum_path.shgpssh -f segfile -e 'mkdir -p /greenplum/gp/primary'gpssh -f segfile -e 'mkdir -p /greenplum/gp/mirror'gpssh -f segfile -e 'chown -R gpadmin:gpadmin /greenplum/gp/primary'gpssh -f segfile -e 'chown -R gpadmin:gpadmin /greenplum/gp/mirror'上面命令中的路径和目录可依据需要自己随便取,但是在gp配置文件中,使用的目录名是primary和mirror5、校验你的硬件以及网络性能Greenplum提供了一个管理工具叫做gpcheckperf,它可以被用来测试以下性能:

校验网络性能

gpcheckperf -f segfile -r N -d /tmp > subnet1.out校验磁盘I/O性能和内存带宽

gpcheckperf -f segfile -r ds -D -d /greenplum/gp/primary

gpcheckperf -f segfile -r ds -D -d /greenplum/gp/mirror这个工具可能会花费好一会来进行测试,因为它将在节点间复制大量的文件,当它结束时,你将会看见磁盘读写的总结果

====================== RESULT 2022-05-31T16:19:35.393088====================

disk write avg time (sec): 1080.70 disk write tot bytes: 540826861568 disk write tot bandwidth (MB/s): 477.46 disk write min bandwidth (MB/s): 233.77 [h_xx02] disk write max bandwidth (MB/s): 243.69 [h_xx03] -- per host bandwidth -- disk write bandwidth (MB/s): 233.77 [h_xx02] disk write bandwidth (MB/s): 243.69 [h_xx03]

disk read avg time (sec): 421.41 disk read tot bytes: 540826861568 disk read tot bandwidth (MB/s): 1223.95 disk read min bandwidth (MB/s): 608.91 [h_xx02] disk read max bandwidth (MB/s): 615.04 [h_xx03] -- per host bandwidth -- disk read bandwidth (MB/s): 608.91 [h_xx02] disk read bandwidth (MB/s): 615.04 [h_xx03]

stream tot bandwidth (MB/s): 20407.00 stream min bandwidth (MB/s): 10011.20 [h_xx02] stream max bandwidth (MB/s): 10395.80 [h_xx03] -- per host bandwidth -- stream bandwidth (MB/s): 10395.80 [h_xx02] stream bandwidth (MB/s): 10011.20 [h_xx03]

6、创建Greenplum Database配置文件在$GPHOME/docs/cli_help/gpconfigs/目录下有一个名为gpinitsystem_config的文件,这个配置文件告诉gpinitsystem 工具你想如何配置greenplum数据库复制 gpinitsystem_config 文件 For example:cp gpinitsystem_config 你的路径设置所有必须的参数以及可选参数PORT_BASE=40000declare -a DATA_DIRECTORY=(/data/primary) #可写多个,用空格分隔MASTER_HOSTNAME=masterMASTER_DIRECTORY=/data/masterMASTER_PORT=5432MIRROR_PORT_BASE=50000declare -a MIRROR_DATA_DIRECTORY=(/data/mirror) #可写多个,用空格分隔DATABASE_NAME=gpdb7、初始化数据库使用gpinitsystem命令来进行数据库的初始化gpinitsystem -c gpinitsystem_config -h segfile这个工具将会验证你的设置信息,并且确保它能够连接到每一个节点,访问你在配置文件中指定的数据目录。假如所有的预查都成功了,那么工具将会提示你确认你的配置,如下:=> Continue with Greenplum creation? Yy/Nn输入y并回车开始初始化在成功设置的后,工具将会启动你的greenplum数据库系统,你应该会看见=> Greenplum Database instance successfully created.8、Greenplum数据库操作1)集群操作停止和启动集群gpstop#停止gpstart –a #启动gpstop –ra #重启gpstate -e #查看mirror的状态gpstate -f #查看standby master的状态gpstate -s #查看整个GP群集的状态gpstate -i #查看GP的版本gpstate --help #帮助文档,可以查看gpstate更多用法2)数据库登录退出登录数据库$ psql -d gpdb -p 20001 -U gpadmin退出数据库gpdb=# \q文章知识点与官方知识档案匹配,可进一步学习相关知识本文来源:https://blog.csdn.net/m0_71142057/article/details/125052807

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论