CentOS7搭建CDH5.15.0集群
CentOS7搭建CDH5.15.0集群
一、节点说明
节点 |
Server/Agent |
Memory |
master |
Server & agent |
4G |
node1 |
agent |
2G |
node2 |
agent |
2G |
二、安装环境准备
1、基本环境构建
1.1 网络配置和设置主机名
- 1.1 配置静态IP
vi /etc/sysconfig/network-scripts/ifcfg-ens33
- 1.2 设置主机名及IP对应
vim /etc/hostname #更改主机名
vim /etc/hosts #添加IP地址和主机名映射关系
hosts内容:
重启网卡:
Service network restart
1.2 关闭防火墙
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld #取消开机启动
firewall-cmd --state #查看防火墙状态
1.3 关闭SELINUX
sestatus -v #查看状态
1.4 安装JDK
- 4.1 查看已安装java的信息
rpm -qa | grep java
- 4.2 卸载自带的open jdk
rpm -e --nodeps 包名
- 4.3 上传并解压jdk
- 4.4 配置环境变量
vim /etc/profile
- 4.5 让环境变量生效
source /etc/profile
- 4.6 查看java状态
java -version
2、克隆master节点环境,建立node1节点和node2节点
3、完善基本环境
3.1 设置SSH免密登录(在所有节点上执行)
(1)产生公钥和私钥:ssh-keygen -t rsa (一直回车即可)
(2)将公钥分发给所有节点(包括本机):ssh-copy-id -i 主机名
(3)测试ssh访问:ssh root@主机名
3.2 时间同步(所有节点)
yum install ntp -y
ntpdate -u s2c.time.edu.cn
4、安装mysql(只需要在主节点安装)
https://blog.csdn.net/wudinaniya/article/details/81094578
三、安装Cloudera Manager Server&Agent
Cloudera Manager Server&Agent软件包资源百度网盘地址:https://pan.baidu.com/s/1NGAGuf8bTizj8YTx0JRs8w
3.1 上传安装包到/usr/soft目录(自定义一个地方)下
并安装到/opt目录下(三个节点全部安装)
3.2 配置CM Agent
1.cm的安装包的server和agent都是同一个包,启动的时候启动命令指定为server还是agent;
2.cm有一个工作目录,需要我们来创建;创建一个用户;修改agent的配置,给它指定server的位置;那个端口7182是server和agent通信的端口;
3.server_host配置为server的名字;
vim /opt/cm-5.15.0/etc/cloudera-scm-agent/config.ini 中 server_host(三个节点均需设置的是主节点名字)在config.ini文件设置server_host=主节点名字或IP
3.3 创建用户cloudera-scm(所有节点)
useradd --system --home=/opt/cm-5.15.0/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm |
3.4 创建parcel目录
创建parcel目录,这个目录是server和agent用来接收和发送数据的目录,server端的parcel-repo这个目录会把所有的安装文件全部下载到此目录,而agent也需要安装包,parcels就是用来存储指定的安装包的,当然需要有权限能操作这些目录;
Server节点(master)
Agent节点(master,nide1,node2)
(注意:这儿我们master节点既是server也是agent,所以master节点也创建parcels)
把CDH安装包移到cloudera/parcel-repo下面,并修改其中后缀为sha1的文件为sha,如下:
3.5 配置CM Server的数据库
将mysql数据库的驱动jar包放到/opt/cm-5.15.0/share/cmf/lib/目录下
复制mysql驱动到各个文件夹, 否则后面CM安装时出现Failed to Create Hive Metastore Database Table的错误
sudo cp /opt/cm-5.15.0/share/cmf/lib/mysql-connector-java-*-bin.jar /opt/cloudera/parcels/CDH-5.15.0-1.cdh5.15.0.p0.21/lib/hive/lib
sudo cp /opt/cm-5.15.0/share/cmf/lib/mysql-connector-java-*-bin.jar /opt/cloudera/parcels/CDH-5.15.0-1.cdh5.15.0.p0.21/lib/oozie/lib/
sudo cp /opt/cm-5.15.0/share/cmf/lib/mysql-connector-java-*-bin.jar /var/lib/oozie/
初始化cm数据库:
创建其他服务需要的数据库:
mysql -uroot -p进入数据库命令行
3.6 启动CM Manager&Agent服务
注意:启动CM服务时要确保mysql启动。
Server节点执行:(master)
Agent节点执行:(master,node1,node2)
一般情况下等一两分钟后查看7180端口是否被占用
当端口已被占用,就可以用http://Server节点IP:7180打开登录页面,用户名和密码都是admin
四、安装CDH5
登录网页:
选择免费版本继续
继续,下一步,直到如下界面,可以在当前管理的主机列表中看到对应的节点。选择要安装的节点,这里选择全部节点,继续。
选择要下载安装的CDH版本
进行集群的安装,这个过程可能需要几分钟
检查主机的正确性
此时出现的2个错误,我们根据提示解决一下,
更改交换空间:
1、先在命令中执行 echo 10 > /proc/sys/vm/swappiness
2、再打开并编辑/etc/sysctl.conf
将echo 10 > /proc/sys/vm/swappiness 加入到文件中,一遍重启时生效
如下禁用此设置,然后将同一命令添加到 /etc/rc.local 等初始化脚本中,以便在系统重启时予以设置。以下主机将受到影响:
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
先执行上面2条命令,再将其添加到/etc/rc.local文件中
再次检查主机的正确性
选择需要安装的组件,因为内存有限,这儿选择核心组件就OK
选择各组件安装的节点,一般保持默认就OK
检查各个组件的数据库
继续下一步,群集设置可以根据自己的需求更改,也可以保持默认
成功,至于上面的运行状态问题多半是,内存不足造成的,条件有限暂时就这样吧,算是整个过程搭建完毕。