一、统一配置系统环境
(除了特别提醒之外,所有步骤三台都需要安装)
配置说明
CDH需要内存要求比较高,本教程在在家用台式家16G VMware虚拟机情况下安装。
hadoop-master 8G
hadoop-node01 2G
hadoop-node02 2G
编辑hosts文件
echo -e '10.0.102.218 hadoop-master
10.0.102.133 hadoop-node01
10.0.102.136 hadoop-node02 ' >>/etc/hosts
echo -e '' >>/etc/hosts
查看hosts文件
cat /etc/hosts
关闭centos7防火墙
systemctl stop firewall
systemctl disable firewall
临时关闭selinux
setenforce 0
getenforce 0
永久关闭selinux
SELINUX=enforcing 改为 SELINUX=disabled
安装常用软件
yum -y install lrzsz nmap nc tree htop wget vim bash-completion rsync ntp sysstat telnet dos2unix unzip mlocate
yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs redhat-lsb
配置时间同步
(这里不详细说明,可以找网上的相关文档进行操作)
echo '#同步时间' >> /var/spool/cron/root
echo '*/5 * * * * /usr/sbin/ntpdate -u 10.0.61.4 >/dev/null 2>&1' >>/var/spool/cron/root
修改hostname
设置免密登录互通
ssh-keygen -t rsa
ssh-copy-id root@10.0.102.218
ssh-copy-id root@10.0.102.133
ssh-copy-id root@10.0.102.136
ssh-copy-id root@hadoop-node01
ssh-copy-id root@hadoop-node02
ssh-copy-id root@hadoop-master
查询是否安装jdk
rpm -qa openjdk
将原来的jdk卸载
rpm -e --nodeps #找到的jdk版本
安装jdk环境
推荐rpm包安装,不需要配置环境变量
二进制包配置环境变量
将java添加环境变量
sudo vim /etc/profile
# 在该文件末尾添加以下行
export JAVA_HOME=/usr/java/jdk1.8.0_162
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
检查java版本
[root@Hadoop-node01 share]# java -version
java version "1.8.0_162"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
二、安装mysql5.6(仅master需要安装)
https://blog.csdn.net/qq_35873847/article/details/78710266
创建数据库(也可以在后面根据安装的需求来创建)
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database monitor DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
grant all on *.* to root@"%" Identified by "123456";
三、配置CDH环境
安装Cloudera-Manager
解压cm tar包到指定目录所有服务器都要(或者在主节点解压好,然后通过scp到各个节点同一目录下)
tar -axvf cloudera-manager-centos7-cm5.7.6_x86_64.tar.gz -C /opt/cloudera-manager
将CM拷贝到其它节点
scp -r /opt/cm-5.7.6/ root@hadoop-node01:/opt/
scp -r /opt/cm-5.7.6/ root@hadoop-node02:/opt/
创建cloudera-scm用户(所有节点)
useradd --system --home=/opt/cm-5.7.6/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
配置从节点cloudera-manger-agent指向主节点服务器
vim /opt/cm-5.7.6/etc/cloudera-scm-agent/config.ini
将server_host改为CMS所在的主机名即Hadoop-master
主节点中创建parcel-repo仓库目录并制作本地源
mkdir -p /opt/cloudera/parcel-repo
chown -R cloudera-scm:cloudera-scm /opt/cloudera/
cp CDH-5.7.6-1.cdh5.7.6.p0.18-el7.parcel CDH-5.7.6-1.cdh5.7.6.p0.18-el7.parcel.sha manifest.json /opt/cloudera/parcel-repo
注意:其中CDH-5.7.6-1.cdh5.7.6.p0.18-el5.parcel.sha1 后缀要把1去掉
修改cm-5.7.6文件夹属主数组
chown -R cloudera-scm:cloudera-scm /opt/cm-5.7.6
所有节点创建parcels目录
mkdir -p /opt/cloudera/parcels
chown -R cloudera-scm:cloudera-scm /opt/cloudera
解释:Clouder-Manager将CDHs从主节点的/opt/cloudera/parcel-repo目录中抽取出来,分发解压激活到各个节点的/opt/cloudera/parcels目录中】
拷贝mysql-connector-java到各个节点指定目录下(所有的节点)
mkdir -p /usr/share/java/
mv mysql-connector-java-5.1.36-bin.jar /usr/share/java/mysql-connector-java.jar
初始脚本配置数据库scm_prepare_database.sh(在主节点上)
/opt/cm-5.7.6/share/cmf/schema/scm_prepare_database.sh mysql -hlocalhost -uroot -p123456 --scm-host localhost scm scm scm
说明:这个脚本就是用来创建和配置CMS需要的数据库的脚本。各参数是指:
mysql:数据库用的是mysql,如果安装过程中用的oracle,那么该参数就应该改为oracle。
-hHadoop-master:数据库建立在Hadoop-master主机上面。也就是主节点上面。
-uroot:root身份运行mysql。-123456:mysql的root密码是***。
--scm-host Hadoop-master:CMS的主机,一般是和mysql安装的主机是在同一个主机上。
最后三个参数是:数据库名,数据库用户名,数据库密码。
四、修改修改运行的参数
修改linux swap空间的swappiness
Cloudera 建议将 /proc/sys/vm/swappiness 设置为 0。
修改swappiness的值为零:
有一个问题:
运行echo 10 > /proc/sys/vm/swappiness
要永久改变
vim /etc/sysctl.conf
vm.swappiness=10
echo never>/sys/kernel/mm/transparent_hugepage/defrag
echo never>/sys/kernel/mm/transparent_hugepage/enabled
五、web界面安装
web界面一路next就行了,安装包选择那里注意不要选择从网络下载了,国内根本下载不动,要选择从本地parcel-repo仓库安装。最后一步安装软件的时候,
一定要选择最小化安装,要不然这种配置肯定会崩溃的。
总结:
整个过程安装还是比较简单的,但是需要细心,自己安装三遍才成功。最后一步安装最小化集群的出错,肯定是前期那里环境配置出了问题,
要不然就是你的电脑太渣,电脑是8G的同学但是又想学习CDH的,去阿里云买按小时计算的服务器吧,或者利用公司的服务器资源来安装。