CentOS 6.9搭建CDH 5.12.0集成环境

Cloudera Manager则是为了便于在集群中进行Hadoop等大数据处理相关的服务安装和监控管理的组件,对集群中主机、Hadoop、HiveSpark等服务的安装配置管理做了极大简化。
 
环境准备
相关包的下载地址:
Cloudera Manager地址:http://archive.cloudera.com/cm5/cm/5/
 
以下使用的操作系统为CentOS6.9,需要下载以下文件:
jdk-8u144-linux-x64.rpm
mysql-connector-java-5.1.43.tar.gz (解压其中的jar包即可)
cloudera-manager-el6-cm5.12.0_x86_64.tar
CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel
CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha1
manifest.json
 
以下操作均需要(root)管理员权限
1.网络配置(所有节点)
修改主机名:vim /etc/sysconfig/network
修改ip与主机名的对应关系:vim /etc/hosts
192.168.3.190   master 192.168.3.176   node1 192.168.3.158   node2
 
2.打通SSH,设置ssh无密码登陆(所有节点)
执行ssh-keygen -t rsa,一路回车,生成无密码的密钥对。
将公钥复制成认证文件并修改权限:
cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys
通过scp命令将认证文件拷贝到所有其他节点。
3.安装Oracle的Java(所有节点)
CentOS自带OpenJdk,不过运行CDH5需要使用oracle的JDK。
卸载自带的OpenJdk,使用rpm -qa | grep java查询java相关的包,并rpm -e --nodeps 包名卸载。
下载jdk的rpm安装包,并使用rpm -ivh 包名安装,最后配置环境变量。
rpm -ivh jdk-8u144-linux-x64.rpm
4.安装配置MySQL(主节点)
安装mysql服务,service mysqld start启动mysql服务,并根据提示设置
设置开机启动:chkconfig mysqld on
root的初始密码:mysqladmin -u root password 'xxxx'
设置root授权访问所有的数据库: grant all privileges on *.* to 'root'@'%' identified by '123' with grant option;
flush privileges;
 
5.关闭防火墙和SELinux (所有节点)
关闭防火墙:
service iptables stop (临时关闭)  chkconfig iptables off (重启后生效)
 
关闭SELINUX
setenforce 0 (临时生效)  修改 /etc/selinux/config 下的 SELINUX=disabled (重启后永久生效)
 
6.所有节点配置NTP服务 (所有节点)
集群中所有主机必须保持时间同步,如果时间相差较大会引起各种问题。
所有节点安装相关组件:yum install ntp。
完成后,配置开机启动:chkconfig ntpd on
开启服务:service ntpd start
检查是否成功,用ntpstat命令查看同步状态,出现以下状态代表启动成功:
unsynchronised
   polling server every 64 s
 
正式安装
 
解压安装 (所有节点)
cloudera manager的目录默认位置在/opt下,将包导入并解压:
tar zxf cloudera-manager-el6-cm5.12.0_x86_64.tar.gz
 
创建cloudera-scm用户(所有节点)
useradd --system --home=/opt/cm-5.12.0/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
 
为Cloudera Manager 5建立数据库 并初始化(主节点)
先将JDBC驱动 mysql-connector-java-5.1.43-bin.jar,放到/opt/cm-5.12.0/share/cmf/lib/中。
 
初始化:
/opt/cm-5.12.0/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot -p123 --scm-host localhost scm scm scm
 
修改agent配置文件(所有节点)
修改/opt/cm-5.12.0/etc/cloudera-scm-agent/config.ini中的server_host为主节点的主机名。
 
准备Parcels,用以安装CDH5
将CHD5相关的Parcel包放到主节点的/opt/cloudera/parcel-repo/目录中。
相关的文件如下:
CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha1 manifest.json
 
然后需将CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha1重命名为CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha
 
启动脚本
通过/opt/cm-5.12.0/etc/init.d/cloudera-scm-server start启动服务端。
通过/opt/cm-5.12.0/etc/init.d/cloudera-scm-agent start启动Agent服务。
 
停止服务stop,重启是restart。
 
CDH5的安装配置
Cloudera Manager Server和Agent都启动以后,就可以进行CDH5的安装配置了。
这时可以通过浏览器访问主节点的7180端口测试一下了(由于CM Server的启动需要花点时间,这里可能要等待一会才能访问),默认的用户名和密码均为admin:
 
 
 
各个Agent节点正常启动后,可以在当前管理的主机列表中看到对应的节点。选择要安装的节点,点继续。
 
接下来,出现以下包名,说明本地Parcel包配置无误,直接点继续就可以了。
 
点击,继续,如果配置本地Parcel包无误,那么下图中的已下载,应该是瞬间就完成了,然后就是耐心等待分配过程就行了。
 
接下来是服务器检查,可能会遇到以下问题: (根据提示操作即可)
Cloudera 建议将 /proc/sys/vm/swappiness 设置为 10。当前设置为 60。
已启动“透明大页面”,它可能会导致重大的性能问题。
临时解决办法:
echo 0 > /proc/sys/vm/swappiness
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
长期解决办法:将配置文件写入/etc/rc.local
 
 
接下来是选择安装服务:
 
服务配置,一般情况下保持默认就可以了(Cloudera Manager会根据机器的配置自动进行配置,如果需要特殊调整,自行进行设置就可以了):
 
 
接下来是数据库的设置,需要创建一些数据库:
mysql -uroot -pxxxx进入mysql命令行,创建以下数据库:
--hive数据库 create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci; --oozie数据库 create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci; --hue数据库 create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
 
 
问题:
1、Logon denied for user/password. Able to find the database server and database, but logon request was rejected
解决办法:创建一个新的用户并授权
grant all privileges on *.* to 'user'@'主机名' identified by '密码' with grant option;
设置root授权访问以上所有的数据库
flush privileges;
 
2、hive和oozie默认都没有带mysql的驱动,需拷贝jar包到依赖目录
hive:/opt/cloudera/parcels/CDH-5.12.0-1.cdh5.12.0.p0.29/lib/hive/lib/
oozie:/opt/cloudera/parcels/CDH/lib/oozie/libtools
 
3、如果hue连不上,会报错:Unexpected error. Unable to verify database connection.
这是因为Centos最小安装,缺了个东西:yum install -y python-lxml
 
下面是集群设置的审查页面,全部保持默认配置即可:
 
 
接下静静地等待即可。
 
原文地址:https://www.cnblogs.com/zhangyin6985/p/7357738.html