前提工作
1.安装jdk
- java -version
- javac -version
2.ssh 免密
这里master节点和其他datanode节点会略有区别。 首先说有节点均执行如下命令,遇到提示一路回车即可:
- ssh-keygen -t rsa
然后在主节点执行以下命令:
- cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
scp文件到所有datenode节点:
- scp ~/.ssh/authorized_keys root@datanode1:~/.ssh/
复制代码
3.修改主机名,修改为静态ip.
4.关闭防火墙(所有节点)
防火墙会引起hadoop相关组件通讯的各种异常。
防火墙:
- service iptables stop (临时关闭)
- chkconfig iptables off (重启后生效)
关闭SELINUX:
5.安装NTP服务(所有节点,保持服务器的时间同步)
6.安装到主节点mysql
安装好mysql后,为hadoop各组件创建数据库
-- 创建hive数据元数据库
create database metastore DEFAULT CHARACTER SET latin1;
-- 创建scm数据库
create database scm DEFAULT CHARACTER SET utf8;(在下面初始化,此处可不创建!)
-- 创建amon数据库
create database amon DEFAULT CHARACTER SET utf8;
-- 创建rmon数据库
create database rmon DEFAULT CHARACTER SET utf8;
-- 创建sentry数据库
create database sentry DEFAULT CHARACTER SET utf8;
-- 创建hue数据库
create database hue CHARACTER SET utf8;
-- 创建oozie数据库
create database oozie CHARACTER SET utf8;
最后统一赋予权限root-帐号 root123-密码master 主机名
grant all on *.* TO 'root'@'密码' IDENTIFIED BY 'root123';
7 正式安装CDH
首先下载如下 CM是集群管理工具, CDH 就是安装包
CM下载地址:http://archive.cloudera.com/cm5/cm/5/
CDH下载地址:http://archive.cloudera.com/cdh5/parcels/5.11/
7.1 安装Cloudera Manager 5
正式开工安装Cloudera Manager 5(cm5)
下载地址http://archive-primary.cloudera.com/cm5/cm/5/,根据自己的系统选择相应的版本,本次安装选用的是cloudera-manager-el6-cm5.0.0_x86_64.tar.gz。下载完成后只上传到master节点即可。然后解压到/opt目录下,不能解压到其他地方,因为cdh5的源会默认在/opt/cloudera/parcel-repo寻找 。给所有节点添加cloudera-scm用户:
useradd --system --home=/opt/cm-5.0.0/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
修改/opt/cm-5.0.0/etc/cloudera-scm-agent/config.ini 下面的serer_host
server_host=你的主机名
为Cloudera Manager 5建立数据库:
/opt/cm-5.0.0/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -P3306 -uroot -p123456 --scm-host localhost scm scm scm
格式是:scm_prepare_database.sh 数据库类型 数据库名字 服务器 端口号 用户名 密码 –scm-host Cloudera_Manager_Server所在的机器,后面那三个不知道代表什么,直接照抄官网的了。 因为我们用的是Mysql数据库,所以我们需要下载Mysql的JDBC驱动,本次从官网上下载最新稳定版:mysql-connector-java-5.1.30.tar.gz,解压之后找到mysql-connector-java-5.1.30-bin.jar放到/opt/cm-5.0.0/share/cmf/lib/目录下。 开启Cloudera Manager 5 Server端:
/opt/cm-5.0.0/etc/init.d/cloudera-scm-server start
注意server首次启动不要立即关闭或重启,因为首次启动会自动创建相关表以及数据,如果因为特殊原因中途退出,请先删除所有表以及数据之后再次启动,否则将会出现启动不成功的情况。 开启Cloudera Manager 5 Agents端。 先scp /opt/cm-5.0.0到所有datanode节点上,然后在每台机器上开启Agents端:
scp -r /opt/cm-5.0.0 root@datanode1:/opt/cm-5.0.0
等待拷贝成功,在所有datanode节点上启动:(注意必须以管理员权限启动)
sudo /opt/cm-5.0.0/etc/init.d/cloudera-scm-agent start
浏览器启动Cloudera Manager 5 控制台(默认端口号是7180),启动成功就会看到登陆页面。
https://hostnode:7180
7.2 安装CDH
安装CDH5
先下载到本地http://archive-primary.cloudera.com/cdh5/parcels/5.0.0/,这里需要下载三样东西,首先是与自己系统版本相对应的parcel包,然后是manifest.json文件。还有sha1结尾的文件。下载完成后将这两个文件放到master节点的/opt/cloudera/parcel-repo下(目录在安装Cloudera Manager 5时已经生成),注意目录一个字都不能错,接下来打开manifest.json文件,里面是json格式的配置,我们需要的就是与我们系统版本相对应的hash码,所以找到如下位置:
在这个大括号的最下面找到“hash”所对应的值。
(我是在线下载的,一直提示我hash错误)无解
将“hash”的值复制下来,把sha1结尾的文件里的hash替换掉。好了,我们的本地源制作完成了。这样基本大功告成了,再之后的操作就是控制台按照步骤安装即可。
打开http://192.168.1.101:7180,登陆控制台,默认账户和密码都是admin,安装时选择免费版,之后由于cm5对中文的支持很强大,按照提示安装即可,如果系统配置有什么问题在安装过程中会有提示,根据提示给系统安装组件就可以了。
如果在安装时选择了安装Hive,可能会遇到安装失败的问题,查看一下日志发现时安装Hive时需要安装JDBC驱动,所以同样我们将Mysql的驱动包拷贝到/opt/cloudera/parcels/CDH-5.0.0-1.cdh5.0.0.p0.47/lib/hive/lib/目录下,之后再继续安装就不会遇到问题了。