欢迎投稿

今日深度:

hadoop的安装,

hadoop的安装,


 

一,下载相关软件

Jdk Hadoop

二,定义一个公共账号

我们经常说,从一个节点访问另一个节点,其实是从一个用户账户访问另一个用户账号。对于hadoop,所有的节点都使用相同的账号名。因此,我们先创建一个用户。这里使用的是hadoop。

三,安装SSH

我们知道在hadoop集群中,需要指定一个服务器作为主节点。他作为一个基站,负责联络并激活所有从节点上的DataNode和JobTracker的守护进程。因此,这台主节点能远程访问到集群的每个节点。

为此,hadoop使用了无口令的SSH协议。SSH采用标准的公钥加密来生成一对用户验证密钥。--一个公钥、一个私钥。公钥被本地存储在集群的每个节点上,私钥由主节点在试图访问远端节点时发送过来。结合这两段信息,目标机可以对这个登录尝试进行验证。

(1)检验是否已经安装SSH

(2)生成SSH密钥对。验证了SSH在集群上是否正确安装以后,我们使用主机节点上的SSH-keygen来生成一个RSA密钥对。

(3)检验SSH是否配置成功

四,配置Hadoop

下载hadoop,这里使用的是hadoop1.2.1版本。

将hadoop解压缩

使用ls命令查看hadoop的结构

Conf文件夹放的是hadoop的配置文件。

我们再查看一下conf文件夹下面的文件的详细信息。

首先,我们要做的事情就是指定hadoop集群上所有节点的JAVA的位置,即在hadoop-env.sh中定义JAVA_HOME环境变量使之指向JAVA安装目录。在服务器上,我们将其指定为

ExportJAVA_HOME= /home/hadoop/hadoop/jdk

在hadoop-env.sh文件中还包含定义hadoop环境的其他变量,但是JAVA_HOME是唯一在开始需要配置的。其他变量在默认设置下也能正常工作。在这个文件下,还可以配置其他的东西,如日志目录的位置,JAVA类所在的目录。

Hadoop的设置主要包含在XML配置文件中。在0.20版以前,他们是hadoop-default.xml和hadoop-site.xml.顾名思义,hadoop-default.xml中包含了hadoop会使用的默认设置,除非这些设置在hadoop-site.xml被显示地覆盖。因此,在实际操作中你只需要处理hadoop-site.xml。在版本0.20中,这个文件被分离成3个XML文件:core-site.xml,hdfs-site.xml与mapred-site.xml。在hadoop的早期版本,这些配置都在hadoop-site.xml中修改。

五,安装jdk

下载jdk,这里使用的是jdk1.7版本。

将jdk解压缩

配置环境变量

/etc/profile

修改完配置文件使其立即生效,可以使用命令:

. /etc/profile

Source/etc/profile

设置安装的jdk为默认版本

第四步:配置默认JDK版本

由于ubuntu中可能会有默认的JDK,如openjdk,所以,为了将我们安装的JDK设置为默认JDK版本,还要进行如下工作。
执行代码:

[plain]view plaincopy

 

1        sudoupdate-alternatives --install /usr/bin/java java /usr/lib/jvm/java-7-sun/bin/java300 

2        sudoupdate-alternatives --install /usr/bin/javac javac/usr/lib/jvm/java-7-sun/bin/javac 300 

3        sudoupdate-alternatives --install /usr/bin/jar jar /usr/lib/jvm/java-7-sun/bin/jar300  

4        sudoupdate-alternatives --install /usr/bin/javah javah/usr/lib/jvm/java-7-sun/bin/javah 300  

5        sudoupdate-alternatives --install /usr/bin/javap javap/usr/lib/jvm/java-7-sun/bin/javap 300  


执行代码:

[plain]view plaincopy

 

6        sudoupdate-alternatives --config java 


系统会列出各种JDK版本,如下所示:

[plain]view plaincopy

 

7        snowdream@snowdream:~$sudo update-alternatives --config java 

8        有 3 个候选项可用于替换 java (提供 /usr/bin/java)。 

9          

10        

11        选择       路径                                    优先级  状态 

12      ------------------------------------------------------------ 

13      * 0           /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061     自动模式 

14        1           /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061     手动模式 

15        2           /usr/lib/jvm/java-6-sun/jre/bin/java       63       手动模式  

16        3           /usr/lib/jvm/java-7-sun/bin/java           300       手动模式 

17        

18        

19      要维持当

 

检验配置是否成功。使用java –version,如果能显示正确的信息,则说明配置成功。

六,单机模式

单机模式是hadoop的默认模式。当首次解压hadoop的源码包时,hadoop无法了解硬件安装环境,便保守地选择了最小配置。在这种默认模式下所有的3个XML文件均为空。

当配置文件为空时,hadoop会完全运行在本地。因为不需要与其他节点交互,单机模式就不使用HDFS,也不加载任何hadoop的守护进程。该模式主要用于开发调试MapReduce程序的应用逻辑,而不会与守护进程交互,避免引起额外的复杂性。

七,伪分布模式

伪分布模式在“单节点集群”上运行hadoop,其中所有的守护进程都运行在同一台机器上。该模式在单机模式之上增加了代码调试功能,运行检查内存使用情况,HDFS输入,以及其他的守护进程守护。

我们在core-site.xml和mapred-site.xml中分别指定了NameNode和JobTracker的主机名与端口。在hdfs-site.xml中指定了HDFS的默认副本数,因为仅运行在一个节点上,这里副本数为1。我们还需要在master中指定SNN的位置,并在文件slaves中指定从节点的位置。

 

 

 

 

虽然所有的守护进程都运行在同一节点上,它们任然像分布在集群中一样,彼此通过相同的SSH协议进行通信。

 

现在几乎已经准备好了启动hadoop,但是还是先输入一个命令来格式化HDFS:

我们现在可以使用start-all.sh 脚本装载守护进程,然后用java的jps命令列出所有守护进程来验证安装成功。

 

八,全分布模式

在不断强度分布式存储和分布式计算的好处之后,是时候来建立一个完全的集群。

Master – 集群的主节点。

www.htsjk.Com true http://www.htsjk.com/Hadoop/41326.html NewsArticle hadoop的安装,   一,下载相关软件 Jdk Hadoop 二,定义一个公共账号 我们经常说,从一个节点访问另一个节点,其实是从一个用户账户访问另一个用户账号。对于hadoop,所有的节点都使...
相关文章
    暂无相关文章
评论暂时关闭