背景

需要构建一个用于数据仓库的分布式数据库集群。

每一个节点暂时不需要进行备份,同时也不考虑坏掉的情况。

每一个数据节点最好都不用进行过多的配置,安装起来方便。

Greenplum的Shared-Nothing的设计思路很适合我目前的业务场景。

物理环境

4台安装了Linux的主机,安装的操作系统的版本均为Lubuntu 18.04。

其中,我给他们取号了名字:

  • xiaoyao (逍遥)

    • 身份:MyCat节点
    • IP地址:192.168.0.200
  • linger (灵儿)
    • 身份:数据节点1
    • IP地址:192.168.0.201
  • yueru (月如)
    • 身份:数据节点2
    • IP地址:192.168.0.202
  • anu (阿奴)
    • 身份:数据节点3
    • IP地址:192.168.0.203

其中,机器对应的Master和Segment如下分配:

“逍遥”作为Master节点,其他三个节点作为Segment节点,每个机器上配置两个Primary Segment和两个Mirror Segment;同时“阿奴”作为Master Standy节点。

好了。下载来开始安装。

配置网络

首先为每一台lubutu安装所缺的依赖:

sudo apt-get install net-tools vim -y

配置ip地址

进入系统后,点击右下角的网络按钮,再点击“编辑连接...”,会弹出一个网络连接窗口,选择你目前的连接(以xiaoyao为例,我在xiaoyao上面使用的网络连接显示为“有线连接1”)并双击进入,选择弹出窗口上方的“IPv4设置”,然后将“方法(M):”对应的“自动(DHCP)”改为“手动”,并在下方一条静态ip信息(即:点击中间右侧的“添加(A)”),信息如下:

  • 地址:192.168.0.200
  • 子网掩码:255.255.255.0 (或者24)
  • 网关:192.168.0.1

并配置DNS服务器地址为:8.8.8.8

点击右下角保存。重新启动(或者执行命令行指令sudo service network-manager restart),在命令行输入ifconfig,可以看到ip地址已经变为了192.168.0.200。

其他:按照这种方式在linger,yueru,anu上分别配置ip地址192.168.0.201~203。

创建专有用户

为了方便起见,我们为每一台电脑创建一个名为gpadmin的用户,和其对应的名为gpadmin的用户组。

首先,如果电脑上之前存在gpadmin或者gpadmin用户组的话,我们应该先把他们清掉:

sudo groupdel gpadmin
sudo userdel gpadmin

然后重新建一个:

sudo groupadd -g 530 gpadmin
sudo useradd -g 530 -u 530 -m -d /home/gpadmin -s /bin/bash gpadmin

对文件夹进行赋权,为新用户创建密码:

sudo chown -R gpadmin:gpadmin /home/gpadmin/
sudo passwd gpadmin

其他:为其他三台电脑也创建一个用户gpadmin:gpadmin。

配置地址别名

可以通过sudo vim /etc/hosts来进行编辑,然后在文件末尾添加如下信息:

# hosts for greenplum
192.168.0.200 dw-greenplum-1 mdw
192.168.2.201 dw-greenplum-2 sdw1
192.168.0.202 dw-greenplum-3 sdw2
192.168.0.203 dw-greenplum-4 sdw3

其他:在其他三台电脑上追加 .

0同样的内容。

安装ssh服务器

ubuntu默认并没有安装和开启ssh服务器,因此,我们需要:

  1. 确定安装sshd

    sudo apt-get install openssh-server
  2. 检查防火墙设置,关闭防火墙

    sudo nfw disable
  3. 检验是否成功,运行下面的命令

    ssh localhost

有的时候虽然成功了,但还是会出现connection refused的问题,这是,需要查看一下sshd进程是否启动。

运行下面的指令查看是否有sshd进程:

ps -e | grep ssh

有时虽然可以看到sshd,但是还是不能连接成功,这是需要重启一下ssh:

sudo service ssh restart

然后再次连接。

其他:对其他三台电脑也同样方法安装ssh服务器。

配置ssh直接访问

进行操作之前需要切换用户为gpadmin:gpadmin,毕竟我们接下来的操作是要在gpadmin的权限下进行的:

su gpadmin

在xiaoyao上执行如下命令来生成唯一密钥(之后将会scp到另外三台电脑上):

ssh-keygen
cp ~/.ssh/id_isa.pub ~/.ssh/authorized_keys
chomd 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh/

在其他三台电脑上通过命令:

scp -r gpadmin@mdw:~/.ssh ~/.ssh

然后ssh配置文件拷贝到本地。

接下来,便可以通过在任意一台电脑上以gpadmin的身份执行:

  • ssh gpadmin@mdw,
  • ssh gpadmin@sdw1,
  • ssh gpadmin@sdw2,
  • ssh gpadmin@sdw3

来验证是否可以成功ssh到对方主机并且是免密ssh的了。

ubuntu 18.04下greenplum安装笔记(一)Linux下基础环境的搭建的更多相关文章

  1. 在Ubuntu 18.04系统上安装Systemback的方法(抄)

    在Ubuntu 18.04系统上安装Systemback的方法 2018-12-26 21:39:05作者:林莉稿源:云网牛站 本文介绍如何在Ubuntu 18.04或者Ubuntu 18.10系统上 ...

  2. 记录在Ubuntu 18.04系统中安装Apache, MySQL和PHP环境

    虽然我们在Linux VPS.服务器安装WEB环境比较方便,可以选择面板或者一键包,但是有些我们需要深入学习的网友不会选择一键安装,而是会尝试编译安装.这样可以学到一些内在的技术.一般我们较为习惯选择 ...

  3. Ubuntu 18.04 Numix主题安装设置

    Ubuntu 18.04 Numix主题安装设置 一.首先安装Numix主题 展现效果如下图 1.安装numix sudo add-apt-repository ppa:numix/ppa 2.安装主 ...

  4. 如何在Ubuntu 18.04 LTS上安装和配置MongoDB

    MongoDB是一款非关系型数据库,提供高性能,高可用性和自动扩展企业数据库. MongoDB是一个非关系型数据库,因此您不能使用SQL(结构化查询语言)插入和检索数据,也不会将数据存储在MySQL或 ...

  5. [笔记] Ubuntu 18.04源码安装caffe流程

    虽然Ubuntu 18.04可以通过apt安装caffe,但是为了使用最新的代码,还是值得从源码安装一遍的. 安装环境 OS: Ubuntu 18.04 64 bit 显卡: NVidia GTX 1 ...

  6. Ubuntu 18.04 Server上安装LAMP

    由于要进行渗透测试,所以这两天就在搭LAMP的环境(过程及其痛苦) 这里分享一些我遇到的问题. 首先介绍一下我的使用环境  VM虚拟机,ubuntu 与主机NAT连接 由于之前一直使用的是kali(默 ...

  7. Ubuntu 18.04 手动编译安装 ffmpeg

    ffmpeg 是一个由提供对视频.音频和其他多媒体流文件进行处理功能的库和程序构成的自由软件项目,其常被用于适用于不同格式的音频和视频的录影.转换和流处理等场合.这里记录在 Ubuntu 18.04 ...

  8. Ubuntu 18.04 64位安装tensorflow-gpu

    第一步(可直接跳到第二步):安装nvidia显卡驱动 linux用户可以通过官方ppa解决安装GPU驱动的问题.使用如下命令添加Graphic Drivers PPA: 1 sudo add-apt- ...

  9. 在Ubuntu 18.04系统上安装Pydio Cells详细图文教程

    前言   基于云的协作工具Pydio cell提供了一系列灵活的特性,包括应用内消息传递.文件共享和版本控制.下面逐步介绍安装过程. Pydio cell最初是一个简单的基于云的文件共享系统,但经过升 ...

随机推荐

  1. 泛型 System.Collections.Generic及泛型继承、运算符、结构、接口、方法、委托、事件、可空类型等

    一.定义泛型类 void Main() { //实例化泛型类时,才指定具体的类型 MyGenericClass<); Console.WriteLine(MyGeneri.InnerT1Obje ...

  2. docker学习(五)

    一.实战案例介绍一些典型的应用场景和案例. 1.使用Supervisor来管理进程Docker 容器在启动的时候开启单个进程,比如,一个 ssh 或者 apache 的 daemon 服务.但我们经常 ...

  3. 61、springmvc-异步请求-返回DeferredResult

    61.springmvc-异步请求-返回DeferredResult 61.1 DeferredResult 官方文案 61.2 使用 /** * 创建订单加入 订单处理队列 * * @return ...

  4. HTML 001 入门介绍

    HTML 教程- (HTML5 标准) 超文本标记语言(英语:HyperText Markup Language,简称:HTML)是一种用于创建网页的标准标记语言. 您可以使用 HTML 来建立自己的 ...

  5. LOJ P10117 简单题 题解

    每日一题 day15 打卡 Analysis 树状数组 用树状数组来维护每个字符变化的次数,如果是偶数就是0,奇数就是1 #include<iostream> #include<cs ...

  6. 003_Python3 基本数据类型

    1.Python 中的变量不需要声明.每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存 ...

  7. 九.配置SMB共享(Samba共享)

    • Samba 软件项目 – 用途:为客户机提供共享使用的文件夹 – 协议:SMB(TCP 139).CIFS(TCP 445)  • 所需软件包:samba • 系统服务:smb   管理共享账号 ...

  8. Redis学习之一--基础知识

    一.定义 REmote DIctionary Server(Redis) 是一个以字典结构存储数据的key-value存储系统:使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化 ...

  9. 【説明する】hash

    首先对于判重,我们能想到的方法有什么呢? 1)bool数组 2)set(集) 数组与集合的优缺点: 1.因为集合是对数组做的封装,所以,数组永远比任何一个集合要快. 2.数组声明了它容纳的元素的类型, ...

  10. 爬虫(四):BeautifulSoup库的使用

    一:beautifulsoup简介 beautifulsoup是一个非常强大的工具,爬虫利器. beautifulSoup “美味的汤,绿色的浓汤” 一个灵活又方便的网页解析库,处理高效,支持多种解析 ...