一 概述
CDH大数据平台基于Web的用户界面,支持大多数Hadoop组件,包括HDFS、MapReduce、Hive、Pig、 Hbase、Zookeeper、Sqoop,简化了大数据平台的安装、使用难度。
对计算机的硬件要求很高,本人使用8G内存搭建。
二 前期准备条件
虚拟机使用的是Centos7 ,总计三台,可以ping互相平通网络,免密登录等虚拟机安装以及环境配置不在详述。
第一台:cdh01 192.168.x.21 4G内存
第一台:cdh01 192.168.x.22 2G内存
第一台:cdh01 192.168.x.23 2G内存
三 搭建步骤
##因为我们是离线安装 ,首先需要下载以下文件:
http://archive.cloudera.com/cdh5/parcels/5.8.2/
https://archive.cloudera.com/cm5/repo-as-tarball/5.8.2/
文件一览:
此外,我们还需要mysql的驱动包,
1.关闭所有虚拟机的防火墙,并设置开机不启动。注意centos7的命令和之前版本有些区别。
#防火墙
查看状态: firewall-cmd --state
关闭: systemctl stop firewalld.service
设置永久关闭: systemctl disable firewalld.service
2.安装httpd,这样是为了在后面的安装中,可以从本地的机器中down我们下载好的资源。不需要从官网。
yum -y install httpd
systemctl start httpd.service
在网页中输入自己的主机的ip地址看是否成功,如下界面即成功。
2. 安装JDK,如果有openJDK的话先卸载
rpm -qa|grep jdk
rpm -e --nodeps jdk名称
其实我们下载的cm5.8.2-centos7.tar.gz中就有oracle的1.7的jdk,我们选择这个进行安装。
解压cm5.8.2-centos7.tar.gz到任意位置,解压出来的是一个cm文件夹。
因为我们安装了httpd,所以会自动生成/var/www/html文件夹,我们在此目录下创建/var/www/html/cm5/redhat/7/x86_64这个路径,这样做是为了和官网路径一样,我们把刚才解压的文件cm移动到这个路径下。
mv cm /var/www/html/cm5/redhat/7/x86_64
然后cd /var/www/html/cm5/redhat/7/x86_64/cm/5/RPMS/x86_64会发现有以下内容。
使用:rpm -ivh oracle-j2sdk1.7-1.7.0+update67-1.x86_64.rpm安装JDK,他会自动安装到/usr/java目录下,
然后cd /usr ,拷贝到其他机器:
scp -r java [email protected]:$PWD
scp -r java [email protected]:$PWD
在三台机器上配置classpath:
vi /etc/profile 三台均要操作,后添加:
export JAVA_HOME=/usr/java/jdk1.7.0_67-cloudera
export PATH=.:$JAVA_HOME/bin:$PATH
source /etc/profile
java -version查看成功失败
3.将下载好的parcel文件上传到parcels文件夹下:
cd /var/www/html
mkdir parcels
总共三个文件,将CDH-5.8.2-1.cdh5.8.2.p0.3-el7.parcel.sha1的末尾的1去掉。
mv CDH-5.8.2-1.cdh5.8.2.p0.3-el7.parcel.sha1 CDH-5.8.2-1.cdh5.8.2.p0.3-el7.parcel.sha
如果以上操作都没问题的话,我们从网页浏览:
http://192.168.9.21/cm5/redhat/7/x86_64/cm/5/ IP地址换成你自己的。
http://192.168.9.21/parcels/ 我这里5个文件,因为我放了其他版本的,正常应该3个。
4.配置yum源,网页安装时从本地获取文件,
vi /etc/yum.repos.d/cloudera-manager.repo 在其中写入:
[cloudera-manager]
name = Cloudera Manager, Version 5.8.2
baseurl = http://192.168.9.21/cm5/redhat/7/x86_64/cm/5/
gpgcheck = 0
#这样可以访问到你本地RPMS下面的三个rpm包 ,agent server daemon
四 CDH5.8.2 Install
1.安装rpm
#cd /var/www/html/cm5/redhat/7/x86_64/cm/5/RPMS/x86_64
#yum install -y cloudera-manager-daemons-5.8.2-1.cm582.p0.17.el7.x86_64.rpm
#yum install -y cloudera-manager-server-5.8.2-1.cm582.p0.17.el7.x86_64.rpm
2.配置mysql驱动包,可以直接网上down,也可以提前下载好。
cd /usr/share/java
wget http://cdn.mysql.com//Downloads/Connector-J/mysql-connector-java-5.1.37.zip
unzip mysql-connector-java-5.1.37.zip
cd mysql-connector-java-5.1.37
cp mysql-connector-java-5.1.37-bin.jar /usr/share/java/mysql-connector-java.jar
最终一定要将mysql-connector-java-5.1.37-bin.jar 改名称mysql-connector-java.jar
到 /usr/share/java的目录下。
3配置mysql,Mysql安装详情查阅:Centos7中Mysql安装。
create database cmf DEFAULT CHARACTER SET utf8;
grant all on cmf.* TO 'cmf'@'localhost' IDENTIFIED BY 'cmf_password';
flush privileges;
4修改cloudera-scm-server连接mysql
cd /etc/cloudera-scm-server
vi db.properties
# The database type
# Currently 'mysql', 'postgresql' and 'oracle' are valid databases.
com.cloudera.cmf.db.type=mysql
# The database host
# If a non standard port is needed, use 'hostname:port'
com.cloudera.cmf.db.host=localhost
# The database name
com.cloudera.cmf.db.name=cmf
# The database user
com.cloudera.cmf.db.user=cmf
# The database user's password
com.cloudera.cmf.db.password=cmf_password
启动服务:service cloudera-scm-server start
大概需要1-2分钟等待时间。
账号:admin 密码:admin
a.选择版本
b.指定主机地址 ip1,ip2,ip3
c.指定本地parcel源和本地远程仓库
使用parcels中将:第三行的框中输入:刚才能访问parcels的地址:http://你的ip/parcels/
下面选择自定义存储:写入http://你的ip/cm5/redhat/7/x86_64/cm/5/
d.JDK和单用户模式,我们都不勾选。
e.
f.
g.
h.安装parcel
i.
处理:
1.时间一致处理,网上教程很多。
2.echo 0 > /proc/sys/vm/swappiness
3.echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' >> /etc/rc.local
j.
k.
l.全都默认
m.继续即可。
出现的一些问题,以及解决方案:
1.namenode格式化失败
这意思是,当前NN的目录已经存在,手动删除即可。
在根目录下 /dfs整个删除。
2.HDFS创建/tmp目录失败
解决办法:
su - hdfs
hdfs dfsadmin -safemode leave
再次重试即可安装成功。
3》