OushuDB 安装与升级之命令行安装的准备

OushuDB 安装与升级之命令行安装的准备

安装准备

本节安装之前需要准备4台主机,各个节点上即将安装的组件如下表所示:
OushuDB 安装与升级之命令行安装的准备

说明:每个节点都需要配置/etc/hosts,上表中的主机名称需要在每台机器的/etc/hosts中追加
192.168.1.11 oushum1192.168.1.12 oushum2192.168.1.21 oushus1192.168.1.22 oushus2

配置YUM源

首先登陆到oushum1,然后切换到root用户:

ssh oushum1su - root

有两种方式配置YUM源,第一种是配置Oushu源,通过互联网安装部署,第二种是通过下载Oushu安装包,然后配置本地源安装。

方式一:配置Oushu的YUM源,适合有互联网连接情况
Redhat/CentOS 7.4及更低版本系统并且包含avx指令请配置以下YUM源:

wget -P /etc/yum.repos.d/ $获取的repo url

Redhat/CentOS 7.4及更低版本系统但是不包含avx指令请配置以下YUM源:

wget -P /etc/yum.repos.d/ $获取的repo rul

方式二:下载安装包,配置本地源,适合不需一直联网安装情况
下载安装包(或通过物理介质拷贝的方式获取):
sudo su root
cd /
wget $获取的tarball url

解压软件包并安装httpd,请用具体的版本号代替...,比如oushu-software-full-4.6.0.0-rhel7-x86_64.tar.gz:

tar xzf oushu-database-full-latest-rhel7-x86_64.tar.gzyum -y install httpdsystemctl start httpdchown -R gpadmin:root /oushu-database-full-*.*.*.*-rhel7-x86_64

安装本地源,请用具体的版本号代替...,比如/oushu-database-full-4.6.0.0/setup_repo.sh:

/oushu-database-full-*.*.*.*/setup_repo.sh

关闭selinux:

setenforce 0

重建yum缓存:

yum clean allyum makecache

上述步骤成功后,请删除压缩包,以节省磁盘空间:

rm -f /oushu-database-full-*.*.*.*-rhel7-x86_64.tar.gz

交换公钥,设置无密码登陆

创建一个hostfile文件,包含cluster中的所有机器。

cd /roottouch hostfile

编辑hostfile文件内容如下(集群各机器的hostname):

oushum1oushum2oushus1oushus2

因为我们需要使用OushuDB命令行工具”hawq ssh-exkeys”来简化无密码登录设置以及使用“hawq ssh”来简化集群操作,所以我们在oushum1上先安装OushuDB:

yum install -y hawqsource /usr/local/hawq/greenplum_path.sh  #设置hawq环境变量

在集群每台机器上执行如下指令:

sudo sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config & sudo service sshd restart

在oushum1执行:

hawq ssh-exkeys -f hostfile  #交换公钥,使得ssh时无需输入用户密码(需要输入root用户密码)
注:如果集群中的root用户密码不一致,请修改root用户密码,使其保持一致。如果使用非root用户做ssh-exkeys则需要集群每台机器上都有该用户,并且密码一致。

如何更改root用户密码:

sudo echo 'password' | sudo passwd  --stdin root

请使用有sudo权限的用户执行,在’ ‘中输入想要更改的密码:

安装其他节点YUM源

在oushum1上,通过“hawq scp”命令统一安装其他节点的YUM源:

hawq scp -f hostfile /etc/yum.repos.d/oushu-database-cent73.repo =:/etc/yum.repos.d

关闭selinux

hawq ssh -f hostfile -e 'sed -i "s/^SELINUX\=enforcing/SELINUX\=disabled/g" /etc/selinux/config'hawq ssh -f hostfile -e 'setenforce 0'

”hawq ssh -f hostfile”会在hostfile中的所有节点上执行”-e”选项带的命令。

关闭防火墙

如果防火墙已经开启,需要关闭防火墙:

hawq ssh -f hostfile -e 'systemctl stop iptables'hawq ssh -f hostfile -e 'systemctl disable iptables'hawq ssh -f hostfile -e 'systemctl stop firewalld'hawq ssh -f hostfile -e 'systemctl disable firewalld'

安装配置NTP

hawq ssh -f hostfile -e 'yum install -y ntp'hawq ssh -f hostfile -e 'systemctl enable ntpd' #配置NTPD服务开机启动hawq ssh -f hostfile -e 'systemctl start ntpd' #启动NTPD服务

安装java

在oushum1使用“hawq ssh”统一安装所有节点的JDK,配置JAVA_HOME,本次安装中,JAVA_HOME的路径是/usr/java/default。如果已经安装了JDK,那么只需要将已安装的JDK目录,如/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.101-3.b13.el7_2.x86_64/,软连接到/usr/java/default

hawq ssh -f hostfile -e 'yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel'hawq ssh -f hostfile -e 'mkdir /usr/java'hawq ssh -f hostfile -e 'ln -s /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.144-0.b01.el7_4.x86_64/ /usr/java/default'

关于数据目录

本次安装我们假设每台机器上有两个数据盘,分别mount在/data1和/data2上。在其他硬件配置下,可能有很多块盘,用户需要根据盘数的不同更改后面相应的配置信息。尤其需要注意的是HDFS的数据目录, Magma 的数据目录和OushuDB的临时文件目录。

关于IPV6

目前Magma 暂不支持IPV6,需要将/etc/hosts中 “::1 localhost” 此行注释掉。

上一篇:OushuDB 数据库基本用法(下)


下一篇:OushuDB 执行器介绍