接着上一篇继续安装CDH环境
三、安装CM和CDH
3.1 CDH下载
以CentOS7.5和CDH5.16.1举例
3.1.1 cm的tar包下载
下载地址:http://archive.cloudera.com/cm5/repo-as-tarball/5.16.1/
请选择需要的版本。
3.1.2 parcels包下载
下载地址:http://archive.cloudera.com/cdh5/parcels/5.16.1/
请选择对应的版本,el7,并将后缀.sha1更改为.sha。
3.1.3 创建本地源
在/var/www/html下创建一个cdh_repo文件夹,并将上述下载的4个文件上传到该目录下
http://cm.cdh.com/cdh_repo/
vim /etc/yum.repos.d/cloudera-manager.repo
[cloudera-manager]
name = Cloudera Manager, Version 5.7.0
baseurl = http://cm.cdh.com/cdh_repo/cm/5.16.1/
gpgcheck = 0
注意:一定要复制到其他节点上,否则安装CDH会报错。。。
scp cloudera-manager.repo [email protected]:/etc/yum.repos.d/
scp cloudera-manager.repo [email protected]:/etc/yum.repos.d/
scp cloudera-manager.repo [email protected]:/etc/yum.repos.d/
3.2 安装CM
3.2.1 安装服务
进入上述创建的CM的文件目录下
/var/www/html/cdh_repo/cm/5.16.1/RPMS/x86_64
安装cloudera-manager-daemons-5.16.1-1.cm5161.p0.1.el7.x86_64.rpm
[root@cm x86_64]#
yum install cloudera-manager-daemons-5.16.1-1.cm5161.p0.1.el7.x86_64.rpm
安装cloudera-manager-server-5.16.1-1.cm5161.p0.1.el7.x86_64.rpm,请注意,不用安装db版本的,那是使用默认数据库的,在生产环境中一般不使用,生产环境中是使用MySQL数据库的。
[root@cm x86_64]#
yum -y install cloudera-manager-server-5.16.1-1.cm5161.p0.1.el7.x86_64.rpm
3.2.2 在MySQL中创建元数据库并上传jar包
【mysql数据我这里统一安装在master.cdh.com机器上】
在MySQL中创建元数据库
create database cmf DEFAULT CHARACTER SET utf8;
create database amon DEFAULT CHARACTER SET utf8;
create database hive DEFAULT CHARACTER SET utf8;
create database oozie DEFAULT CHARACTER SET utf8;
create database hue DEFAULT CHARACTER SET utf8;
grant all on cmf.* TO 'cmf'@'%' IDENTIFIED BY '123456';
grant all on amon.* TO 'amon'@'%' IDENTIFIED BY '123456';
grant all on hive.* TO 'hive'@'%' IDENTIFIED BY '123456';
grant all on oozie.* TO 'oozie'@'%' IDENTIFIED BY '123456';
grant all on hue.* TO 'hue'@'%' IDENTIFIED BY '123456';
flush privileges;
将mysql-connector-java-5.1.27.jar上传到/usr/share/java目录,并且master也必须上传到这个目录,再改名字或者软连接为mysql-connector-java.jar
否则后面安装hive等连接数据库测试会报错的。。。
3.2.3 修改CDH关于数据库的配置文件
[root@cm java]# vim /etc/cloudera-scm-server/db.properties
红色方框为修改部分
3.2.4 启动cloudera-scm-server服务并查看日志
启动命令:systemctl start cloudera-scm-server.service
systemctl status cloudera-scm-server.service
启动失败报错:
错误1:
查看日志:[root@cm ~]# cd /var/log/cloudera-scm-server/
说没有设置JAVA_HOME
但是我明明设置了的呀
原来是在CDH的cloudera-scm-server启动脚本中添加JAVA_HOME环境变量
vim /etc/rc.d/init.d/cloudera-scm-server
export JAVA_HOME=/usr/local/software/java/jdk1.8.0_181
错误2:Could not load requested class : com.mysql.jdbc.Driver
将mysql-connector-java-5.1.27.jar放到路径/usr/share/cmf/lib目录下
再重新启动就不报错了。。。
3.3安装CDH
0、登录管理页面
浏览器输入:http://cm.cdh.com:7180/cmf/login
登录CM的web界面,账号和密码均为admin
1、点“√”同意后,“继续”
2、我这里选择了免费的
3、直接“继续”
4、输入所有主机名
点击图中的“搜索”按钮
5、选择CDH版本
Parcel路径选择:http://cm.cdh.com/cdh_repo/
自定义存储库:http://cm.cdh.com/cdh_repo/cm/5/
6、是否需要安装JDK,默认不进行安装,直接下一步
7、是否启用单用户模式,可以自由选择
8、提供 SSH 登录凭据,可以自由选择,这里直接使用root用户
9、进行集群安装,如果安装失败可以点击详细信息查看失败原因,解决后再重新安装
报错could not contact scm server at localhost:7182, giving up
waiting for rollback request
解决方法:sudo mv /usr/bin/host /usr/bin/host.bak 在报错的机器上都执行
10、安装选定Parcel
先前配置的Parcel就作用于此处,如果不进行此配置会去官网进行下载,对网络要求很高,并网络中断后会重新下载,较麻烦,使用此配置可以直接下载成功,并速度很快:
如果一直卡在这里不动,那么就要去看看后不是有报错
去slave1.cdh.com机器看日志,日志所在目录:/var/log/cloudera-scm-agent
解决方法:删除agent目录下面的cm_guid文件,并重启失败节点的agent服务恢复。
cm-guid文件的位置是/var/lib/cloudera-scm-agent/cm_guid
[root@slave1 ~]# cd /var/lib/cloudera-scm-agent/
[root@slave1 cloudera-scm-agent]# rm -rf cm_guid
[root@slave1 cloudera-scm-agent]# service cloudera-scm-agent restart
这才算完全成功。
11、检查机器环境失败
http://cm.cdh.com:7180/cmf/add-hosts-wizard/wizard#step=hostInspectorStep
重新打开一个浏览器的tab页http://cm.cdh.com:7180/
会自动跳到http://cm.cdh.com:7180/cmf/clusters/2/status
点击左侧“3主机”
随便再点一台机器进去看
将/usr/local/software/java/jdk1.8.0_181填入保存,每台机器都需要操作
重新验证
12、添加服务
http://cm.cdh.com:7180/cmf/hardware/hosts
13、安装组件服务,选择所有
这里的用户名密码,填的就是我们在3.2.2中设置的
3.4安装目录
在使用过程中,可能安装完了不知道服务具体安装到哪个目录去了,其实,所有的服务都在以下目录中:
/opt/cloudera/parcels/CDH-5.16.1-1.cdh5.16.1.p0.3/lib/