Cloudera CDH4安装方法有三种:
1、通过Cloudera Manager自动安装(只支持64bit linux操作系统);
2、通过资源包,利用Yum命令手工安装;
3、通过下载的tarball包,手工安装;
个人建议1、2两种都尝试,先2后1的方式对Hadoop的架构,内置的组件以及配置等会要一个比较清晰的了解。具体的安装可以参考官方文档(CDH4 Installation Guide和CM-4.0-free-installation-guide),我在这里说说方法1安装中(有些也适用方法2)需要注意的点,仅供学习hadoop的童鞋们一个参考:
a) 尽可能的采用Cluster部署方式,准备3-5台机器,或者在VM中3-5个系统,建议都是64bit的Linux系统,每台机器都要有独立的IP和主机名(VM中最方便,只要安装一个,其它复制即可)
b) 每台机器预先安装JAVA,并配置JAVA_HOME和修改PATH;节约安装程序自己下载及安装时间,JAVA SE 1.6以上,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
c) 安装Cloudera Manager Server的机器需要关闭SELinux;安装Postgresql(作为数据库),下载地址:http://www.postgresql.org/download/linux/。下载有些系统已自带,可以先行查看,我的redhat用yum list postgresql命令;防火墙中开发7180端口,或者直接关闭防火墙service iptables stop
d)对安装Cloudera Manager Agent的机器(即真正安装hadoop的机器):
d1) 将yum的timeout设置的足够大或者none(系统默认的是30), 我redhat的在/etc/yum.conf中配置,即增加timeout=none。这里非常重要,可能有些朋友的网络相当好,或者服务器网络稳定一次就过,但对我来说教训大,好几次都没成功,提示socket timeout错误,更严重的来了,当Cloudera Manager安装发现错误它就会回滚,一切要重新安装。而你设置timeout无限大时,就会一直尝试连接服务器,有时候安装就会卡在这,可能是网络阻塞或者yum的包缓存阻塞, 只要没回滚你就不用担心了。解决方法是:在安装界面点击“中止安装”, 回到安装机器将Cloudear Manager server机器杀掉,可以skill -9 -t pty/1(终端名称),之后清除yum缓存(yum clean all),然后回到安装界面重新安装,安装的策略是某软件只要存在就不再安装。
d2) 保证根目录(/) 有足够的空间,我linux是利用df -h查看,确保还有1G以上空间。 这里重要的是针对VM,好多时候它没有给你手工磁盘划分步骤,关于增加根目录空间可以网上找资料或者参考我的博客。
d3) 确保cyrus-sasl-gssapi已安装。 下载地址:http://asg.web.cmu.edu/sasl/sasl-library.html 或者http://rpmfind.net/linux/rpm2html/search.php?query=cyrus-sasl-gssapi
d4) 关闭防火墙。对namenode节点的机器或者其它hadoop机器,因为会有很多组件和服务,相应的就有很多端口,所有为了保证正常,可以关闭防火墙。
e) Hadoop环境大多数是用域名访问的,关于域名的解析,可以增加映射名,最后在几台hadoop的机器以及外部访问机器都加上。window下就在 C(安装盘):\Windows\System32\drivers\etc下,linux在/etc/hosts
关于方法1我的安装步骤:
1)准备:VM7.1、Redhat 5.7(64bit,有些人的机器不支持虚拟机64bit,可以查看你的cpu芯片)、Jdk1.6、cloudera-manager-installer.bin、Postgresql8.4、cyrus-sasl-gssapi
2) 用vm安装redhat,文件存储在G:\hadoop\scm-manager下。系统下安装java,配置环境变量, 配置IP地址(192.168.0.113),配置主机名scm-manager、完整域名为scm-manager.myhadoop.com,关闭防火墙,安装postgresql8.4
3) 上述系统关机,复制文件, 即在G:\hadoop下复制scm-manager, 并修改为scm-name。 在scm-name文件加下,修改scm-manager.vmx下的ethernet0.generatedAddress和uuid.bios的后3位,两个要一样,用于物理地址的修改。
4)虚拟机中启动scm-name,配置IP地址(192.168.0.114),配置主机名scm-name、完整域名为scm-name.myhadoop.com,并重启系统。注:该机器能联网
5)虚拟机中启动scm-manager, 安装cloudera manager server,按照官方流程安装即可(基本都是next操作),注:该机器能联网。
6)进行hadoop安装,任意地方的浏览器中输入:http://192.168.0.113:7180/, 进入hadoop安装界面,选择在192.168.0.114上安装hadoop,在成功安装完所有组件后不进入下一步,直接注销退出,该步骤的后一步是“主机检测”。
7)关闭192.168.0.114, 复制该虚拟机文件夹,并重新命名,同时修改物理地址,配置IP地址,配置主机名,并重启系统,(完全同第三步)具体如下;
节点1系统)G:\hadoop的文件夹:scm-node1 Ip地址:192.168.0.115 主机名:scm-node1 在/etc/hosts中加入映射名,格式为:192.168.0.115 scm-node1.myhadoop.com scm-node1
节点2系统)G:\hadoop的文件夹:scm-node2 Ip地址:192.168.0.116 主机名:scm-node2 在/etc/hosts中加入映射名,格式为:192.168.0.116 scm-node2.myhadoop.com scm-node2
备份节点系统)G:\hadoop的文件夹:scm-second Ip地址:192.168.0.118 主机名:scm-second 在/etc/hosts中加入映射名,格式为:192.168.0.118 scm-name.myhadoop.com scm-second
8) 重新进入安装界面,即第6步骤,将114、115、116、118四台机器加入,并一步一步往下完成。
9)在访问的win7操作系统的hosts文件下加入如下映射:
192.168.0.114 scm-name.myhadoop.com
192.168.0.115 scm-node2.myhadoop.com
192.168.0.116 scm-node1.myhadoop.com
192.168.0.118 scm-second.myhadoop.com
到此,hadoop安装全部完成,具体如下:
通过cloudera manager的管理控制台直接进入组件的页面,下面是hue的界面: