hadoop和hdfs环境搭建

参考链接:http://blog.csdn.net/zolalad/article/details/11470449

环境:ubuntu14.04 hadoop1.0.1

下面以3台机器为例,讲解安装过程

1) 准备3台机器,一台作为nameNode,命名为master,两台作为dataNode,命名为slave01, slave02。强调命名是为了方便管理,其实命名无所谓。如果已命名为其它名称,可通过编辑/etc/hostname进行更改。

2) 为所有主从节点配置静态ip,因为主从节点间需要相互访问,如果ip地址动态变化可能造成无法访问的错误。当然,如果在同一局域网中也可以通过主机名以及主机名和ip地址的动态映射服务相互访问。但还是建议设置静态ip。

3) 在3台机器上都设置hadoop用户,并且给这一用户管理员权限,我出于学习目的直接使用了root用户。添加用户命令:adduser hadoop,之后按提示输入和确认密码。增加管理员权限可修改/etc/sudoers 文件,找到下面一行:root ALL=(ALL) ALL,在该行下增加一行:hadoop ALL=(ALL) ALL。也可以将hadoop用户加入具有管理员权限的组中。另外,还可以修改/etc/passwd 文件,找到如下行:hadoop:x:1001:1001:hadoop:/home/hadoop:/bin/bash把用户ID修改为 0,则修改后该行变为:hadoop:x:0:1001:hadoop:/home/hadoop:/bin/bash。这样做,hadoop用户就完全变为root用户了,虽简单,但不建议这么改。

4) 安装SSH并配置免密码SSH访问机制(重要)。Ubuntu系统可通过sudo apt-get install ssh进行安装,其它系统请自行查阅相关资料。配置ssh无密码直接访问:首先查看hadoop用户的home目录中是否包含名称为.ssh的文件夹,可用命令ls -a,如果没有,则可以自己建一个,可用命令mkdir .ssh,之后执行命令ssh-keygen -t rsa,接下来一般一路回车即可(当然你也可以仔细看一下每一步都是干什么的),接下进入.ssh目录,执行命令:cat id_rsa.pub >> authorized_keys,注意,在所有节点执行以上操作,并将所有节点的authorized_keys文件合并成一个,并且在所有节点间共享这一文件(至于所有节点的.ssh目录下),至此,所有节点之间都可以通过ssh无密码访问了,ssh远程登陆可用命令ssh ip -l username,设置完后可通过该命令进行测试。之所以要设置ssh无密码访问机制,是因为hadoop使用ssh协议,无密码访问更加方便(话说我还不是特别清楚hadoop支不支持有密码访问)。

5) Jdk安装。可使用官方jdk,也可以使用openjdk,openjdk建议使用版本7,官方jdk建议使用版本6以上。我使用的是官方jdk,版本1.7.0_51,可通过命令java -version查看jdk版本。以我的版本为例,首先下载jdk-7u51-linux-x64.tar.gz,解压到你自己选择的安装路径,我选的是/usr/java,之后配置一下环境变量,可修改/etc/profile文件,该修改对整个系统生效,也可以修改/home/username/.bashrc,该修改仅对相应用户生效,修改完后,可执行source /etc/profile使修改生效。如我在/etc/profile文件中增加如下几行:

export  JAVA_HOME=/usr/java/jdk1.7.0_51

export  JRE_HOME=$JAVA_HOME/jre

export  PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

6) 在主节点上解压安装Hadoop。到Hadoop官网下载hadoop-1.0.1.tar.gz(本人使用的是此版本!),我所选择的安装目录是用户的home目录,所以将其直接解压到root用户的home目录下。

7) 配置hadoop环境变量。同样是配置/etc/profile文件,以我为例添加以下内容:

export  HADOOP_HOME=/root/hadoop-1.0.1

export  PATH=$PATH:$HADOOP_HOME/bin

export   HADOOP_CLASSPATH=$HADOOP_HOME/lib/commons-lang-2.4.jar:$HADOOP_HOME/lib/commons-logging-api-1.0.4.jar:$HADOOP_HOME/lib/commons-configuration-1.6.jar:$HADOOP_HOME/hadoop-core-1.0.1.jar:$HADOOP_HOME/contrib/streaming/hadoop-streaming-1.0.1.jar

export   CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$HADOOP_CLASSPATH。同 样需要使用source命令使配置生效。

8) 在主节点上修改hadoop配置文件。 Hadoop的配置文件存放在hadoop安装目录下的conf目录中,主要有以下几个配置文件要修改:

conf/hadoop-env.sh:Hadoop环境变量设置

conf/core-site.xml:主要完成NameNode的IP和端口设置

conf/hdfs-site.xml:主要完成HDFS的数据块副本等参数设置

conf/mapred-site.xml:主要完成JobTracker IP和端口设置

conf/masters:完成master节点IP设置

配置hadoop-env.sh文件

添加 # set java environment

export JAVA_HOME=/usr/java/jdk1.7.0_51

配置core-site.xml

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>

<property>

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

<value>hdfs://Master:9000/</value>//Master为主节点主机名

</property>

<property>

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

<value>/tmp</value>

</property>

</configuration>

说明:hadoop分布式文件系统的两个重要的目录结构,一个是namenode上名字 空间的存放地方,一个是datanode数据块的存放地方,还有一些其他的文件存 放地方,这些存放地方都是基于hadoop.tmp.dir目录的,比如namenode的名字 空间存放地方就是 ${hadoop.tmp.dir}/dfs/name, datanode数据块的存放地方就是  ${hadoop.tmp.dir}/dfs/data,所以设置好hadoop.tmp.dir目录后,其他的重要目录 都是在这个目录下面,这是一个根目录。在此设置的是 /tmp,当然这个目录必须 是存在的。

配置hdfs-site.xml

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>

<property>

<name>dfs.replication</name>

<value>3</value>

</property>

</configuration>

配置mapred-site.xml

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>

<property>

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

<value>Master:9001</value>

</property>

</configuration>

配置masters文件和slaves文件

将主机名填进去就行了

9) 之后,就可以将配置好好的主节点拷贝到其他各节点上。可使用命令scp。如我的是scp -r /root/hadoop-1.0.1/ [email protected]:/root。即将主节点root目录下的hadoop目录拷贝到其他节点的root目录下。完成之后,需要修改各节点的/etc/hosts文件,以完成主机名到ip地址的映射。

10) 格式化NameNode。执行Hadoop的bin文件夹中的格式化命令:hadoop namenode -format,如果格式化成功,会返回一堆有关NameNode的启动信息,其中会有一句“…. has been successfully formatted.”

11) 启动HDFS和MapReduce。执行命令start-all.sh。用JPS命令检查一下是否正常启动:jsp。显示以下各进程信息则说明HDFS和MapReduce都已正常启动:

4706 JobTracker

4582 SecondaryNameNode

4278 NameNode

4413 DataNode

4853 TaskTracker

4889 Jps

12)进行测试,使用hadoop自带的测试用例wordcount程序,执行命令:hadoop jar hadoop-1.0.1-examples.jar wordcount input output。其中input文件夹是位于hadoop文件系统/user/root/目录下,可查看该目录下的文件,使用命令:hadoop fs -ls /user/root/input,其中ls可以换成其他linux命令。将待计数的文本文件至于该目录下,使用命令:hadoop fs -put file /user/root/input。输出结果将置于output目录下。如没有input目录可以建一个。

hadoop和hdfs环境搭建,布布扣,bubuko.com

时间: 2024-10-07 06:08:45

hadoop和hdfs环境搭建的相关文章

《Programming Hive》读书笔记(一)Hadoop和hive环境搭建

<Programming Hive>读书笔记(一)Hadoop和Hive环境搭建 先把基本的技术和工具学好,才能更高效地思考和工作. Chapter 1.Introduction 简介 Chapter 2.Getting Started 环境配置 Hadoop版本会更新,以官方安装教程为准 http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SingleCluster.html#Standalone_O

Hadoop源代码阅读环境搭建

Hadoop源代码阅读环境搭建 一.说明 作为一个学习hadoop的同学.必须在本机上搭建hadoop源代码阅读环境,这样,在方便阅读源代码的同一时候也方便进行调试和源代码改动. 好了.以下開始搭建好开发环境. 1.环境说明:hadoop 版本号:1.2.1. IDE:eclipse.操作系统:centos 2.网上有人是通过eclipse的新建项目指定文件夹的方式将hadoop文件夹转换成Eclipseproject同一时候导入eclipse,详细做法例如以下: File-->new-->J

分享知识-快乐自己:Liunx-大数据(Hadoop)初始化环境搭建

大数据初始化环境搭建: 一):大数据(hadoop)初始化环境搭建 二):大数据(hadoop)环境搭建 三):运行wordcount案例 四):揭秘HDFS 五):揭秘MapReduce 六):揭秘HBase 七):HBase编程 ----------------------------------------------------------------- 1):需要准备三个虚拟机环境(创建方式:可以单独创建三个虚拟机:点我查看如何安装虚拟机.也可以通过克隆方式:点我查看克隆详情) 2):

win7+Myeclipse10开发Hadoop应用程序环境搭建

1.复制linux下已配置安装好的hadoop目录进入windows, 同时修改hadoo-env.sh文件的JAVA_HOME为windows下的jdk目录. 2.复制hadoop-eclipse-1.2.jar插件进入myeclipse文件夹下dropins下 下载:我的文件下有一个以hadoop-eclipse1.2.rar文件(压缩包),下载下来,将后缀改为jar就可以了 3.重启myeclipse 4.配置:windows-Preference->windows下的hadoop目录 5

windows 7使用eclipse下hadoop应用开发环境搭建

因为一些缘故,这节内容到现在才写,其实弄hadoop有一段时间了,可以编写一些小程序了,今天来还是来说说环境的搭建.... 说明一下:这篇文章的步骤是接上一篇的hadoop文章的:http://blog.csdn.net/enson16855/article/details/37725771 ,如果不是按照上篇的方式安装hadoop,可能会有些错误~百度一下就能解决的哈~ 准备环境: 不用多说了,我用eclipse版本是最新JavaEE版本,叫什么LUA Kepler,本来是用Juno的,因为操

hadoop全分布模式环境搭建

这是我第一次搭建全分布模式,本文都是参照网友教程,按照我自己的实践过程将其进行组织.我是利用三台虚拟机进行搭建的,每台虚拟机都是ubuntuserver16.04.1(64位).搭建过程中有很多步骤和参数配置我还在研究,具体原理我现在无法讲清楚,等以后知识到我了我再来修改本文的不足和完善.文末有参考文章,大家可以综合参考. 一 集群搭建准备 1 虚拟机:三个虚拟机均为ubuntuserver16.04.1(ubuntu-16.04.1-desktop-amd64.iso)操作系统,虚拟机主机名(

一、Hadoop伪分布式环境搭建

Hadoop 2.x伪分布式环境搭建步骤: 1.修改hadoop-env.sh.yarn-env.sh.mapred-env.sh 方法:使用notepad++(beifeng用户)代开这三个文件 添加代码:export JAVA_HOME=/opt/modules/jdk1.7.0_67 2.修改core-site.xml.hdfs-site.xml.yarn-site.xml.mapred-site.xml配置文件 1)修改core-site.xml <configuration> <

Hadoop学习笔记之Hadoop伪分布式环境搭建

搭建为伪分布式Hadoop环境 1.宿主机(Windows)与客户机(安装在虚拟机中的Linux)网络连接. a) Host-only 宿主机与客户机单独组网: 好处:网络隔离: 坏处:虚拟机和其他服务器之间不能通讯: b) Bridge 桥接 宿主机与客户机在同一个局域网中. 好处:窦在同一个局域网,可以互相访问: 坏处:不完全. 2.Hadoop的为分布式安装步骤 a) 设置静态IP 在centos下左面上右上角图标右键修改: 重启网卡service network restart; 验证:

Hadoop HA + HBase环境搭建(一)————zookeeper和hadoop环境搭建

版本信息: Hadoop 2.6.3 HBase 1.0.3 JDK 1.8 Zookeeper 3.4.9 集群信息: RDFMaster 192.168.0.41 (Hadoop主节点,zk节点,HBase主节点) RDFSlave01 192.168.0.42 (Hadoop备份主节点,从节点,zk节点,HBase的RegionServer) RDFSlave02 192.168.0.43 (从节点,zk节点,HBase的RegionServer) RDFSlave03 192.168.0