Alex 的 Hadoop 菜鸟教程: 第2课 hadoop 安装教程 (CentOS6 CDH分支 yum方式)「建议收藏」

Alex 的 Hadoop 菜鸟教程: 第2课 hadoop 安装教程 (CentOS6 CDH分支 yum方式)「建议收藏」前提条件:系统是centos6安装之前1.安装jdkcdh5对应的jdk是oracle-jdk1.7.0_25,注意是oracle-jdk,千万别yuminstalljdk就完事了,因为那样装的是openjdk到这边http://www.oracle.com/technetwork/java/javase/downloads/java-archiv

大家好,又见面了,我是你们的朋友全栈君。

原帖地址:http://blog.csdn.net/nsrainbow/article/details/36629339

我们这个教程是在 centos  上安装cdh的教程,而且使用的是yum方式,不建议使用界面化方式,因为用过linux的都知道,命令行出错更少,其实更轻松更靠谱。

安装之前

1. 安装jdk

cdh5 对应的jdk 是 oracle-jdk 1.7.0_25 ,注意是 oracle-jdk ,千万别 yum install jdk 就完事了,因为那样装的是 openjdk

到这边 http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html#jdk-7u25-oth-JPR 搞个jdk

没用户的自己注册一个

下来之后名字是一堆乱码,自己用mv改个名字

$ sudo su -
$ mv jdk-7u25-linux-x64.rpm\?AuthParam\=1404198323_f70f74ddcd70928c1bea4ac29f5c4e42 jdk.rpm
$ rpm -ivh jdk.rpm
$ vim /etc/profile

在最后加上

export JAVA_HOME=/usr/java/jdk1.7.0_25
export PATH=$JAVA_HOME/bin:$PATH

保存后运行

$ source /etc/profile
$ echo $JAVA_HOME
/usr/java/jdk1.7.0_25

2. 配置yum源(不建议)

该种方式配置最快,但是对于长期要使用或者学习hadoop的人来说不建议采用这种方式,详情见下一种方式
$ vim /etc/yum.repos.d/cloudera-cdh5.repo

把下面这段粘贴进去

[cloudera-cdh5]
# Packages for Cloudera's Distribution for Hadoop, Version 5, on RedHat	or CentOS 6 x86_64
name=Cloudera's Distribution for Hadoop, Version 5
baseurl=http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/5/
gpgkey = http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/RPM-GPG-KEY-cloudera
enabled=1    
gpgcheck = 1

然后保存

3. 构建自己的yum源(强烈建议)

强烈建议采用这种方式,因为你学习和使用hadoop的过程是漫长的,在这个过程中cloudera的包有可能有升级了几个版本,那么你早先时候装的组件跟你后来想装的组件之间的版本有可能不一样,有些组件会检查CDH版本的统一性的,如果不通过就装不上了,或者运行起来有问题。所以为了保证整个cdh内部组件的版本一致性,最好使用这种方式安装

3.1 下载rpm文件

安装rpm文件
yum --nogpgcheck localinstall cloudera-cdh-5-0.x86_64.rpm -y 

3.2 安装apache

安装的过程我就不说了,这种教程网上一堆

3.3 安装yum-utils

yum install yum-utils createrepo -y

3.4 用yum-utils同步整个yum源

随便切换到一个目录,比如 home 目录把 但是确保你所在的目录有至少3G空间,然后执行

$ cd ~
$ reposync -r cloudera-cdh5

接下来可能是漫长的等待,取决于你的网络速度

这个命令执行完后会把整个cdh5的库(大概118个包)下载到这个目录下,大概2.3G

你会看到有一个叫 cloudera-cdh5 的文件夹生成,进入后有一个 RPMS 文件夹,里面有 noarch 和 x86_64 文件夹

[root@localhost ~]# cd cloudera-cdh5
[root@localhost cloudera-cdh5]# ll
total 4
drwxr-xr-x. 4 root root 4096 Dec 18 07:55 RPMS
[root@localhost cloudera-cdh5]# cd RPMS
[root@localhost RPMS]# ll
total 16
drwxr-xr-x. 2 root root  4096 Dec 18 16:07 noarch
drwxr-xr-x. 2 root root 12288 Dec 18 16:07 x86_64


快速下载诀窍:这边有一个诀窍,你开始执行 reposync 之后你会发现在执行这个命令的根目录会自动生成  cloudera-cdh5/noarch 目录,并开始下载包。其实我们可以直接用浏览器打开  http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/5/RPMS 你会看到有 noarch 和 x86_64 这两个文件夹,进入这两个文件夹,用迅雷把这些包全部下载下来,然后扔到centos的 cloudera-cdh5 目录下,再执行  reposync 命令,然后这些包会被一一检查,并被认为已经下载好了,并跳过。

我用的是火狐的Flashgot插件的 一键下载全部链接方式。

在 RPMS/x86_64 里面建一个文件夹 cdh  在这个文件夹里面建一个文本文件叫 RPM-GPG-KEY-cloudera
访问 http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/RPM-GPG-KEY-cloudera  把内容拷贝进去

3.5 部署到apache

把这个cloudera-cdh5文件夹整个移到apache的web目录:/var/www/html 里面去,不过请先保证空间足够大,如果不够大,记得修改apache的web目录的位置,具体怎么改自己百度下

[root@localhost ~]# mv cloudera-cdh5 /var/www/html[root@localhost ~]# cd /var/www/html[root@localhost html]# lltotal 4drwxr-xr-x. 3 root root 4096 Dec 18 07:49 cloudera-cdh5

用vim打开 /etc/httpd/conf/httpd.conf 查找到这句话

<Directory "/var/www/html">

这个节点里面的 Options 后面的文字改成 MultiViews

Options MultiViews

然后重启apache

service httpd restart

打开自己的浏览器试试看访问这个地址

http://192.168.199.126/cloudera-cdh5/RPMS/noarch/whirr-0.9.0+cdh5.2.1+12-1.cdh5.2.1.p0.6.el6.noarch.rpm

ip改成你自己的机器的ip,如果浏览器自动开始下载这个文件的话,证明调通了

3.6 构建repo库

cd 到 /var/www/html/cloudera-cdh5 然后执行 createrepo . 进行构建

[root@localhost ~]# cd /var/www/html/cloudera-cdh5/
[root@localhost cloudera-cdh5]# createrepo .

3.7 修改yum源地址

分别把两台机器的/etc/yum.repos.d/cloudera-cdh5.repo 里面的 baseurl 修改为这台机器的地址。像我就修改成这样

[cloudera-cdh5]
# Packages for Cloudera's Distribution for Hadoop, Version 5, on RedHat or CentOS 6 x86_64
name=Cloudera's Distribution for Hadoop, Version 5
baseurl=http://192.168.199.126/cloudera-cdh5/
gpgkey = http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/RPM-GPG-KEY-cloudera
enabled=1
gpgcheck = 1

注意:采用这种方式后,安装hadoop都将非常的快,但是如果有时候不能正常安装,那么你还是可以启用远程地址,建议把以下两句话用注解方式保存在这个文件里面,当你觉得可能本地库有问题,想切换为远程库的时候可以方便的切换,这个文件就变成这样

[cloudera-cdh5]# Packages for Cloudera's Distribution for Hadoop, Version 5, on RedHat or CentOS 6 x86_64name=Cloudera's Distribution for Hadoop, Version 5baseurl=http://192.168.199.126/cloudera-cdh5/gpgkey = http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/RPM-GPG-KEY-cloudera#baseurl=http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/5/#gpgkey = http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/RPM-GPG-KEY-clouderaenabled=1gpgcheck = 1

当你要切换远程库的会后把上面两行 baseurl 和 gpgkey 注释起来,下面的把注释去掉,保存退出就行,yum会立即生效不需要做什么额外的操作。


注意:如果你之前用过远程源的模式安装过hadoop,那么切换成本地源之后要删除掉yum的缓存,否则会出现要安装的组件需要的版本号比你本地的源还新,造成找不到安装文件的问题,清理方式是把 /var/cache/yum/x86_64/6/cloudera-cdh5 这个文件夹删了

0. 选择安装模式

有两种安装模式 HA 和 非HA

其实MapReduce也有两种安装模式 1.0(MRv1) 和 2.0(YARN) 国外已经主要推广 2.0了,不过国内的很多教程是按照1.0来写的,所以看教程的时候记得分辨一下看是否适合你。不过我相信国内很快也会跟上的。我推荐使用2.0,我们的教程这边也使用2.0

hadoop有两种安装模式:非HA和HA模式,非ha只是用来实验上手而已,真实环境用ha。但是ha环境配置比较复杂,容易被卡主,所以我们先用非HA模式上手一下,然后玩玩hdfs找找感觉,免得失去信心,然后再安装HA模式,所以我的教程会教你们装两次,第一次是非HA模式,第二次是HA模式,在安装HA模式之前最好换新的虚拟机,防止,之前的安装影响到新的安装

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/135298.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • java中的递归算法_java递归算法详解

    java中的递归算法_java递归算法详解Java中的递归算法虽然简单,但想要精通也是有着一定的难度的,本篇文章我们就来详细了解下递归算法。什么是递归?一般的说,递归算法是一种直接或间接地调用自身的算法。在程序中,递归算法能够使算法的描述简洁而且易于理解。递归分几类?递归通常分为两类,直接递归和间接递归:1、直接递归称为方法自身调用自己。2、间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法。递归怎么实现实现?例://递归…

  • java发送邮件mail.jar[通俗易懂]

    java发送邮件mail.jar[通俗易懂]这里短信发送是基于对mail.jar封装的jar包开发的,但是基本参数是一样的,可以参考packagecom.dw;importcom.dareway.framework.exception.AppException;importcom.dareway.framework.mail.MailInfo;importcom.dareway.framework.mail.Mail…

  • goLand 2022.01激活码-激活码分享

    (goLand 2022.01激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html…

  • BringWindowToTop(), SetForegroundWindow(), SetActiveWindow()「建议收藏」

    BringWindowToTop(), SetForegroundWindow(), SetActiveWindow()

  • TCP、UDP数据包大小的限制[通俗易懂]

    TCP、UDP数据包大小的限制[通俗易懂]1、概述首先要看TCP/IP协议,涉及到四层:链路层,网络层,传输层,应用层。  其中以太网(Ethernet)的数据帧在链路层  IP包在网络层  TCP或UDP包在传输层  TCP或UDP中的数据(Data)在应用层  它们的关系是数据帧{IP包{TCP或UDP包{Data}}}  不同的协议层对数据包有不同的称谓,在传输层叫做段(se

  • StringTokenizer类的用法「建议收藏」

    StringTokenizer类的用法「建议收藏」StringTokenizer是一个用来分隔String的应用类,相当于VB的split函数。1.构造函数publicStringTokenizer(Stringstr)publicStringTokenizer(Stringstr,Stringdelim)publicStringTokenizer(Stringstr,Stringdelim,boolean

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号