Hadoop-2.4.1完全分布式环境搭建

 

Hadoop-2.4.1完全分布式环境搭建

一、配置步骤如下:

  1. 主机环境搭建,这里是使用了5台虚拟机,在ubuntu 13系统上进行搭建hadoop环境。
  2. 创建hadoop用户组以及hadoop用户,并给hadoop用户分配权限。
  3. 免密码登陆,为5台主机进行免密码登陆配置。
  4. 安装hadoop以及jdk,并配置环境变量。
  5. Hadoop分布式环境参数配置。

二、主机环境搭建:

在虚拟机上安装5台虚拟主机并分别安装好hadoop系统,然后分别完成以下操作。

1. 设定静态ip地址,这里的虚拟机使用的是NAT上网模式,配置命令如下:

a) 配置静态地址

sudo gedit /etc/network/interfaces

auto eth0

iface eth0 inet static

address 192.168.182.132

netmask 255.255.255.0

gateway 192.168.182.1

b) 配置网关

sudo gedit /etc/resolv.conf

nameserver 192.168.182.1

c) 重启网络

/etc/init.d/networking restart

2. 修改主机名,打开hostname文件,分别将主机名修改为master,slave1,slave2,slave3,slave4

sudo gedit /etc/hostname

3. 修好主机配置文件,打开hosts文件,我的主机配置是这样的:

sudo gedit /etc/hosts

192.168.182.132 master

192.168.182.134 slave1

192.168.182.135 slave2

192.168.182.136 slave3

192.168.182.137 slave4

三、添加用户

1. 创建hadoop用户组

sudo addgroup hadoop

2. 创建hadoop用户

sudo adduser -ingroup hadoop hadoop

3. 给hadoop用户添加权限,打开/etc/sudoers文件

sudo gedit /etc/sudoers

按回车键后就会打开/etc/sudoers文件了,给hadoop用户赋予root用户同样的权限

在root   ALL=(ALL:ALL)   ALL下添加hadoop   ALL=(ALL:ALL)  ALL

四、配置master到slave的免密码登陆

1. 安装ssh服务

sudo apt-get install ssh openssh-server

2. 配置master到slave的免密码登陆(这里以slave1为例,其他slave操作一致)

master生成authorized_key

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

cd .ssh/

cat id_dsa.pub >> authorized_keys

slave1添加master的authorized_key到本地

scp yss@master:~/.ssh/id_dsa.pub ./master_dsa.pub

cat master_dsa.pub >> authorized_keys

五、安装hadoop和jdk,配置环境变量

hadoop安装包版本是2.4.1,jdk使用的是1.7.0_65版本,分别到官网上去下载。

hadoop,jdk分别解压到/home/hadoop/hadoop-2.4.1,/home/hadoop/jdk1.7.0_65目录下,配置环境变量如下:

sudo gedit /etc/profile

HADOOP_HOME=/home/hadoop/hadoop-2.4.1

JAVA_HOME=/home/hadoop/jdk1.7.0_65

PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH

CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$HADOOP_HOME/lib:$CLASSPATH

export HADOOP_HOME

export JAVA_HOME

export PATH

export CLASSPATH

source /etc/profile

注:配置环境变量应该在最后一步,各个节点都需要单独配置

六、配置hadoop环境

core-site.xml

<configuration>

<property>

<name>fs.default.name</name>

<value>hdfs://master:9000</value>

<final>true</final>

</property>

<property>

<name>hadoop.tmp.dir</name>

<value>/home/hadoop/hadoop-2.4.1/tmp</value>

<description>A base for other temporary directories.</description>

</property>

</configuration>

Hdfs-site.xml

<configuration>

<property>

<name>dfs.name.dir</name>

<value>/home/hadoop/hadoop-2.4.1/name</value>

<final>true</final>

</property>

<property>

<name>dfs.data.dir</name>

<value>/home/hadoop/hadoop-2.4.1/data</value>

<final>true</final>

</property>

<property>

<name>dfs.replication</name>

<value>2</value>

<final>true</final>

</property>

</configuration>

mapred-site.xml

<configuration>

<property>

<name>mapred.job.tracker</name>

<value>192.168.182.132:9001</value>

</property>

</configuration>

注:五、六步骤中都只是配置的master节点,master配置完成后将/home/hadoop/文件夹拷到各个slave

scp -r ./hadoop slave1:/home

七、启动Hadoop

1. 格式化namenode

在master节点执行下面命令:

hadoop namenode format

2. 启动服务

进去master节点/home/hadoop/hadoop-2.4.1/sbin目录,执行如下命令:

./start-all.sh

下面是停止Hadoop服务命令:

./stop-all.sh

3. master有如下进程:

hadoop@master: /home/hadoop/hadoop-2.4.1/sbin $jps

21211 Jps

7421 SecondaryNameNode

7154 NameNode

7968 ResourceManager

4. slave1有如下进程

hadoop@ slave1: /home/hadoop/hadoop-2.4.1/sbin $jps

3612 NameNode

3723 Jps

3367 DataNode

5. 查看集群状态

http://master:8088/

 
分类: hadoop

Hadoop-2.4.1完全分布式环境搭建的更多相关文章

  1. 攻城狮在路上(陆)-- hadoop分布式环境搭建(HA模式)

    一.环境说明: 操作系统:Centos6.5 Linux node1 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 ...

  2. Hadoop学习笔记(3)——分布式环境搭建

    Hadoop学习笔记(3) ——分布式环境搭建 前面,我们已经在单机上把Hadoop运行起来了,但我们知道Hadoop支持分布式的,而它的优点就是在分布上突出的,所以我们得搭个环境模拟一下. 在这里, ...

  3. Hadoop学习笔记1:伪分布式环境搭建

    在搭建Hadoop环境之前,请先阅读如下博文,把搭建Hadoop环境之前的准备工作做好,博文如下: 1.CentOS 6.7下安装JDK , 地址: http://blog.csdn.net/yule ...

  4. 【转】Hadoop HDFS分布式环境搭建

    原文地址  http://blog.sina.com.cn/s/blog_7060fb5a0101cson.html Hadoop HDFS分布式环境搭建 最近选择给大家介绍Hadoop HDFS系统 ...

  5. 【Hadoop】伪分布式环境搭建、验证

    Hadoop伪分布式环境搭建: 自动部署脚本: #!/bin/bash set -eux export APP_PATH=/opt/applications export APP_NAME=Ares ...

  6. 【Hadoop基础教程】4、Hadoop之完全分布式环境搭建

    上一篇blog我们完成了Hadoop伪分布式环境的搭建,伪分布式模式也叫单节点集群模式, NameNode.SecondaryNameNode.DataNode.JobTracker.TaskTrac ...

  7. hadoop学习(三)----hadoop2.x完全分布式环境搭建

    今天我们来完成hadoop2.x的完全分布式环境搭建,话说学习本来是一件很快乐的事情,可是一到了搭环境就怎么都让人快乐不起来啊,搭环境的时间比学习的时间还多.都是泪.话不多说,走起. 1 准备工作 开 ...

  8. 大数据:Hadoop(JDK安装、HDFS伪分布式环境搭建、HDFS 的shell操作)

    所有的内容都来源与 Hadoop 官方文档 一.Hadoop 伪分布式安装步骤 1)JDK安装 解压:tar -zxvf jdk-7u79-linux-x64.tar.gz -C ~/app 添加到系 ...

  9. 【Hadoop离线基础总结】CDH版本Hadoop 伪分布式环境搭建

    CDH版本Hadoop 伪分布式环境搭建 服务规划 步骤 第一步:上传压缩包并解压 cd /export/softwares/ tar -zxvf hadoop-2.6.0-cdh5.14.0.tar ...

  10. 【Hadoop离线基础总结】完全分布式环境搭建

    完全分布式环境搭建 服务规划 适用于工作当中正式环境搭建 安装步骤 第一步:安装包解压 停止之前的Hadoop集群的所有服务,并删除所有机器的Hadoop安装包,然后重新解压Hadoop压缩包 三台机 ...

随机推荐

  1. Wpf ScrollViewer with WrapPanel 使用鼠标滚轮水平滚动内容

    为WrapPanel添加水平滚动条,当禁用垂直滚动条后使用鼠标无法滚动,竟然还需要自己写代码来实现,真真是挺无语呢,不知道算不算是一个bug. <Grid Background="Tr ...

  2. SQLServer数据类型优先级对性能的影响

    原文:SQLServer数据类型优先级对性能的影响 译自: http://www.mssqltips.com/sqlservertip/2749/sql-server-data-type-preced ...

  3. Java并发编程之ConcurrentHashMap(转)

    ConcurrentHashMap ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和HashTable功能相同但是线程安全的方法.Concurrent ...

  4. 【微信公众平台开发】百度周边搜索接口php封装

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcWl2YW4=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/d ...

  5. 基于Gsoap 的ONVIF C++ 库

    https://github.com/xsmart/onvifcpplib 该库支持ProfileS 和ProfileG,目前正在开发哪些,现拥有支持Event 下面是一个client样本 int _ ...

  6. java假设去请求一个网页的数据

    我们能够通过在java程序中模拟浏览器一样,把数据抓下来,详细方法是在java程序中set header和cookie,以下是一个样例: public class NetConnection { pu ...

  7. C# 抽象类其中创建一个静态方法

    </pre><pre name="code" class="csharp"><span style="font-size ...

  8. NSIS:延时启动软件的几个方法及探索

    原文NSIS:延时启动软件的几个方法及探索 有时候,我们想要某软件开机启动,但又不要拖慢开机速度,那么,延时启动技术就显得比较重要了.轻狂在这方面曾经研究过,也实现了自己想要的功能,看看我是怎么做的吧 ...

  9. 十天学Linux内核之第二天---进程

    原文:十天学Linux内核之第二天---进程 都说这个主题不错,连我自己都觉得有点过大了,不过我想我还是得坚持下去,努力在有限的时间里学习到Linux内核的奥秘,也希望大家多指点,让我更有进步.今天讲 ...

  10. MySQL中游标使用以及读取文本数据

    原文:MySQL中游标使用以及读取文本数据 前言 之前一直没有接触数据库的学习,只是本科时候修了一本数据库基本知识的课.当时只对C++感兴趣,天真的认为其它的课都没有用,数据库也是半懂不懂,胡乱就考试 ...