准备
hadoop集群,zookeeper集群,ntp服务,java环境等
主机及服务:
角色主机 | master01 | master02 | slave01 | slave02 | slave03 |
---|---|---|---|---|---|
HAWQ Master | primary | standby | no | no | no |
HAWQ Segment | no | no | yes | yes | yes |
NameNode | standby | active | no | no | no |
DataNode | no | no | yes | yes | yes |
Zookeeper | yes | yes | yes | no | no |
配置YUM源
例:先配置master01,ssh master01;su root.
在线
Redhat/CentOS 7.0, 7.1, 7.2系统并且包含avx指令请配置以下YUM源:
1wget -P /etc/yum.repos.d/ http://yum.oushu.io/oushurepo/oushudatabaserepo/centos7/3.0.1.0/oushu-database.repoRedhat/CentOS 7.0, 7.1, 7.2系统但是不包含avx指令请配置以下YUM源:
1wget -P /etc/yum.repos.d/ http://yum.oushu.io/oushurepo/oushudatabaserepo/centos7/3.0.1.0/oushu-database-noavx.repoRedhat/CentOS 7.3系统的用户并且包含avx命令请配置如下YUM源:
1wget -P /etc/yum.repos.d/ http://yum.oushu.io/oushurepo/oushudatabaserepo/centos7/3.0.1.0/oushu-database-cent73.repoRedhat/CentOS 7.3系统的用户但是不包含avx命令请配置如下YUM源:
1wget -P /etc/yum.repos.d/ http://yum.oushu.io/oushurepo/oushudatabaserepo/centos7/3.0.1.0/oushu-database-cent73-noavx.repo
离线
下载或拷贝安装包(目录:/data1/localrepo/)
|
|
解压软件包并安装httpd
安装本地源
|
|
关闭selinux,重建yum缓存
|
|
其余节点同样按照该方法配置
注意关闭selinux时执行:
关闭防火墙:
安装HAWQ
master01节点上,在配置文件/etc/sysctl.conf添加内容
复制该配置文件到所有节点,并使其生效(sysctl -p)
master01节点上,创建文件/etc/security/limits.d/gpadmin.conf:
拷贝该配置文件到所有节点/etc/security/limits.d/目录下
install hawq
创建hdfs目录,并赋予gpadmin权限
|
|
在master01上,创建文件mhostfile,记录所有hawq的master和standby master的hostname,类似hostfile:
|
|
在master01上,创建shostfile,记录所有hawq的segment的hostname,类似hostfile:
在master01上,使用“hawq ssh”在master和standby节点创建master元数据目录和临时文件目录,并授予gpadmin权限:
|
|
在master01,使用“hawq ssh”在所有segment创建segment元数据目录和临时文件目录,并授予gpadmin权限:
在master01,切换hawq用户,hawq相关的配置文件都需要使用该用户权限:
在master01,修改/usr/local/hawq/etc/slaves,将所有HAWQ的segment节点的hostname写入slaves中,在本次安装中,应该写入slaves的有slave01,slave02,slave03内容为:
|
|
修改/usr/local/hawq/etc/hdfs-client.xml,去掉ha注释
在master01,修改/usr/local/hawq/etc/hawq-site.xml 注意:hawq_dfs_url中的oushu是dfs.nameservices的值
|
|
切换成root用户 su root
拷贝master01上/usr/local/hawq/etc中的配置文件到所有节点
在master01上,切换到gpadmin用户,创建hhostfile:
hhostfile文件记录所有HAWQ节点主机名称,内容如下:
|
|
使用root用户登录到每台机器,修改gpadmin用户密码:
|
|
针对gpadmin用户交换key,并且按照提示输入相应节点的gpadmin用户密码:
|
|
在master01,使用gpadmin用户权限,初始化HAWQ集群, 当提示“Continue with HAWQ init”时,输入 Y:
|
|
在做HAWQ集群初始化的时候,需要保证在创建的/data*/hawq/目录下,masterdd和segmentdd都是空目录,在hadoop上创建的/hawq/default_filespace确保是空目录
另外,如果hawq init cluster失败,可以先执行下面的命令停止hawq集群,清空目录,找出问题原因后重新初始化。
|
|
在HAWQ master节点,根据本次安装的配置,s使用下面的命令清空所有hawq目录,然后重建hawq子目录:
在HDFS namenode节点,使用下面的命令,清空/hawq/default_filespace,如果/hawq/default_filespace中有用户数据,注意备份数据,避免造成损失:
检查HDFS的参数配置是否正确,最好以gpadmin用户来检查。如果参数配置不正确的话,虽然有时HDFS可以正常启动,但在高负载情况下HDFS会出现错误。
|
|
检查HAWQ是否运行正常:
|
|