阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Hadoop 2.2.0集群搭建

144次阅读
没有评论

共计 9585 个字符,预计需要花费 24 分钟才能阅读完成。

一、环境说明

1、虚拟机平台:VMware10

2、Linux 版本:Ubuntu-12.04.3-desktop-i386

3、JDK:jdk1.7.0_51

4、Hadoop 版本:2.2.0

5、集群节点:3 个,分别是 hadoopMaster,hadoopSlave1,hadoopSlave2

注明:文中 linuxidc 是虚拟机用户名。

————————————– 分割线 ————————————–

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 LZO 安装教程 http://www.linuxidc.com/Linux/2013-01/78397.htm

Hadoop 集群上使用 Lzo 压缩 http://www.linuxidc.com/Linux/2012-05/60554.htm

————————————– 分割线 ————————————–

二、准备工作

1、安装虚拟机平台,并新建一个 Ubuntu 虚拟机,记为 hadoopMaster。

2、在 hadoopMaster 上安装 JDK。

Jdk 一般有两个版本:Open JDK、SunJDK,建议使用 Sun JDK。安装步骤如下:

先去 Oracle 下载 Linux 下的 JDK 压缩包,http://www.oracle.com/technetwork/java/javase/downloads/index.html,下好后直接解压。

进入在存放 jdk 文件夹的当前目录,将解压好的 jdk1.7.0_51 文件夹用最高权限复移动到 /usr/lib/jvm 目录里,此时即使没有 jvm 目录也可以执行如下命令,jvm 文件夹将得到创建。

        sudo mv jdk1.7.0_51 /usr/lib/jvm/

接下来需要设置环境变量,进入当前用户名的主文件夹,修改.profile 文件。注意,该文件是 当前用户的配置文件,如果要对使用计算机的所有用户生效,那么需要设置的文件应该是 /etc/profile。

        sudo gedit ~/.profile

在末尾加上:

        export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51
        exportJRE_HOME=/usr/lib/jvm/jdk1.7.0_51/jre
        exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
        export PATH=$JAVA_HOME/bin:$PATH

然后保存关闭,此时在命令行输入 java -version 将会仍然显示 java 没有安装。此时,需要使用 source 更新下.profile 文件:

        $ source ~/.profile

再次使用 java -version 命令可以看到如下输出:

        linuxidc@ubuntu:~$ java -version
        java version “1.7.0_51”
        Java(TM) SE Runtime Environment (build1.7.0_51-b18)

到此,已经将 oracle jdk 配置完成。如果之前系统里面已经安装了 openjdk,可以使用如下方法将默认 jdk 更改过来:

        $ sudo update-alternatives –install/usr/bin/java java /usr/lib/jvm/jdk1.7.0_51/bin/java 300

 输入 sun jdk 前的数字就好了

        $ sudo update-alternatives –install/usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_51/bin/javac 300
        $ sudo update-alternatives –config java
        $ sudo update-alternatives –config javac

 3、安装 SSH

可以先检查是否已经有 ssh,也可以跳过这步,直接安装。

 

$ sudo ps -ef | grep ssh

如果只有 ssh-agent  就需要安装 openssh-server 了。

$ sudo apt-get install ssh openssh-server

4、配置 SSH 公钥

$ ssh-keygen -t rsa -P “yourPassWord”

$ ssh-keygen -t rsa -P “yourPassWord”

ssh-kengen 是用连字符连着的,千万不要分开。另外,密码是你的虚拟机密码,而不是空(当然,如果你的虚拟机密码为空,另当别论)。

5、建立 IP 和 hadoop 节点的映射关系

修改 etc/hosts 文件,在上面加入 hadoop 节点 IP 和名称的映射关系。

$ sudo gedit /etc/hosts

在其中加上(ip 是节点可配置的 ip,自己设定):

192.168.32.***  hadoopMaster

192.168.32.***  hadoopSlave1

192.168.32.***  hadoop Slave2

6、克隆两个 Ubuntu 虚拟机,作为 hadoop 的其他两个节点

7、分别修改三个 Ubuntu 虚拟机的名称

sudo gedit /etc/hostname

分别将三个虚拟机名称改为:hadoopMaster,hadoopSlave1,hadoopSlave2。

8、修改三个 Ubuntu 虚拟机的 IP

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-06/102865p2.htm

三、配置 SSH 无密码登陆。

其目的是让 HadoopMaster 免密码登陆 hadoopSlave1 和 hadoopSalve2,步骤如下:

1、在 hadoopMaster 上创建授权文件 authorized_keys

进入~/.ssh/ 目录下执行”ls –a”,发现开始是没有 authorized_keys 文件的,可以使用以下两种方法来生成:

(1) 将 id_rsa.pub 追加到 authorized_keys 授权文件中;

keys 授权文件中;

$ cat id_rsa.pub >> authorized_keys

(2) 复制 id_rsa.pub 为 authorized_keys

$ cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys

完成后就可以无密码登录本机了,可以尝试登陆 localhost

$ ssh localhost

2、将授权文件拷贝到 hadoopSlave1、hadoopSlave2 相同文件夹下

$ scp authorized_keys linux@hadoopSlave1:~/.ssh/authorized_keys

$ scp authorized_keys linux@hadoopSlave2:~/.ssh/authorized_keys

拷贝过程需要密码,拷贝之后就可以免密码登陆 hadoopSlave1 和 hadoopSlave2 了。

四、安装 Hadoop2.2,搭建集群

1、在 hadoopMaster 上安装 hadoop

首先到 Apache 官网上下载 hadoop2.2 的压缩文件,将其解压到当前用户的根文件夹中(home/linux/),将解压出的文件夹改名为 hadoop。

$ sudo mv hadoop-2.2.0 hadoop

配置之前,先在本地文件系统创建以下文件夹:~/hadoop/tmp、~/dfs/data、~/dfs/name。主要涉及的配置文件有 7 个:都在 /hadoop/etc/hadoop 文件夹下,可以用 gedit 命令对其进行编辑。

~/hadoop/etc/hadoop/hadoop-env.sh
~/hadoop/etc/hadoop/yarn-env.sh
~/hadoop/etc/hadoop/slaves
~/hadoop/etc/hadoop/core-site.xml
~/hadoop/etc/hadoop/hdfs-site.xml
~/hadoop/etc/hadoop/mapred-site.xml
~/hadoop/etc/hadoop/yarn-site.xml

(1) 配置文件 1:hadoop-env.sh
修改 JAVA_HOME 值(export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51)
(2) 配置文件 2:yarn-env.sh
修改 JAVA_HOME 值(export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51)
(3) 配置文件 3:slaves

hadoopSalve1
hadoopSlave2

 (4) 配置文件 4:core-site.xml

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoopMaster:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/linux/hadoop/tmp</value>
<description>Abasefor other temporary directories.</description>
</property>
<property>
<name>hadoop.proxyuser.linux.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.linux.groups</name>
<value>*</value>
</property>
</configuration>

 (5) 配置文件 5:hdfs-site.xml

<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoopMaster:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/linux/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/linux/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>

 (6) 配置文件 6:mapred-site.xml

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoopMaster:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoopMaster:19888</value>
</property>
</configuration>

 (7) 配置文件 7:yarn-site.xml

<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>hadoopMaster:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hadoopMaster:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hadoopMaster:8035</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hadoopMaster:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hadoopMaster:8088</value>
</property>
</configuration>

 2、将 hadoop 文件夹拷贝到 hadoopSlave1 和 hadoopSlave2 上。

scp –r/home/linux/hadoop linux@hadoopSlave1:~/
scp –r/home/linux/hadoop linux@hadoopSlave2:~/

五、验证与运行
所有的组件启动和停止服务都在 /hadoop/sbin 目录下,一般启动 hadoop 前会格式化 namenode。具体命令参考如下:

进入安装目录:cd ~/hadoop/
格式化 namenode:./bin/hdfs namenode –format
启动 hdfs: ./sbin/start-dfs.sh
此时在 hadoopMaster 上面运行的进程有:namenodesecondarynamenode
hadoopSlave1 和 hadoopSlave2 上面运行的进程有:datanode

启动 yarn: ./sbin/start-yarn.sh
此时在 hadoopMaster 上面运行的进程有:namenodesecondarynamenoderesourcemanager
hadoopSlave1 和 hadoopSlave2 上面运行的进程有:datanode nodemanaget

查看集群状态:./bin/hdfs dfsadmin –report
查看文件块组成:./bin/hdfsfsck/ -files -blocks
查看 HDFS: http://hadoopMaster:50070
查看 RM: http:// hadoopMaster:8088

更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13

本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-06/102865.htm

一、环境说明

1、虚拟机平台:VMware10

2、Linux 版本:Ubuntu-12.04.3-desktop-i386

3、JDK:jdk1.7.0_51

4、Hadoop 版本:2.2.0

5、集群节点:3 个,分别是 hadoopMaster,hadoopSlave1,hadoopSlave2

注明:文中 linuxidc 是虚拟机用户名。

————————————– 分割线 ————————————–

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 LZO 安装教程 http://www.linuxidc.com/Linux/2013-01/78397.htm

Hadoop 集群上使用 Lzo 压缩 http://www.linuxidc.com/Linux/2012-05/60554.htm

————————————– 分割线 ————————————–

二、准备工作

1、安装虚拟机平台,并新建一个 Ubuntu 虚拟机,记为 hadoopMaster。

2、在 hadoopMaster 上安装 JDK。

Jdk 一般有两个版本:Open JDK、SunJDK,建议使用 Sun JDK。安装步骤如下:

先去 Oracle 下载 Linux 下的 JDK 压缩包,http://www.oracle.com/technetwork/java/javase/downloads/index.html,下好后直接解压。

进入在存放 jdk 文件夹的当前目录,将解压好的 jdk1.7.0_51 文件夹用最高权限复移动到 /usr/lib/jvm 目录里,此时即使没有 jvm 目录也可以执行如下命令,jvm 文件夹将得到创建。

        sudo mv jdk1.7.0_51 /usr/lib/jvm/

接下来需要设置环境变量,进入当前用户名的主文件夹,修改.profile 文件。注意,该文件是 当前用户的配置文件,如果要对使用计算机的所有用户生效,那么需要设置的文件应该是 /etc/profile。

        sudo gedit ~/.profile

在末尾加上:

        export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51
        exportJRE_HOME=/usr/lib/jvm/jdk1.7.0_51/jre
        exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
        export PATH=$JAVA_HOME/bin:$PATH

然后保存关闭,此时在命令行输入 java -version 将会仍然显示 java 没有安装。此时,需要使用 source 更新下.profile 文件:

        $ source ~/.profile

再次使用 java -version 命令可以看到如下输出:

        linuxidc@ubuntu:~$ java -version
        java version “1.7.0_51”
        Java(TM) SE Runtime Environment (build1.7.0_51-b18)

到此,已经将 oracle jdk 配置完成。如果之前系统里面已经安装了 openjdk,可以使用如下方法将默认 jdk 更改过来:

        $ sudo update-alternatives –install/usr/bin/java java /usr/lib/jvm/jdk1.7.0_51/bin/java 300

 输入 sun jdk 前的数字就好了

        $ sudo update-alternatives –install/usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_51/bin/javac 300
        $ sudo update-alternatives –config java
        $ sudo update-alternatives –config javac

 3、安装 SSH

可以先检查是否已经有 ssh,也可以跳过这步,直接安装。

 

$ sudo ps -ef | grep ssh

如果只有 ssh-agent  就需要安装 openssh-server 了。

$ sudo apt-get install ssh openssh-server

4、配置 SSH 公钥

$ ssh-keygen -t rsa -P “yourPassWord”

$ ssh-keygen -t rsa -P “yourPassWord”

ssh-kengen 是用连字符连着的,千万不要分开。另外,密码是你的虚拟机密码,而不是空(当然,如果你的虚拟机密码为空,另当别论)。

5、建立 IP 和 hadoop 节点的映射关系

修改 etc/hosts 文件,在上面加入 hadoop 节点 IP 和名称的映射关系。

$ sudo gedit /etc/hosts

在其中加上(ip 是节点可配置的 ip,自己设定):

192.168.32.***  hadoopMaster

192.168.32.***  hadoopSlave1

192.168.32.***  hadoop Slave2

6、克隆两个 Ubuntu 虚拟机,作为 hadoop 的其他两个节点

7、分别修改三个 Ubuntu 虚拟机的名称

sudo gedit /etc/hostname

分别将三个虚拟机名称改为:hadoopMaster,hadoopSlave1,hadoopSlave2。

8、修改三个 Ubuntu 虚拟机的 IP

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-06/102865p2.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-20发表,共计9585字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中