Greenplum安装总结

一、环境说明

服务器centos7 4台,一台Master节点,三台Segment节点:

mdw 192.168.43.21 (master节点)

sdw1 192.168.43.22   (segment节点,包含两个primary segment,两个mirror segment)

sdw2  192.168.43.23   (segment节点,包含两个primary segment,两个mirror segment)

sdw3  192.168.43.24   (segment节点,包含两个primary segment,两个mirror segment)

GP版本: greenplum-db-5.7.1-rhel7-x86_64

安装包下载(官网):https://network.pivotal.io/products/pivotal-gpdb/

源码都在github上,也可自行编译源码安装:https://github.com/greenplum-db/gpdb

二、安装前服务器准备

(1) 关闭防火墙

启动: systemctl start firewalld

关闭: systemctl stop firewalld

查看状态: systemctl status firewalld

开机禁用  : systemctl disable firewalld

开机启用  : systemctl enable firewalld

(2)配置hosts

/ect/hosts:

192.168.43.21   mdw

192.168.43.22   sdw1

192.168.43.23   sdw2

192.168.43.24   sdw3

确保所有机器ping所有的hostname都是通的

(3)修改内核

/etc/sysctl.conf 中追加

kernel.shmmax = 500000000
kernel.shmmni = 4096
kernel.shmall = 4000000000
kernel.sem = 500 1024000 200 4096
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_tw_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
vm.swappiness = 10
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
vm.dirty_background_ratio = 0
vm.dirty_ratio=0
vm.dirty_background_bytes = 1610612736
vm.dirty_bytes = 4294967296

sysctl -p

(4)修改文件打开限制

vi /etc/security/limits.conf

* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072

(5)创建用户和用户组

groupadd -g 530 gpadmin
useradd -g 530 -u530 -m -d /home/gpadmin -s /bin/bash gpadmin
chown -R gpadmin:gpadmin /home/gpadmin/
passwd gpadmin

(6)创建安装目录,并赋权限

mkdir /opt/greenplum
chown -R gpadmin:gpadmin /opt/greenplum/

三、安装

(1) 上传安装文件到主节点

greenplum-db-5.7.1-rhel7-x86_64.zip 上传到/home/pgadmin 下并解压

(2)安装

./greenplum-db-5.7.1-rhel7-x86_64.bin

(安装过程选择安装目录:/opt/greenplum/greenplum-db-5.7.1/)

安装成功后如下:

安装完成后应用下环境变量:

source /opt/greenplum/greenplum-db/greenplum_path.sh

(3)配置hostlist文件记录所有节点,seg_hosts文件只记录segment节点

[gpadmin@mdw ~]$ cat hostlist
mdw
sdw1
sdw2
sdw3 [gpadmin@mdw ~]$ cat seg_hosts
sdw1
sdw2
sdw3

(4)gpssh-exkeys 打通服务器,即服务器间免密码登陆

gpssh-exkeys -f hostlist

打通后就可以使用gpssh命令对所有节点进行批量操作:

[gpadmin@mdw ~]$ gpssh -f hostlist
=> pwd
[sdw3] /home/gpadmin
[sdw1] /home/gpadmin
[sdw2] /home/gpadmin
[ mdw] /home/gpadmin

(5)把主节点安装好的程序压缩分发到每个子节点

tar -cf gp5.7.tar greenplum-db-5.7.1/ #压缩
gpscp -f /home/gpadmin/hostlist gp5.7.tar =:/opt/greenplum/ #分发

(6)批量解压文件

=> tar -xf gp5.7.tar
=>ln -s /opt/greenplum/greenplum-db-5.7.1 /opt/greenplum/greenplum-db #建立软链接

(7)创建数据库数据目录

#MASTER
=> mkdir -p /home/gpadmin/gpdata/gpmaster
#PRIMARY
=> mkdir -p /home/gpadmin/gpdata/gpdatap1
=> mkdir -p /home/gpadmin/gpdata/gpdatap2
#MIRROR
=> mkdir -p /home/gpadmin/gpdata/gpdatam1
=> mkdir -p /home/gpadmin/gpdata/gpdatam2

(8)配置 .bash_profile 环境变量

source /opt/greenplum/greenplum-db/greenplum_path.sh
export MASTER_DATA_DIRECTORY=/home/gpadmin/gpdata/gpmaster/gpseg-1
export PGPORT=5432
export PGDATABASE=testDB #默认进入的db
source .bash_profile

(9)配置初始化配置文件,模板:/opt/greenplum/greenplum-db/docs/cli_help/gpconfigs/gpinitsystem_config

可以根据模板修改,我的gpinit_config如下:

ARRAY_NAME="Greenplum"
SEG_PREFIX=gpseg
PORT_BASE=40000
declare -a DATA_DIRECTORY=(/home/gpadmin/gpdata/gpdatap1 /home/gpadmin/gpdata/gpdatap2)
MASTER_HOSTNAME=mdw
MASTER_DIRECTORY=/home/gpadmin/gpdata/gpmaster
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=(/home/gpadmin/gpdata/gpdatam1 /home/gpadmin/gpdata/gpdatam2)
MACHINE_LIST_FILE=/home/gpadmin/seg_hosts

(10)初始化数据库

gpinitsystem -c /home/gpadmin/gpinit_config -s sdw3

其中sdw3是指master的standby(备份)所在的节点,书上和网上的一些资料都将standby放在最后一个节点,可能是约定俗成

初始化根据脚本提示操作即可,如果上面有一些配置有问题,gpinitsystem就不能成功,日志在/home/gpadmin/gpAdminLogs中,认真查看日志,一味重复安装无意义

(11)测试验证数据库

登陆默认数据库postgres

[gpadmin@mdw gpAdminLogs]$  psql -d postgres
psql (8.3.23)
Type "help" for help. postgres=#

至此GP数据库集群就安装成功了

Greenplum安装总结的更多相关文章

  1. Greenplum安装

    最近需要安装Greenplum测试一些东西,在安装过程中出现了许多问题,所以在这里将安装过程整理一下,主要参考<Greenplum企业应用实践>和http://jxzhfei.blog.5 ...

  2. greenplum 安装笔记

    折腾两天了,终于把greenplum装成功了.记录下遇到的问题. 环境变量一点要配置准确. greenplum安装,按照这里一步步走: http://www.cnblogs.com/liuyungao ...

  3. greenplum安装札记(待完善)

    1.安装配置 1.1硬件配置 硬件服务器用到某私有云中ip段为192.168.228.111-192.168.228.120的十台服务器,相关主要配置如下表: 类别 主机名 IP 内存 硬盘 主要目录 ...

  4. GreenPlum安装greenplum-cc-web监控

    一. GreenPlum集群安装环境 由虚拟机搭建的一台master两台segment. 二.安装前准备 1) 所需安装包 GreenPlum监控安装包: greenplum-cc-web-3.0.2 ...

  5. GreenPlum 安装方法详解

    一.安装环境准备 1.磁盘环境准备 磁盘分区典型配置如下: 文件系统 文件格式    大小  /        ext3   50GB,Linux系统的根目录,所有的目录都挂在这个目录下面,建议大小为 ...

  6. ubuntu 18.04下greenplum安装笔记(二)安装Greenplum的失败的尝试

    之前对Linux环境进行了搭建,现在开始进行Greenplum的正式安装. 下载 进Greenplum的官网:https://greenplum.org/download/ 可以发现,对于ubuntu ...

  7. ubuntu 18.04下greenplum安装笔记(一)Linux下基础环境的搭建

    背景 需要构建一个用于数据仓库的分布式数据库集群. 每一个节点暂时不需要进行备份,同时也不考虑坏掉的情况. 每一个数据节点最好都不用进行过多的配置,安装起来方便. Greenplum的Shared-N ...

  8. [原]greenplum安装详细过程

    今天又帮其他项目装了一遍GP,加上之前的两次,这是第三次了,虽然每次都有记录,但这次安装还是发现漏写了一些步骤,在此详细记录一下,需要的童鞋可以借鉴. 1.准备 这里准备了4台服务器,1台做maste ...

  9. Greenplum 源码安装教程 —— 以 CentOS 平台为例

    Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...

随机推荐

  1. 孟老板 BaseAdapter封装 (三) 空数据占位图

    BaseAdapter封装(一) 简单封装 BaseAdapter封装(二) Header,footer BaseAdapter封装(三) 空数据占位图 BaseAdapter封装(四) PageHe ...

  2. 用华为MindSpore进行分布式训练

    技术背景 分布式和并行计算,在计算机领域是非常重要的概念.对于一些行外人来说,总觉得这是一些很简单的工作,但是如果我们纵观计算机的硬件发展史,从CPU到GPU,再到TPU和华为的昇腾(NPU),乃至当 ...

  3. JVM--你常见的jvm 异常有哪些? 代码演示:StackOverflowError , utOfMemoryError: Java heap space , OutOfMemoryError: GC overhead limit exceeded, Direct buffer memory, Unable_to_create_new_native_Thread, Metaspace

    直接上代码: public class Test001 { public static void main(String[] args) { //java.lang.StackOverflowErro ...

  4. MySQL索引简介(转)

    一.为什么用索引例:先假设有一张表,表的数据有10W条数据,其中有一条数据是nickname='css',如果要拿这条数据的话需要写的sql是 SELECT * FROM award WHERE ni ...

  5. frp实现NAS外网访问

    开始 入手了NAS之后就看是漫漫的折腾内网穿透的不归路.用的最多最简单的是下面三种 QC:群晖自带的,速度在100kb左右,能不能连上有时候都是运气,极其不稳定. DDNS:最推荐的方式.上下行都取决 ...

  6. Java第一次博客作业

    第一次博客作业 目录 三次作业题目详情 作业中的错误分析 感想与心得 题目详情 题目1:第一次作业: 类图: 题目2 类图: 题目3 类图: 题目4 题目5 题目6 类图: 题目7 类图: 题目8 第 ...

  7. 『言善信』Fiddler工具 — 15、使用Fiddler抓取HTTPS请求

    目录 1.Fiddler抓取HTTPS过程 2.拓展:SSL/TLS证书握手原理 3.Fiddler抓取HTTPS原理总结 4.Fiddler抓取HTTPS设置 步骤1:配置证书 步骤2:勾选设置 5 ...

  8. HTTP客户端连接,选择HttpClient还是OkHttp?

    为什么会写这篇文章,起因于和朋友的聊天 这又触及到我的知识盲区了,首先来一波面向百度学习,直接根据关键字httpclient和okhttp的区别.性能比较进行搜索,没有找到想要的答案,于是就去over ...

  9. Python使用websocket调用语音识别,语音转文字

    @ 目录 0. 太长不看系列,直接使用 1. Python调用标贝科技语音识别websocket接口,实现语音转文字 1.1 环境准备: 1.2 获取权限 1.2.1 登录 1.2.2 创建新应用 1 ...

  10. 『言善信』Fiddler工具 — 16、使用Fiddler抓取移动端App请求

    目录 1.抓取Android移动端App请求 2.抓取IOS移动端App请求 3.总结: 1.抓取Android移动端App请求 前提: 因为Fiddler抓包的原理就是通过代理,所以确保被测终端要和 ...