共计 6990 个字符,预计需要花费 18 分钟才能阅读完成。
前言 * Hadoop 是 Apache 开源组织的一个分布式计算开源框架,在很多大型网站上都已经得到了应用,如亚马逊、Facebook 和 Yahoo 等等。对于我来说,最近的一个使用点就是服务集成平台的日志分析。服务集成平台的日志量将会很大,而这也正好符合了分布式计算的适用场景(日志分析和索引建立就是两大应用场景)。
今天我们来实际搭建一下 Hadoop 2.2.0 版,实战环境为目前主流服务器操作系统 CentOS 5.8 系统。
一、实战环境
系统版本:CentOS 5.8 x86_64
Java 版本:JDK-1.7.0_25
Hadoop 版本:hadoop-2.2.0
192.168.149.128 namenode(充当 namenode、secondary namenode 和 ResourceManager 角色)
192.168.149.129 datanode1(充当 datanode、nodemanager 角色)
192.168.149.130 datanode2(充当 datanode、nodemanager 角色)
二、系统准备
1、Hadoop 可以从 Apache 官方网站直接下载最新版本 Hadoop2.2。官方目前是提供了 linux32 位系统可执行文件,所以如果需要在 64 位系统上部署则需要单独下载 src 源码自行编译。(如果是真实线上环境,请下载 64 位 hadoop 版本,这样可以避免很多问题,这里我实验采用的是 32 位版本)
Hadoop 下载地址
http://apache.claz.org/hadoop/common/hadoop-2.2.0/
Java 下载下载
http://www.Oracle.com/technetwork/java/javase/downloads/index.html
2、我们这里采用三台 CnetOS 服务器来搭建 Hadoop 集群,分别的角色如上已经注明。
第一步:我们需要在三台服务器的 /etc/hosts 里面设置对应的主机名如下(真实环境可以使用内网 DNS 解析)
[root@node1 hadoop]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
192.168.149.128 node1
192.168.149.129 node2
192.168.149.130 node3
(注 * 我们需要在 namenode、datanode 三台服务器上都配置 hosts 解析)
第二步:从 namenode 上无密码登陆各台 datanode 服务器,需要做如下配置:
在 namenode 128 上执行 ssh-keygen,一路 Enter 回车即可。
然后把公钥 /root/.ssh/id_rsa.pub 拷贝到 datanode 服务器即可,拷贝方法如下:
ssh-copy-id -i .ssh/id_rsa.pub root@192.168.149.129
ssh-copy-id -i .ssh/id_rsa.pub root@192.168.149.130
三、Java 安装配置
tar -xvzf jdk-7u25-linux-x64.tar.gz &&mkdir -p /usr/java/ ; mv /jdk1.7.0_25 /usr/java/ 即可。
安装完毕并配置 java 环境变量,在 /etc/profile 末尾添加如下代码:
export JAVA_HOME=/usr/java/jdk1.7.0_25/
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVE_HOME/lib/dt.jar:$JAVE_HOME/lib/tools.jar:./
保存退出即可,然后执行 source /etc/profile 生效。在命令行执行 java -version 如下代表 JAVA 安装成功。
[root@node1 ~]# java -version
java version “1.7.0_25”
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
(注 * 我们需要在 namenode、datanode 三台服务器上都安装 Java JDK 版本)
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2013-11/93254p2.htm
相关阅读:
Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm
Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm
Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm
Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm
单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm
搭建 Hadoop 环境(在 Winodws 环境下用虚拟机虚拟两个 Ubuntu 系统进行搭建)http://www.linuxidc.com/Linux/2011-12/48894.htm
四、Hadoop 版本安装
官方下载的 hadoop2.2.0 版本,不用编译直接解压安装就可以使用了,如下:
第一步解压:
tar -xzvf hadoop-2.2.0.tar.gz &&mv hadoop-2.2.0 /data/hadoop/
(注 * 先在 namenode 服务器上都安装 hadoop 版本即可,datanode 先不用安装,待会修改完配置后统一安装 datanode)
第二步配置变量:
在 /etc/profile 末尾继续添加如下代码,并执行 source /etc/profile 生效。
export HADOOP_HOME=/data/hadoop/
export PATH=$PATH:$HADOOP_HOME/bin/
export Java_LIBRARY_PATH=/data/hadoop/lib/native/
(注 * 我们需要在 namenode、datanode 三台服务器上都配置 Hadoop 相关变量)
五、配置 Hadoop
在 namenode 上配置,我们需要修改如下几个地方:
1、修改 vi /data/hadoop/etc/hadoop/core-site.xml 内容为如下:
<?xml version=”1.0″?>
<?xml-stylesheet type=”text/xsl” href=\’#\'” Put site-specific property overrides in this file. –>
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://192.168.149.128:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/tmp/hadoop-${user.name}</value>
<description>A base for other temporary directories.</description>
</property>
</configuration>
2、修改 vi /data/hadoop/etc/hadoop/mapred-site.xml 内容为如下:
<?xml version=”1.0″?>
<?xml-stylesheet type=”text/xsl” href=\’#\'” Put site-specific property overrides in this file. –>
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>192.168.149.128:9001</value>
</property>
</configuration>
3、修改 vi /data/hadoop/etc/hadoop/core-site.xml 内容为如下:
<?xml version=”1.0″ encoding=”UTF-8″?>
<?xml-stylesheet type=”text/xsl” href=\’#\'” /name>
<value>/data/hadoop/data_name1,/data/hadoop/data_name2</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/data/hadoop/data_1,/data/hadoop/data_2</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
</configuration>
4、修改 vi /data/hadoop/etc/hadoop/masters 文件内容为如下:
192.168.149.128
5、修改 vi /data/hadoop/etc/hadoop/slaves 文件内容为如下:
192.168.149.129
192.168.149.130
如上配置完毕,以上的配置具体含义在这里就不做过多的解释了,搭建的时候不明白,可以查看一下相关的官方文档。
如上 namenode 就基本搭建完毕,接下来我们需要部署 datanode,部署 datanode 相对简单,执行如下操作即可。
for i in `seq 129 130 ` ; do scp -r /data/hadoop/ root@192.168.149.$i:/data/ ; done
自此整个集群基本搭建完毕,接下来就是启动 hadoop 集群了。
前言 * Hadoop 是 Apache 开源组织的一个分布式计算开源框架,在很多大型网站上都已经得到了应用,如亚马逊、Facebook 和 Yahoo 等等。对于我来说,最近的一个使用点就是服务集成平台的日志分析。服务集成平台的日志量将会很大,而这也正好符合了分布式计算的适用场景(日志分析和索引建立就是两大应用场景)。
今天我们来实际搭建一下 Hadoop 2.2.0 版,实战环境为目前主流服务器操作系统 CentOS 5.8 系统。
一、实战环境
系统版本:CentOS 5.8 x86_64
Java 版本:JDK-1.7.0_25
Hadoop 版本:hadoop-2.2.0
192.168.149.128 namenode(充当 namenode、secondary namenode 和 ResourceManager 角色)
192.168.149.129 datanode1(充当 datanode、nodemanager 角色)
192.168.149.130 datanode2(充当 datanode、nodemanager 角色)
二、系统准备
1、Hadoop 可以从 Apache 官方网站直接下载最新版本 Hadoop2.2。官方目前是提供了 linux32 位系统可执行文件,所以如果需要在 64 位系统上部署则需要单独下载 src 源码自行编译。(如果是真实线上环境,请下载 64 位 hadoop 版本,这样可以避免很多问题,这里我实验采用的是 32 位版本)
Hadoop 下载地址
http://apache.claz.org/hadoop/common/hadoop-2.2.0/
Java 下载下载
http://www.Oracle.com/technetwork/java/javase/downloads/index.html
2、我们这里采用三台 CnetOS 服务器来搭建 Hadoop 集群,分别的角色如上已经注明。
第一步:我们需要在三台服务器的 /etc/hosts 里面设置对应的主机名如下(真实环境可以使用内网 DNS 解析)
[root@node1 hadoop]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
192.168.149.128 node1
192.168.149.129 node2
192.168.149.130 node3
(注 * 我们需要在 namenode、datanode 三台服务器上都配置 hosts 解析)
第二步:从 namenode 上无密码登陆各台 datanode 服务器,需要做如下配置:
在 namenode 128 上执行 ssh-keygen,一路 Enter 回车即可。
然后把公钥 /root/.ssh/id_rsa.pub 拷贝到 datanode 服务器即可,拷贝方法如下:
ssh-copy-id -i .ssh/id_rsa.pub root@192.168.149.129
ssh-copy-id -i .ssh/id_rsa.pub root@192.168.149.130
三、Java 安装配置
tar -xvzf jdk-7u25-linux-x64.tar.gz &&mkdir -p /usr/java/ ; mv /jdk1.7.0_25 /usr/java/ 即可。
安装完毕并配置 java 环境变量,在 /etc/profile 末尾添加如下代码:
export JAVA_HOME=/usr/java/jdk1.7.0_25/
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVE_HOME/lib/dt.jar:$JAVE_HOME/lib/tools.jar:./
保存退出即可,然后执行 source /etc/profile 生效。在命令行执行 java -version 如下代表 JAVA 安装成功。
[root@node1 ~]# java -version
java version “1.7.0_25”
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
(注 * 我们需要在 namenode、datanode 三台服务器上都安装 Java JDK 版本)
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2013-11/93254p2.htm
相关阅读:
Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm
Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm
Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm
Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm
单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm
搭建 Hadoop 环境(在 Winodws 环境下用虚拟机虚拟两个 Ubuntu 系统进行搭建)http://www.linuxidc.com/Linux/2011-12/48894.htm
六、启动 Hadoop 并测试
在启动 hadoop 之前,我们需要做一步非常关键的步骤,需要在 namenode 上执行如下命令初始化 name 目录和数据目录。
cd /data/hadoop/ ; ./bin/hadoop namenode -format
那如何算初始化成功呢,如下截图成功创建 name 目录即正常:
然后启动 hadoop 所有服务,如下命令:
[root@node1 hadoop]# ./sbin/start-all.sh
我们还可以查看相应的端口是否启动:netstat -ntpl
访问如下地址:http://192.168.149.128:50070/
访问地址:http://192.168.149.128:8088/
更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13