前言
闲暇之时,羚羊给大家分享一下羚羊在Centos7 下安装Cloudera Manager 6.3.0和cloudera cdh 6.3.2的过程和安装过程中遇到的坑。至于为什么要选择CDH,Cloudera Manager和cdh是什么,之间又是什么关系,在这里羚羊就不做介绍了。
为什么选择CDH6.3.2这个版本,给大家看个Cloudera公司今年初发布的消息:
上面大概是说6.3.3版本以上,需要许可证,有帐号才能下载安装包,意思就是收费。所以羚羊就安装了6.3.2。至于为什么用的是Cloudera Manager 6.3.0,其实没什么问题。Cloudera Manager和CHD之间的版本兼容方面,官方是这么说:
对于Cloudera Manager和CDH,Cloudera公司使用主版本和次版本来管理:主版本+次版本+维护版本,像Cloudera Manager 6.3.0,它的主版本是6,次版本是3,维护版本是0。然后版本兼容规则是这样:Cloudera Manager <主要> + <次要>版本必须始终等于或大于CDH <主要> + <次要>版本。较旧版本的Cloudera Manager可能识别不出CDH的高版本安装包来,就是不兼容。当然,最好也不要使用高版本的Cloudera Manager去安装低版本的CDH。更多信息大家多花时间去看看官网就获取更多的消息了。下面羚羊开始记录羚羊的安装过程。
安装
Cloudera Manager 6.3.0安装
由于在线安装下载比较慢,羚羊都先下载到本地后离线安装啦。
环境:IP | HostName | OS | 安装用户 | 备注 |
10.111.15.162 | cdh6-master | CentOS 7.5 | hadoop | |
10.111.15.163 | cdh6-slave1 | CentOS 7.5 | hadoop | |
10.111.15.164 | cdh6-slave2 | CentOS 7.5 | hadoop | |
10.111.15.166 | cdh6-slave3 | CentOS 7.5 | hadoop | |
10.111.15.167 | mysql数据库 | CentOS 7.5 | hadoop | 也可以跟CM master同一台机器 |
hosts配置
在hosts文件末尾加配置:sudo vim /etc/hosts
10.111.15.162 cdh6-master 10.111.15.163 cdh6-slave1 10.111.15.164 cdh6-slave2 10.111.15.166 cdh6-slave3JDK安装
cd /usr/java
tar -xvf jdk-8u251-linux-x64.tar.gz
vim ~/.bash_profile
加入内容:
export JAVA_HOME=/usr/java/jdk1.8.0_251
export PATH=$JAVA_HOME/bin:$PATH
export JRE_HOME=$JAVA_HOME/jre
source ~/.bash_profile
验证是否安装成功:java -version
注意:一定要64位,如果系统是64位,不然启动hdfs的时候会提示:libhadoop.so.1.0.0 无法加载的问题,原因是libhadoop依赖 64位的libjvm.so
关闭selinux
sudo vim /etc/selinux/config
SELINUX=disabled
安装依赖
sudo yum install -y bind-utils psmisc libxslt cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs httpd mod_ssl openssl-devel python-psycopg2 MySQL-python /lib/lsb/init-functions libpq.so.5
wget http://www.percona.com/redir/downloads/Percona-XtraDB-Cluster/5.5.37-25.10/RPM/rhel6/x86_64/Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm
sudo rpm -ivh Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm
sudo yum install python27
SSH免登录配置
当前目录执行:ssh-keygen 在/home/用户/.ssh下生成公私钥 cd /home/hadoop/.ssh
ssh-copy-id -p 41122 -i ./id_rsa.pub hadoop@cdh6-master
ssh-copy-id -p 41122 -i ./id_rsa.pub hadoop@cdh6-slave1
ssh-copy-id -p 41122 -i ./id_rsa.pub hadoop@cdh6-slave2
ssh-copy-id -p 41122 -i ./id_rsa.pub hadoop@cdh6-slave3
NTP安装
sudo yum -y install ntp
sudo /etc/ntp.conf
## 加入时间服务器:
server 0.asia.pool.ntp.org
server 1.asia.pool.ntp.org
server 2.asia.pool.ntp.org
server 3.asia.pool.ntp.org
PS: 或在https://www.pool.ntp.org/zone/asia找最适合的时间服务器
sudo service ntpd restart
查看与时间同步服务器的时间偏差:ntpdc -c loopinfo
查看当前同步的时间服务器:ntpq -p
查看状态:ntpstat
安装 6.3.0yum源
所有节点上执行:
sudo curl -o /etc/yum.repos.d/cloudera-manager.repo https://archive.cloudera.com/cm6/6.3.0/redhat7/yum/cloudera-manager.repo
rpm --import https://archive.cloudera.com/cm6/6.3.0/redhat7/yum/RPM-GPG-KEY-cloudera
各节点安装mysql驱动
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz
# 解压
tar -zxf mysql-connector-java-5.1.46.tar.gz
# 放到指定目录
(一定要改名为mysql-connector-java.jar)sudo cp mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar /usr/share/java/mysql-connector-java.jar
master节点安装cloudera-manager server
sudo yum localinstall ./cloudera-manager-daemons-6.3.0-2117683.el7.x86_64.rpm ./cloudera-manager-server-6.3.0-2117683.el7.x86_64.rpm
cloudera-manager-server -y
cd /opt/cloudera/cm
可以看到安装目录下很多文件:
查看是否成功rpm -qa|grep cloudera-manager
连接数据库配置
sudo vim /etc/cloudera-scm-server/db.properties
创建数据库
各角色如:scm、amon、rman、hue、metastore、sentry、nav、navms、oozie,需要用到数据。需要先创建好
CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE hive DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
数据库跟master不在同一台机器上,需要授权访问
grant all privileges on *.* to "hadoop"@"101.111.14.123" identified by "xxxxxx" with grant option;
grant all privileges on *.* to "scm"@"master.cdh6" identified by "xxxxxx" with grant option;
flush privileges;
master节点上执行脚本
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h 10.111.15.167 --scm-host cdh6-master scm scm
PS:开启gtid模式,可能会报错:Error Code: 1786 Statement violates GTID consistency: CREATE TABLE ... SELECT
启动
sudo systemctl start cloudera-scm-server
查看启动日志
sudo tail -100f /var/log/cloudera-scm-server/cloudera-scm-server.log
各从节点安装Agent
sudo yum localinstall ./cloudera-manager-agent-6.3.0-2117683.el7.x86_64.rpm ./cloudera-manager-daemons-6.3.0-2117683.el7.x86_64.rpm cloudera-manager-agent -y
修改所有子节点的CM主机地址
sudo vim /etc/cloudera-scm-agent/config.ini
# 将server_host修改为CM-Server所在的主机名
server_host=cdh6-master
启动
sudo systemctl start cloudera-scm-agent
查看日志
sudo tail -100f /var/log/cloudera-scm-agent/cloudera-scm-agent.log
登录(admin/admin)
http://10.111.15.162:7208/ 出现登录界面说明master安装成功CDH 6.3.2安装
下载CDH6安装包
下载地址:https://archive.cloudera.com/cdh6/6.3.2/parcels/
只下载红圈文件即可,其中7代表centos7
#全部下载
nohup sudo wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/cdh6/6.3.2/parcels/ -P /var/www/html/cloudera-repos &
nohup sudo wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/gplextras6/6.3.2/parcels/ -P /var/www/html/cloudera-repos &
安装Apache HTTP Server
sudo yum install httpd
启动
systemctl start httpd
界面向导安装
登录http://10.111.15.162:7208/
选择已安装好的agent节点:
官方建议在master机器上安装Hue
上图是启动服务后的界面效果,配置方面还需要调整和优化。羚羊运气不太好,所以安装过程遇到很多问题,下面羚羊就分享比较有代表性的问题
问题
一、安装CDH时出现:com.cloudera.server.web.cmf.csrf.CsrfRefererInterceptor: Rejecting request originating from [url] refering [url]
解决:在安装CMS目录下(/opt/cloudera/cm)注释掉CsrfRefererInterceptor bean vim ./webapp/WEB-INF/spring/mvc-config.xml二、安装agent出现问题:
解决: wget http://www.percona.com/redir/downloads/Percona-XtraDB-Cluster/5.5.37-25.10/RPM/rhel6/x86_64/Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm rpm -ivh Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm三、测试hue数据库连接异常:
对应异常日志:
解决:
下载或从别的机器copy libmysqlclient.so.18包
sudo ln -s /usr/lib64/mysql/libmysqlclient.so.18.0.0 /usr/lib64/mysql/libmysqlclient.so.18
sudo vim /etc/ld.so.conf
#加libmysqlclient.so.18所在的目录
/usr/lib64/mysql
sudo ldconfig
四、角色启动目录权限问题
解决: 其它角色启动如果有目录权限问题,一样先要创建工作根目录即可解决五、web界面经常报"查询 Service Monitor 时发生内部错误
解决:原因是内存太小,资源管理配置下堆栈大小
【版权声明】
本文版权归作者(深圳伊人网网络有限公司)和云海天共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。如您有任何商业合作或者授权方面的协商,请给我留言:siqing0822@163.com