ubuntu 18.04下greenplum安装笔记(一)Linux下基础环境的搭建
背景
需要构建一个用于数据仓库的分布式数据库集群。
每一个节点暂时不需要进行备份,同时也不考虑坏掉的情况。
每一个数据节点最好都不用进行过多的配置,安装起来方便。
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服务器,因此,我们需要:
- 确定安装sshd
sudo apt-get install openssh-server
- 检查防火墙设置,关闭防火墙
sudo nfw disable
- 检验是否成功,运行下面的命令
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的了。