Greenplum 三节点安装教程(非root用户)

简介: Greenplum 三节点安装教程(非root用户)

Greenplum 三节点安装教程(非root用户)

  1. 环境准备
    安装vmware,装三台centos

虚拟机设置:
主机名 IP 内存 硬盘
node1 Xxx1 2G 80G
node2 Xxx2 2G 80G
node3 Xxx3 2G 80G

  1. CSDN下载greenplum安装文件: greenplum-db-4.3.8.2-build-1-RHEL5-x86_64
  2. 安装
    首先关闭防火墙:service iptables stop 关闭

                    Chkconfig iptables off 关闭开机启动

    三机器修改hosts

Xxx1 node1
Xxx2 node2
Xxx3 node3

修改或添加/etc/sysctl.conf(三台机器)
xfs_mount_options = rw,noatime,inode64,allocsize=16m
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.ip_forward = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.conf.all.arp_filter = 1
net.ipv4.ip_local_port_range = 1025 65535
net.core.netdev_max_backlog = 10000
vm.overcommit_memory = 2

配置/etc/security/limits.conf,添加以下内容,三台机器都要

  • soft nofile 65536
  • hard nofile 65536
  • soft nproc 131072
  • hard nproc 131072

三台机器设置预读块的值为16384

/sbin/blockdev --getra /dev/sda 查看预读块,默认大小为256

/sbin/blockdev --setra 16384 /dev/sda 设置预读块

三台机器设置磁盘访问I/O调度策略

echo deadline > /sys/block/sda/queue/scheduler

在主节点安装安装包
./ greenplum-db-4.3.8.2-build-1-RHEL5-x86_64.bin
安装过程中遇到默认的直接回车,遇到yes|no输入yes,安装完之后或有一个greenplum的文件夹和一个指向geenplumn的greenplum-db的链接。

主节点获取环境参数(三台机器,可将其配置到.bashrc文件中)

source /your_install_path/greenplum-db/greenplum_path.sh

需要注意的是:这个.sh文件会修改pythonhome,会影响系统自带的python环境,以及依赖系统python的一切应用

在/your_install_path/grennplum文件夹下创建文件all_hosts,(三台机器),内容如下:
Node1
Node2
Node3

在主节点运行gpseginstall工具,来安装从节点segment

gpseginstall -f all_hosts -u U_username -p U_password

其中all_hosts是刚刚创建的文件,安装过程中会让你输入三台机器的密码,输入即可。

在你的安装用户下(非root用户)验证无密码登录(三台机器)
使用gpssh工具来测试无密码登录所有的主机
gpssh -f all_hosts -e ls -l $GPHOME

创建存储区域(主节点)

  1. 创建master数据存储区域
  2. -p /data/master
  3. your_install_path下创建一个包含所有segment主机名的文件seg_hosts,内容如下:
    node2

node3

  1. 使用gpssh工具在所有的degment的主机上创建主数据和镜像数据目录,如果没有设置镜像数据可以不设置mirror目录:
    Gpssh -f seg_hosts -e ‘mkdir -p your_install_path/data/primary’

Gpssh -f seg_hosts -e ‘mkdir -p your_install_path/data/mirror

同步三台机器的系统时间
  1. 在主节点上编辑/etc/ntp.conf来设置一下内容:
  2. 127.127.1.0
  3. 在segment主机上编辑/etc/ntp.conf
    Server node1
  4. 在主节点上的your_install_path下通过NTP守护进程同步系统时钟
  5. -f all_hosts -v -e 'ntpd'
验证操作系统设置
gpcheck -f all_hosts -m mdw
运行结果是否有error信息,如果有的话,处理掉错误信息后重新执行上面的命令直到没有错误为止。
需要注意的是:本例不是使用root用户安装的,他会一直报错说不是root用户安装,这里需要更改gpcheck这个python文件,找到验证用户是否是root的地方,将root改为你自己的安装用户即可。

创建greenplun数据库配置文件
  1. 使用安装用户登录
  2. 从模板中拷贝一份gpinitsystem_config文件
    Cp $GPHOME/docs/cli_help/gpconfigs/gpinitsystem_config /home/gpadmin/gpinitsystem_config
  3. 修改gpinitsystem_config文件
  4. 设置所有必须参数
    ARRAY_NAME="EMC Greenplum DW"

SEG_PREFIX=gpseg
PORT_BASE=40000
declare -a DATA_DIRECTORY=(your_install_path/data/primary)
MASTER_HOSTNAME=node1
MASTER_DIRECTORY=your_install_path/data/master
MASTER_PORT=5432
TRUSTED SHELL=ssh
CHECK_POINT_SEGMENT=8
ENCODING=UNICODE

  1. 设置可选参数
    MIRROR_PORT_BASE=50000

REPLICATION_PORT_BASE=41000
MIRROR_REPLICATION_PORT_BASE=51000
declare -a MIRROR_DATA_DIRECTORY=(/ your_install_path data/mirror)


运行初始化工具初始化数据库
gpinitsystem -c gpinitsystem_config -h seg_hosts 成功之后数据库就启动了

三节点设置环境变量,export MASTER_DATA_DIRECTORY=/data/master/gpseg-1

启动和停止数据库测试是否能够正常启动和关闭
Gpstart
Gpstop

访问数据库
  1. 客户端访问
    Psql -d postgres
  2. 程序远程访问
    修改pg_hba.conf文件,加入如下内容:

Hosts all all ip/32 trust
Hosts all all 127.0.0.1/32 trust
然后执行GPStop -u

相关文章
|
5月前
|
缓存 关系型数据库 MySQL
百度搜索:蓝易云【CentOS8服务器安装MySQL报错:no match mysql-community-server】
现在,你已经成功安装了MySQL服务器并解决了"no match mysql-community-server"的报错问题。祝你使用愉快!
97 1
|
5月前
|
监控 Ubuntu 测试技术
Ubuntu 20.04 安装部署 TiDB DM v7.3.0 集群【全网独家】
在Ubuntu上搭建TiDB DM集群的详细步骤分享,作者因工作需求克服了部署难题。测试环境包括3台Ubuntu 20.04主机:1台master和2台worker。首先,确保所有主机安装TiDB单机环境,使用TiUP工具下载并部署。接着,设置主机间免密登录,安装必要组件如sudo、systemd、iproute2和DM组件。配置文件可通过在线或离线方式获取。部署时,根据需求编辑`topology.yaml`,然后使用`tiup dm deploy`命令安装。最后,启动集群并检查节点状态,确认DM集群正常运行。注意,解决内存不足和端口连通性问题以避免错误。
|
2月前
|
存储 关系型数据库 MySQL
centos转移mysql的数据存储目录
centos转移mysql的数据存储目录
101 0
|
3月前
|
Ubuntu 关系型数据库 MySQL
MySQL5.7在Ubuntu安装[单机软件],第一步登录root,sudo su -
MySQL5.7在Ubuntu安装[单机软件],第一步登录root,sudo su -
|
5月前
|
存储 关系型数据库 MySQL
【MySQL】1.在Centos 7上如何卸载/安装/配置MySQL(保姆级教程)
【MySQL】1.在Centos 7上如何卸载/安装/配置MySQL(保姆级教程)
175 3
|
关系型数据库 MySQL Linux
百度搜索:蓝易云【Centos7系统如何安装MySQL5.7数据库?】
安装 MySQL 5.7 数据库需要进行以下步骤:
117 0
|
5月前
|
关系型数据库 MySQL Linux
MySQL【部署 02】Linux 非 root 用户部署 mysql-5.7.28 设置开机启动及问题汇总(含云盘资源)
MySQL【部署 02】Linux 非 root 用户部署 mysql-5.7.28 设置开机启动及问题汇总(含云盘资源)
283 0
|
存储 安全 关系型数据库
百度搜索:蓝易云【CentOS7安装MySQL8】
MySQL是一种开源的关系型数据库管理系统,被广泛应用于Web应用程序的开发中。在CentOS 7操作系统上安装MySQL 8可以让您在服务器上存储和管理数据,以满足应用程序的需求。本教程将介绍如何在CentOS 7操作系统上安装MySQL 8。
142 4
|
关系型数据库 MySQL
【MySQL学习笔记】系列二:MySQL环境搭建(卸载、下载、安装、配置、登录)(一)
【MySQL学习笔记】系列二:MySQL环境搭建(卸载、下载、安装、配置、登录)(一)
|
关系型数据库 MySQL 数据库
【MySQL学习笔记】系列二:MySQL环境搭建(卸载、下载、安装、配置、登录)(三)
【MySQL学习笔记】系列二:MySQL环境搭建(卸载、下载、安装、配置、登录)(三)