CentOS7.x部署GreenPlum6.x

news2025/7/5 9:42:18

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、GreenPlum是什么?
  • 二、使用步骤
    • 1.环境说明
    • 2.集群介绍
    • 3.修改主机名(root)
    • 4.网络映射(root)
    • 5.创建安装目录
    • 6.安装部署
    • 7.SSH (免密登录)
    • 8.环境配置
    • 9.安装成功
    • 10.使用DBeaver访问
  • 总结


前言

提示:这里可以添加本文要记录的大概内容:

之前学习hadoop为核心的平台,因为和传统数据库差异比较大,所以前段时间学习hadoop,也就是有所理解入门,虽然它扩展性强,成本低,开源生态优势,但是也出现兼容性差,查询性能不足,架构复杂等问题。最近发现了以GreenPlum为代表的MPP架构分布式关系型数据库出现,开源架构也没hadoop那么复杂,也能满足企业的分布式数据库和数据分析,GreenPlum和hadoop有些地方挺相似的


提示:以下是本篇文章正文内容,下面案例可供参考

一、GreenPlum是什么?

Greenplum主要由Master节点、Segment节点、interconnect三大部分组成。Greenplum master是Greenplum数据库系统的入口,接受客户端连接及提交的SQL语句,将工作负载分发给其它数据库实例(segment实例),由它们存储和处理数据。Greenplum interconnect负责不同PostgreSQL实例之间的通信。Greenplum segment是独立的PostgreSQL数据库,每个segment存储一部分数据。大部分查询处理都由segment完成。

二、使用步骤

1.环境说明

软件版本
虚拟机VMware 16
操作系统CentOS-7-x86_64
数据库Greenplum 6.18.1

2.集群介绍

搭建的 Greenplum 集群,我这里是使用5台虚拟机做的测试,配置在4c + 4G + 40G就够了。
使用1个 Master ,1个standby,3个 Segment 的集群,如下:

IP主机名节点
192.168.1.201mdw1master
192.168.1.202smdw1standby
192.168.1.203sdw1segment
192.168.1.204sdw2segment
192.168.1.205sdw3segment

3.修改主机名(root)

代码如下(示例):

hostnamectl set-hostname mdw1
hostnamectl set-hostname smdw1
hostnamectl set-hostname sdw1
hostnamectl set-hostname sdw2
hostnamectl set-hostname sdw3

4.网络映射(root)

代码如下(所有节点):

vim /etc/hostname
192.168.1.201   mdw1
192.168.1.202   smdw1
192.168.1.203   sdw1
192.168.1.204   sdw2
192.168.1.205   sdw3

5.创建安装目录

代码如下(所有节点):

mkdir -p /gpdata/gpadmin/greenplum
chown -R gpadmin:gpadmin /gpdata/gpadmin/greenplum

6.安装部署

代码如下(主节点):

yum install apr apr-util krb5-devel libyaml rsync zip libevent
cd /mnt/hgfs/Share
cp greenplum-db-6.18.1-rhel7-x86_64.rpm  /gpdata/gpadmin/greenplum

cd /gpdata/gpadmin/greenplum
rpm -ivh --prefix=/gpdata/gpadmin/greenplum/ greenplum-db-6.18.1-rhel7-x86_64.rpm

--赋权限
chown -R gpadmin:gpadmin /gpdata/gpadmin/greenplum

--应用环境变量
su gpadmin
source /gpdata/gpadmin/greenplum/greenplum-db-6.18.1/greenplum_path.sh

7.SSH (免密登录)

代码如下(所有节点):

su gpadmin
ssh-keygen -t rsa

--添加信任其他机器的Host key (所有节点)
ssh-copy-id mdw1
ssh-copy-id smdw1
ssh-copy-id sdw1
ssh-copy-id sdw2
ssh-copy-id sdw3

--创建节点配置文件(mdw1@hadoop) all_hosts:全部节点  seg_hosts:数据节点
vim /gpdata/gpadmin/greenplum/all_hosts
cat /gpdata/gpadmin/greenplum/all_hosts
mdw1
smdw1
sdw1
sdw2
sdw3

vim /gpdata/gpadmin/greenplum/seg_hosts
cat /gpdata/gpadmin/greenplum/seg_hosts
sdw1
sdw2
sdw3

--验证节点之间的SSH是否全部打通
source gpdata/gpadmin/greenplum/greenplum-db-6.18.1/greenplum_path.sh
cd /gpdata/gpadmin/greenplum

gpssh-exkeys -f /gpdata/gpadmin/greenplum/all_hosts
# 分发节点2
scp -r /gpdata/gpadmin/greenplum gpadmin@smdw1:/gpdata/gpadmin
scp -r /gpdata/gpadmin/greenplum gpadmin@sdw1:/gpdata/gpadmin
scp -r /gpdata/gpadmin/greenplum gpadmin@sdw2:/gpdata/gpadmin
scp -r /gpdata/gpadmin/greenplum gpadmin@sdw3:/gpdata/gpadmin

cd /gpdata/gpadmin/greenplum
ln -s greenplum-db-6.18.1 greenplum-db
ln -s greenplum-db-6.18.1 greenplum-db

8.环境配置

代码如下(示例):

mkdir -p /home/gpadmin/data/master


--gp的安装目录,和环境信息到用户的环境变量中(所有节点)。
vim /gpdata/gpadmin/greenplum/greenplum-db/greenplum_path.sh

GPHOME=/gpdata/gpadmin/greenplum/greenplum-db

vim ~/.bashrc
source /gpdata/gpadmin/greenplum/greenplum-db/greenplum_path.sh
export MASTER_DATA_DIRECTORY=/home/gpadmin/data/master/gpseg-1
export PGPORT=5432
export PGUSER=gpadmin
export PGDATABASE=gpdb

--Segment节点
source /gpdata/gpadmin/greenplum/greenplum-db/greenplum_path.sh
gpssh -f /gpdata/gpadmin/greenplum/seg_hosts -e 'mkdir -p /home/gpadmin/data/primary'
gpssh -f /gpdata/gpadmin/greenplum/seg_hosts -e 'mkdir -p /home/gpadmin/data/mirror'

#初始化配置文件编辑修改(master节点上操作)
mkdir /home/gpadmin/gpconfigs

cp /gpdata/gpadmin/greenplum/greenplum-db/docs/cli_help/gpconfigs/gpinitsystem_config /home/gpadmin/gpconfigs/gpinitsystem_config

vim /home/gpadmin/gpconfigs/gpinitsystem_config

#初始化数据库
gpinitsystem -c /home/gpadmin/gpconfigs/gpinitsystem_config -h /data/greenplum/seg_hosts

#standby 初始化
gpinitstandby -s smdw1

9.安装成功

代码如下(主节点):

psql 登录数据库
psql -d gpdb
\l  查看
\q  退出

在这里插入图片描述
代码如下(主节点):

greenplum命令
• 关闭
gpstop
• 启动
gpstart
• 状态查看
gpstate

在这里插入图片描述

10.使用DBeaver访问

在这里插入图片描述


总结

提示:记录点点

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/4114.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【SOLIDWORKS学习笔记】制作小风扇摇头底座(下)--- 细节优化

介绍:俗话说的好,电控决定机器人下限,机械决定机器人上限。作为一个在电控领域摸打滚爬了三年的选手,一直非常心动那些酷炫的机械模型,但是一直以来只能做甲方给别人提需求,做不到自己动手实现。所以我打算…

ES6学习24~47

2.14 Promise 2.14.1 什么是Promise Promise是ES6引入的异步编程的新解决方案。语法上Promise是一个构造函数,用来封装异步操作并可以获取其成功或失败的结果。 Promise 构造函数: Promise (excutor) {}Promise.prototype.then 方法Promise.prototype.catch 方法 2.14.2 pr…

假脱机技术——实现独占设备变成共享设备

文章目录什么是脱机技术假脱机技术——SPOOLing输入井和输出井输入进程与输出进程输入输出缓冲区共享打印机原理分析—假脱机技术的一种应用什么是脱机技术 因为我们的手工操作阶段,主机之间从I/O设备获得数据,由于设备由人工操作,主机速度很…

Android Studio打造一个小说阅读App

应用目录一、基本信息二、功能介绍1. 主界面2. 排行榜界面3. 分类界面4. 搜索界面5. 书籍详情界面6. 阅读界面7. 相关书籍界面三、类图/时序图/架构图四、采用技术及原因1.ViewPagerFragment的使用2.RadioGroup实现导航栏3.Retrofit的网络加载框架4.设置同步变量控制线程顺序5.…

【测试沉思录】12. 可用性保障平台的自动化测试探索与实践

欢迎订阅我的新专栏《现代命令行工具指南》,精讲目前最流行的开源命令行工具,大大提升你的工作效率。 作者:张雅瑜 编辑:毕小烦 一. 背景 随着业务的发展,应用越来越多,并且承载的业务量越来越大&#xff…

推箱子游戏设计与实现(Java+swing+JAWT)

目 录 摘 要 i Abstract ii 引 言 1 1 系统分析 2 1.1 技术可行性分析 2 1.1.1 可行性目的 2 1.1.2 可行性研究前提 2 1.1.3 算法可行性分析 2 1.1.4 平台选择 6 1.2 需求分析 6 1.2.1 引言 6 1.2.2 游戏需求 6 1.2.3 软硬件需求 9 1.2.4 接口控制 10 1.3 方案论证 10 1.3.1 C语…

JCDY-2A DC220V【直流高低值电压继电器】

系列型号 JCDY-2A/220V直流高低值电压继电器;JCDY-2A/110V直流高低值电压继电器; JCDY-2A/48V直流高低值电压继电器;JCDY-2B/220V直流高低值电压继电器; JCDY-2B/110V直流高低值电压继电器;JCDY-2B/48V直流高低值电压继…

MongoDB工具命令和用户认证

1.MongoDB工具命令 文章目录1.MongoDB工具命令1.1.Mongod命令1.2.Mongos命令1.3.Mongostat命令1.4.Mongotop命令1.5.Mongooplog命令1.6.Mongoperf命令2.MongoDB用户认证2.1.创建一个用户2.2.修改配置文件启用用户认证2.3.重启MongoDB2.4.使用用户口令登录MongoDB3.授权用户并赋…

【数据结构】链表OJ第二篇 —— 链表的中间节点 链表中倒数第k个节点 链表分割 链表的回文结构 相交链表

文章目录0. 前言1. 链表的中间节点2. 链表中倒数第k个结点3. 链表分割4. 链表的回文结构5. 相交链表6. 结语0. 前言 书接上回,我们这次依然是为大家带来链表的OJ题。这一次的题量比之前多一些,内容为链表的中间节点、链表中倒数第k个节点、链表分割、链…

安卓讲课笔记5.2 编辑框

文章目录零、本讲学习目标一、导入新课二、新课讲解(一)继承关系图(二)编辑框常用属性(三)教学案例:用户注册1、创建安卓应用2、准备图片素材3、主界面与主布局资源文件更名4、创建息界面类5、字…

数据获取与预处理

文章目录Requests简介Requests库安装Requests库的基本操作Requests库的7个主要方法Request方法get方法Response对象的属性head方法post方法Requests简介 提示:这里可以添加本文要记录的大概内容: 首先他是个第三方库,应用非常广泛 采用Apac…

《数据结构》(六)八大排序(下)

承接上篇的八大排序,今天本篇文章主要讲归并排序,冒泡排序,快速排序(挖坑,左右指针,前指针)和计数排序 八大排序交换排序冒泡排序冒泡排序思想代码冒泡排序总结快速排序快速排序思想三数取中快速排序之挖坑法挖坑法代码…

量化股票查询代码是什么?

量化股票查询代码是什么?接下来用一些代码来分析一下,如下: 做空95:HHV((HIGHLOWOPEN2*CLOSE)/5H-L,5),COLORBLUE;做空68: HHV((HIGH-LOWOPEN2*CLOSE)/5*2-L,5),COLORRED; 平衡点:LLV((HIGHLOWOPEN2*CLOSE…

狗厂员工来面试本想难为一下,问他内存溢出,结果被虐得连console.log也不敢写了

这次说到的面试题是关于node服务端内存溢出的问题,狗厂员工来面试本想难为一下,现在我连console.log也不敢写了 关于这道node内存溢出的问题,大哥从以下几个方面讲的,讲完我觉得自己得到了升华,现在搞得连代码也快不敢…

AI人脸检测/安全帽检测智能分析网关告警消息配置——微信告警消息配置

AI智能分析网关内置多种深度学习算法,可支持对接入的多路视频流进行智能检测、智能识别等,包括人脸检测与识别、车辆检测与识别、车牌识别、烟火识别、安全帽识别、区域入侵检测等。将智能分析网关与EasyCVR视频融合平台联合使用,可实现智能告…

Linux命令从入门到实战 ---- 用户管理命令

文章目录useradd添加新用户passwd设置用户密码id查看用户是否存在查看创建了哪些用户su切换用户userdel删除用户who查看登录用户信息sudo设置普通用户具有root权限用户组groupadd 新增用户组usermod修改用户groupdel删除用户组groupmod修改用户组总结useradd添加新用户 将usera…

安卓学习笔记5.3 按钮、图像视图与图像按钮

文章目录零、本讲学习目标一、导入新课二、新课讲解(一)按钮控件1、继承关系图2、常用属性(二)图像视图1、继承关系图2、常用属性(三)图像按钮1、继承关系图2、常用属性(四)教学案例…

vue无需改动代码的SEO【百度爬取】优化--puppeteer(详细流程)

vue无需改动代码的SEO优化–puppeteer(详细流程) 目录vue无需改动代码的SEO优化--puppeteer(详细流程)一级目录二级目录三级目录一、安装puppeteer:npm install puppeteer --save安装依赖二、编写puppeteer服务js文件p…

DDD领域驱动设计基础

什么领域驱动模型 领域驱动模型一种设计思想,我们又称为DDD设计思想。是一种为了解决传统设计思想带来的维护困难,沟通困难和交互困难而产生的一种新的思想。 架构模式的演进 单体架构 采用面向对象的设计方法,系统包括业务接入层、业务逻…

Eclipse切JRE环境后如何恢复- Unrecognized option: --enable-preview

场景 使用switch 新特性 配合 lambda 练习小案例 // 需求: 1 2 3 -> 一、二、 三 int num 1; switch ( num) {// jdk13 可以缺省 break 并且 单语句可以省略 花括号 case 1 -> { System.out.println("一"); }case 2 -> System.out.p…