离线安装 Cloudera ( CDH 5.x )
要配置生产环境前,最好严格按照官方文档/说明配置环境。比如,官方说这个安装包用于RETHAT6, CENTOS6,那就要装到6的版本下,不然很容易出现各种各样的错。
配置这个CDH5我入了很多坑,最重要的有2点
1. HP GEN9 DL60服务器装CentOS系统, 开始想装7的版本, 官方只说支持到6. 经过各种折腾确实装好了(后面会单开一章写服务器装CentOS7)
2. CDH暂不官方支持CentOS 7, 查到国外有人是安装成功了,但是会有各种小问题需要息解决. 如7带的是python2.7, 而CDH5还是用的2.6, 所以会有包缺失. 所以最终我还是把我的服务器重装回6.5了
==================准备安装==========================
1. 查看并下载最新的CDH版本: http://archive.cloudera.com/cdh5/parcels/latest/ ( 20150530时还是5.3.3的版本), 如果是CentOS6, 则下载带el6的.

需要下载的文件有三个, 对应的parcel, parcel.sha1, manifest.json
下载完.sha1后改后缀为.sha
2. 下载对应的CM版本: http://archive-primary.cloudera.com/cm5/cm/5/ (如上面看到是5.3.3, 则推荐下载对应的版本的CM版本)

3. 下载oracle java JDK, 我使用的是1.7
http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.rpm
下载完后把这些文件全部上传到局域网内的FTP上
4. 用记事本准备好会使用的配置, 命令, 可以把下面的内容全部copy下来备用:
hosts文件配置:
192.168.10.250 n1
192.168.10.212 n2
192.168.10.213 n3
192.168.10.214 n4
192.168.10.215 n5
192.168.10.216 n6
192.168.10.217 n7
192.168.10.218 n8
192.168.10.219 n9
我的机器就只有4台, 但hosts文件可多配几个, 以备以后添加时不需要每个机器去修改. 其中n1为namenode, 其于全作为datanode
==================环境设计 ====================
namenode: E5 24G 内存 服务器一台
datanode : i5/i7 8G/16G内存 PC 3台
全部安装最小化的CentOS 6.5
==================系统环境准备====================
步骤一, 配置所有节点( 包含 namenode和datanode)
以下操作全部使用root帐户
1. 修改网络配置(所有节点)
1.1 修改hostname
#vi /etc/sysconfig/network
NETWORKING=yes HOSTNAME=n1
改好后执行: service network restart生效
1.2 修改hosts文件
#vi /etc/hosts
插入上面设计好的hosts文件(必须包含本机IP与主机名的映射)
192.168.10.250 n1
192.168.10.212 n2
192.168.10.213 n3
192.168.10.214 n4
192.168.10.215 n5
192.168.10.216 n6
192.168.10.217 n7
192.168.10.218 n8
192.168.10.219 n9
2. 安装wget工具到所有节点
#yum install wget
3. 安装Java JDK
3.1 下载 JDK
#cd /home
#wget ftp://192.168.10.211/public/jdk-7u79-linux-x64.rpm
3.2 安装 JDK
#rpm -ivh jdk-7u79-linux-x64.rpm
#echo "JAVA_HOME=/usr/java/latest/" >> /etc/environment
3.3 删除 JDK 安装文件
#rm -rf jdk-7u79-linux-x64.rpm
4. 关闭防火墙和SELinux
4.1 关闭防火墙
#service iptables stop
#chkconfig iptables off
4.2 关闭SELinux
#setenforce 0
#vi /etc/selinux/config
SELINUX=disabled
5. 安装并配置ntp服务
5.1 安装ntp服务(所有节点都安装)
#yum install ntp
5.2 配置ntp服务(除n1外的节点按下配置)
删除默认文件配置的server, 仅添加n1
#vi /etc/ntp.conf
restrict default kod nomodify notrap nopeer noquery
restrict - default kod nomodify notrap nopeer noquery
#主节点的主机名或ip
server n1
5.3 启动ntp服务
#service ntpd start
#chkconfig ntpd on
6. 安装 mysql connector
#yum install mysql-connector-java.noarch
7. 准备好scm帐户
#useradd --system --home=/opt/cm-5.3.3/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
注意--home=/opt/cm-5.3.3要对应你安装的版本
步骤二, 配置namenode (n1)
1. SSH无密码登录(只需要主机可以无密码登录所有子节点就行了)
1.1 在n1机器生成公钥文件
#ssh-keygen -t rsa
一路回车直到生成密码成功, 如下图:

1.2 把公钥添加到认证文件中
#cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
1.3 设置认证文件权限(极重要)
#chmod 600 ~/.ssh/authorized_keys
1.4 拷贝认证文件到所有datanode(n2,n3,n4)节点
#scp ~/.ssh/authorized_keys root@n2:~/.ssh/
1.5 测试是否可以无密码登录
#ssh n2
如果没有提示密码, 直接登录了n2则说名配置成功了
2. 安装并配置 mysql
2.1 安装 mysql
#yum install mysql-server
#service mysqld start
#chkconfig mysqld on
2.2 配置 mysql
#mysqladmin -u root password '{psd}'
2.3 准备数据库
#mysql -uroot -p{psd}
#hive
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
#activity monitor
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
授权数据库访问
grant all privileges on *.* to 'root'@'n1' identified by 'root' with grant option;
flush privileges;
3. 安装ntp服务
3.1 如第一步骤中的安装方法安装ntp服务
#yum install ntp
3.2 配置ntp服务
#vi /etc/ntp.conf
restrict default nomodify notrap server .cn.pool.ntp.org prefer server 127.127.1.0
fludge 127.127.1.0 stratum
我选的是1.cn.pool.ntp.org这个Server, 每个机房线路可能延迟不太一样, 各自找比较快的ntp的服务.
3.3 启动ntp服务
#service ntpd start
#chkconfig ntpd on
注意: ntp同步一般需要等待5-10分钟, 可用ntpstat命令查看同状态
主节点查看应该如下是个外网地址:

其它节点查看应该是主节点IP:

==================准备部署 ====================
以下全在主节点用root帐户操作
1. 从内网FTP上下载CM5, 并解压到/opt
#cd /opt
#wget ftp://192.168.10.211/public/cloudera-manager-el6-cm5.3.3_x86_64.tar.gz
#tar -xzvf cloudera-manager-el6-cm5.3.3_x86_64.tar.gz
2. 准备 Parcels
一定要安装到/opt/cloudera/parcel-repo中
#cd /opt/cloudera/parcel-repo/
#wget ftp://192.168.10.211/public/CDH-5.3.3-1.cdh5.3.3.p0.5-el6.parcel
#wget ftp://192.168.10.211/public/CDH-5.3.3-1.cdh5.3.3.p0.5-el6.parcel.sha
#wget ftp://192.168.10.211/public/manifest.json
3. 修改agent配置
#vi /opt/cm-5.3.3/etc/cloudera-scm-agent/config.ini
server_host=n1
4. 拷贝agent到各datanode节点(n2-n4)
#scp -r /opt/cm-5.3.3 root@n2:/opt/
5. 初始化数据库
/opt/cm-5.3.3/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot -p{psd} --scm-host localhost scm scm scm
==================部署 ====================
1. 在namenode启动server和agent(主节点也是要做到集群中的, 所以主节点也要开启Agent)
#/opt/cm-5.3.3/etc/init.d/cloudera-scm-server start
#/opt/cm-5.3.3/etc/init.d/cloudera-scm-agent start
2. 在所有datanode启动agent
#/opt/cm-5.3.3/etc/init.d/cloudera-scm-agent start
3. 在局域网内访问: http://192.168.10.250:7180/cmf/login, 如果你是windows可以修改hosts文件后用: http://n1:7180/cmf/login
默认帐号密码:admin
选择Free版本


4. 选择需要部署的机器

5. 选择安装包

6. 部署完成

7. 服务器检查

这里有个问题: Cloudera 建议将 /proc/sys/vm/swappiness 设置为 0, 当前设置为 60.
#echo 0 > /proc/sys/vm/swappiness 即可解决。
7.2 JAVA JDK 版本不匹配( 最佳好像是75?), 问题不是很大
8. 选择安装服务

9. 后面基本一路配置下去直到结束
10. 可能出的错
10.1 Hive还是Hue启动不起来, 提示ImportError: libxslt.so.1 ... 其实真正的错是缺少libxml2. 但是用yum install libxml2并不能解决的, 要用yum install libxml2-python
10.2 Hue起不来还有一个可能是没有装libxslt, 请用yum install libxslt.x86_64
10.3 HDFS或是别的经常会有启动错误. 不用一直停在那个安装服务界面. 你可以进入http://n1:7180/home, 点Hosts, 然后一个个把节点的role启动起来
10.4 NFS 有可能启不起来, 查看日志显示:
No portmap or rpcbind service is running on this host. Please start portmap or rpcbind service before attempting to start the NFS Gateway role on this host.
需要安装rpcbind: yum install rpcbind.x86_64
离线安装 Cloudera ( CDH 5.x )的更多相关文章
- 离线安装 Cloudera ( CDH 5.x )(转载)
要配置生产环境前,最好严格按照官方文档/说明配置环境.比如,官方说这个安装包用于RETHAT6, CENTOS6,那就要装到6的版本下,不然很容易出现各种各样的错. 配置这个CDH5我入了很多坑: C ...
- CentOS 6.4 离线安装 Cloudera 5.7.1 CDH 5.7.1
因为项目开发需要要在本地组建一个Hadoop/Spark集群,除了Hadoop/Spark还要同时安装多个相关的组件,如果一个个组件安装配置,对于一个由多台服务器组成的集群来说,工作量是巨大的. 所以 ...
- 离线安装Cloudera Manager 5和CDH5(最新版5.1.3) 完全教程
关于CDH和Cloudera Manager CDH (Cloudera's Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloud ...
- 离线安装 Cloudera Manager 5 和 CDH5.10
关于CDH和Cloudera Manager CDH (Cloudera's Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloud ...
- 离线安装Cloudera Manager 5和CDH5(最新版5.9.3) 完全教程(六)CM的安装
一.角色分配 Cloudera Manager Agent:向server端报告当前机器服务状态. Cloudera Manager Server:接受agent角色报告服务状态,以视图界面展现,方便 ...
- 离线安装Cloudera Manager 5和CDH5(最新版5.9.3) 完全教程(一)环境说明
关于CDH和Cloudera Manager CDH (Cloudera's Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloud ...
- 离线安装Cloudera Manager 5和CDH5
关于CDH和Cloudera Manager CDH (Cloudera's Distribution, including Apache Hadoop),是Cloudera 完全开源的Hadoop ...
- 离线安装Cloudera Manager5.3.4与CDH5.3.4(二)
Cloudera Manager Server和Agent所有后发先至.也能够进行CDH5的安装和配置. 然后,主节点可以通过浏览器访问7180port测试(因为CM Server需要花时间来启动,可 ...
- 离线安装Cloudera Manager5.3.4与CDH5.3.4
文章转载:http://www.aboutyun.com/thread-14024-1-1.html 前期准备工作(系统环境搭建) 操作系统:CentOS 6.5 x64 CPU*2 64G 300G ...
随机推荐
- ORA-07445&ORA-00108错误案例
由于需要ORACLE的UAT测试环境,克隆了虚拟机后,修改IP地址后,启动实例遇到了ORA-07445 &ORA-00108错误. 案例环境: SQL> select * from ...
- Linux简介及常用命令使用1--linux环境搭建
1.先安装:VMWare10软件 VMware Workstation是一款功能强大的虚拟机软件,可以使你在一台机器上同时运行二个或更多Windows.DOS.LINUX系统,并进行开发.测试.部署新 ...
- RedHat Linux 9.0的安装+入门指南(图文并茂)
一,准备工作1,购买或下载Redhat9的安装光盘(3张盘)或镜像文件2,在硬盘中至少留2个分区给安装系统用,挂载点所用分区推荐4G以上,交换分区不用太大在250M左右比较适合,文件系统格式不论,反正 ...
- 解决内网主机ping不通网关能ping内网
有一台笔记本电脑可以自动获取IP,可以和内网其他主机互相PING通,就是PING 不通网关,只能上内网,不能上外网,IP换到其他主机上也可以上外网,说明路由器上没什么限制.路由器也查了,电脑也重装了, ...
- Qt model和tableview的使用
QT中的model和tableview都是采用index索引 index含有两个成员变量一个是row 一个是column 对应该索引的行号.列号 model提供数据 view提供视图 ...
- 必须知道的八大种排序算法【java实现】(三) 归并排序算法、堆排序算法详解
一.归并排序算法 基本思想: 归并(Merge)排序法是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个子序列,每个子序列是有序的.然后再把有序子序列合并为整体有序序列. 归并 ...
- 类似material design的电影应用源码
这个源码应用是一款大家比较熟悉的类似material design的电影应用源码,源码Material-Movies,material design风格的电影应用,这个应用的目的其实是为了讲解作者一篇 ...
- System.getProperty()引起的悲剧--您的主机中的软件中止了一个已建立的连接
我已无法形容此刻我的心情.. 本来是已经写好的netty5的demo程序,server和client之间创建tcp长连接的..然后随便传点数据的简单demo..然后今天试了一下tcp粘包的例子,用到了 ...
- C语言中内存分配那些事儿
C程序的内存结构 C语言的之所以复杂,首先它的内存模型功不可没.不像某些那样的高级语言只需要在使用对象的时候,用new创建.所有之后的事情,你不需要操心.对于C语言,所有与内存相关的东西,都需要熟悉, ...
- Nagios 自定义插件与安装使用之监控dead datanodes
现在我使用nagios来监控hadoop的核心进程,rm,nm,dn,nn,zkfc,jn,zk等,但是有时候进程虽然还在,但是日志不刷新,web ui上可以看到有些datanodes节点已经变为de ...