hadoop入门-分布式hadoop安装
- 格式:docx
- 大小:21.05 KB
- 文档页数:4
在linux中安装Hadoop教程-伪分布式配置-Hadoop2.6.0-Ubuntu14.04注:该教程转⾃厦门⼤学⼤数据课程学习总结装好了 Ubuntu 系统之后,在安装 Hadoop 前还需要做⼀些必备⼯作。
创建hadoop⽤户如果你安装 Ubuntu 的时候不是⽤的 “hadoop” ⽤户,那么需要增加⼀个名为 hadoop 的⽤户。
⾸先按 ctrl+alt+t 打开终端窗⼝,输⼊如下命令创建新⽤户 : sudo useradd -m hadoop -s /bin/bash这条命令创建了可以登陆的 hadoop ⽤户,并使⽤ /bin/bash 作为 shell。
sudo命令 本⽂中会⼤量使⽤到sudo命令。
sudo是ubuntu中⼀种权限管理机制,管理员可以授权给⼀些普通⽤户去执⾏⼀些需要root权限执⾏的操作。
当使⽤sudo命令时,就需要输⼊您当前⽤户的密码.密码 在Linux的终端中输⼊密码,终端是不会显⽰任何你当前输⼊的密码,也不会提⽰你已经输⼊了多少字符密码。
⽽在windows系统中,输⼊密码⼀般都会以“*”表⽰你输⼊的密码字符 接着使⽤如下命令设置密码,可简单设置为 hadoop,按提⽰输⼊两次密码: sudo passwd hadoop可为 hadoop ⽤户增加管理员权限,⽅便部署,避免⼀些对新⼿来说⽐较棘⼿的权限问题: sudo adduser hadoop sudo最后注销当前⽤户(点击屏幕右上⾓的齿轮,选择注销),返回登陆界⾯。
在登陆界⾯中选择刚创建的 hadoop ⽤户进⾏登陆。
更新apt⽤ hadoop ⽤户登录后,我们先更新⼀下 apt,后续我们使⽤ apt 安装软件,如果没更新可能有⼀些软件安装不了。
按 ctrl+alt+t 打开终端窗⼝,执⾏如下命令: sudo apt-get update后续需要更改⼀些配置⽂件,我⽐较喜欢⽤的是 vim(vi增强版,基本⽤法相同) sudo apt-get install vim安装SSH、配置SSH⽆密码登陆集群、单节点模式都需要⽤到 SSH 登陆(类似于远程登陆,你可以登录某台 Linux 主机,并且在上⾯运⾏命令),Ubuntu 默认已安装了SSH client,此外还需要安装 SSH server: sudo apt-get install openssh-server安装后,配置SSH⽆密码登陆利⽤ ssh-keygen ⽣成密钥,并将密钥加⼊到授权中: exit # 退出刚才的 ssh localhost cd ~/.ssh/ # 若没有该⽬录,请先执⾏⼀次ssh localhost ssh-keygen -t rsa # 会有提⽰,都按回车就可以 cat ./id_rsa.pub >> ./authorized_keys # 加⼊授权此时再⽤ssh localhost命令,⽆需输⼊密码就可以直接登陆了。
Hadoop伪分布式安装配置过程在进行Hadoop伪分布式安装配置之前,首先需要确保系统环境符合安装要求。
Hadoop的安装需要在Linux系统下进行,并且需要安装好Java环境。
以下将详细介绍Hadoop伪分布式安装配置的步骤。
一、准备工作1. 确保系统为Linux系统,并且已经安装好Java环境。
2. 下载Hadoop安装包,并解压至指定目录。
二、配置Hadoop环境变量1. 打开.bashrc文件,添加以下内容:```bashexport HADOOP_HOME=/path/to/hadoopexport PATH=$PATH:$HADOOP_HOME/binexport HADOOP_CONF_DIR=/path/to/hadoop/etc/hadoop export HADOOP_MAPRED_HOME=$HADOOP_HOMEexport HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOMEexport YARN_HOME=$HADOOP_HOME```2. 执行以下命令使环境变量生效:```bashsource ~/.bashrc```三、配置Hadoop1. 编辑hadoop-env.sh文件,设置JAVA_HOME变量:```bashexport JAVA_HOME=/path/to/java```2. 编辑core-site.xml文件,添加以下内容:```xml<configuration><property><name>fs.defaultFS</name><value>hdfs://localhost:9000</value></property></configuration>```3. 编辑hdfs-site.xml文件,添加以下内容:```xml<configuration><property><name>dfs.replication</name><value>1</value></property></configuration>```4. 编辑mapred-site.xml.template文件,添加以下内容并保存为mapred-site.xml:```xml<configuration><property><name></name><value>yarn</value></property></configuration>```5. 编辑yarn-site.xml文件,添加以下内容:```xml<configuration><property><name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value></property><property><name>yarn.resourcemanager.hostname</name> <value>localhost</value></property></configuration>```四、格式化HDFS执行以下命令格式化HDFS:```bashhdfs namenode -format```五、启动Hadoop1. 启动HDFS:```bashstart-dfs.sh```2. 启动YARN:```bashstart-yarn.sh```六、验证Hadoop安装通过浏览器访问xxx,确认Hadoop是否成功启动。
Hadoop的安装与配置建立一个三台电脑的群组,操作系统均为Ubuntu,三个主机名分别为wjs1、wjs2、wjs3。
1、环境准备:所需要的软件及我使用的版本分别为:Hadoop版本为0.19.2,JDK版本为jdk-6u13-linux-i586.bin。
由于Hadoop要求所有机器上hadoop的部署目录结构要相同,并且都有一个相同的用户名的帐户。
所以在三台主机上都设置一个用户名为“wjs”的账户,主目录为/home/wjs。
a、配置三台机器的网络文件分别在三台机器上执行:sudo gedit /etc/network/interfaceswjs1机器上执行:在文件尾添加:auto eth0iface eth0 inet staticaddress 192.168.137.2gateway 192.168.137.1netmask 255.255.255.0wjs2和wjs3机器上分别执行:在文件尾添加:auto eth1iface eth1 inet staticaddress 192.168.137.3(wjs3上是address 192.168.137.4)gateway 192.168.137.1netmask 255.255.255.0b、重启网络:sudo /etc/init.d/networking restart查看ip是否配置成功:ifconfig{注:为了便于“wjs”用户能够修改系统设置访问系统文件,最好把“wjs”用户设为sudoers(有root权限的用户),具体做法:用已有的sudoer登录系统,执行sudo visudo -f /etc/sudoers,并在此文件中添加以下一行:wjsALL=(ALL)ALL,保存并退出。
}c、修改三台机器的/etc/hosts,让彼此的主机名称和ip都能顺利解析,在/etc/hosts中添加:192.168.137.2 wjs1192.168.137.3 wjs2192.168.137.4 wjs3d、由于Hadoop需要通过ssh服务在各个节点之间登陆并运行服务,因此必须确保安装Hadoop的各个节点之间网络的畅通,网络畅通的标准是每台机器的主机名和IP地址能够被所有机器正确解析(包括它自己)。
hadoop安装实验总结Hadoop安装实验总结Hadoop是一个开源的分布式计算框架,用于处理大规模数据集。
在本次实验中,我成功安装了Hadoop,并进行了相关的配置和测试。
以下是我对整个过程的总结和经验分享。
1. 环境准备在开始安装Hadoop之前,我们需要确保已经具备了以下几个环境条件:- 一台Linux操作系统的机器,推荐使用Ubuntu或CentOS。
- Java开发环境,Hadoop是基于Java开发的,因此需要安装JDK。
- SSH服务,Hadoop通过SSH协议进行节点之间的通信,因此需要确保SSH服务已启动。
2. 下载和安装Hadoop可以从Hadoop官方网站上下载最新的稳定版本。
下载完成后,解压缩到指定目录,并设置环境变量。
同时,还需要进行一些配置,包括修改配置文件和创建必要的目录。
3. 配置Hadoop集群Hadoop是一个分布式系统,通常会配置一个包含多个节点的集群。
在配置文件中,我们需要指定集群的各个节点的IP地址和端口号,并设置一些重要的参数,如数据存储路径、副本数量等。
此外,还可以根据实际需求调整其他配置参数,以优化集群性能。
4. 启动Hadoop集群在完成集群配置后,我们需要启动Hadoop集群。
这一过程需要先启动Hadoop的各个组件,包括NameNode、DataNode、ResourceManager和NodeManager等。
启动成功后,可以通过Web 界面查看集群的状态和运行情况。
5. 测试Hadoop集群为了验证Hadoop集群的正常运行,我们可以进行一些简单的测试。
例如,可以使用Hadoop提供的命令行工具上传和下载文件,查看文件的副本情况,或者运行一些MapReduce任务进行数据处理。
这些测试可以帮助我们了解集群的性能和可靠性。
6. 故障排除与优化在实际使用Hadoop时,可能会遇到一些故障和性能问题。
为了解决这些问题,我们可以通过查看日志文件或者使用Hadoop提供的工具进行故障排查。
hadoop安装以及配置启动命令本次安装使⽤的Hadoop⽂件是badou学院的Hadoop1.2.1.tar.gz,以下步骤都是在此版本上进⾏。
1、安装,通过下载tar.gz⽂件安装到指定⽬录2、安装好后需要配置Hadoop集群配置信息: 在hadoop的conf路径中的masters中添加master(集群机器主的hostname)在slaves中添加集群的slave的hostname名称名称对应的是各⾃机器的hostname这样通过hosts⽂件中配置的域名地址映射可以直接找到对应的机器 a、core-site.xml 在xml⽂件中添加<property><name>hadoop.tmp.dir</name><value>/usr/local/src/hadoop.1.2.1/tmp</value></property> <property><name></name><value>hdfs://192.168.79.10:9000</value></property> c、hdfs-site.xml 在⽂件中添加<property><name>dfs.replication</name><value>3</value></property><!-- 复制节点数 --> d、hadoop-env.xml 在⽂件中添加export JAVA_HOME=/usr/local/src/jdk1.6.0_45 步骤2配置好后将当前hadoop⽂件夹复制到集群中其他机器上,只需要在对应机器上修改其对应的ip、port、jdk路径等信息即可搭建集群3、配置好Hadoop环境后需要测试环境是否可⽤: a、⾸先进⼊Hadoop的安装⽬录,进⼊bin⽬录下,先将Hadoop环境初始化,命令:./hadoop namenode -format b、初始化之后启动Hadoop,命令:./start_all.sh c、查看Hadoop根⽬录下的⽂件,命令:./hadoop fs -ls/ d、上传⽂件,命令:./hadoop fs -put ⽂件路径 e、查看⽂件内容,命令:./hadoopo fs -cat hadoop⽂件地址注意:在安装Hadoop环境时先安装好机器集群,使得⾄少3台以上(含3台)机器之间可以免密互相登录(可以查看上⼀篇的linux的ssh免密登录)执⾏Python⽂件时的部分配置/usr/local/src/hadoop-1.2.1/bin/hadoop/usr/local/src/hadoop-1.2.1/contrib/streaming/hadoop-streaming-1.2.1.jar。
Hadoop集群的搭建方法与步骤随着大数据时代的到来,Hadoop作为一种分布式计算框架,被广泛应用于数据处理和分析领域。
搭建一个高效稳定的Hadoop集群对于数据科学家和工程师来说至关重要。
本文将介绍Hadoop集群的搭建方法与步骤。
一、硬件准备在搭建Hadoop集群之前,首先要准备好适合的硬件设备。
Hadoop集群通常需要至少三台服务器,一台用于NameNode,两台用于DataNode。
每台服务器的配置应该具备足够的内存和存储空间,以及稳定的网络连接。
二、操作系统安装在选择操作系统时,通常推荐使用Linux发行版,如Ubuntu、CentOS等。
这些操作系统具有良好的稳定性和兼容性,并且有大量的Hadoop安装和配置文档可供参考。
安装操作系统后,确保所有服务器上的软件包都是最新的。
三、Java环境配置Hadoop是基于Java开发的,因此在搭建Hadoop集群之前,需要在所有服务器上配置Java环境。
下载最新版本的Java Development Kit(JDK),并按照官方文档的指引进行安装和配置。
确保JAVA_HOME环境变量已正确设置,并且可以在所有服务器上运行Java命令。
四、Hadoop安装与配置1. 下载Hadoop从Hadoop官方网站上下载最新的稳定版本,并将其解压到一个合适的目录下,例如/opt/hadoop。
2. 编辑配置文件进入Hadoop的安装目录,编辑conf目录下的hadoop-env.sh文件,设置JAVA_HOME环境变量为Java的安装路径。
然后,编辑core-site.xml文件,配置Hadoop的核心参数,如文件系统的默认URI和临时目录。
接下来,编辑hdfs-site.xml文件,配置Hadoop分布式文件系统(HDFS)的相关参数,如副本数量和数据块大小。
最后,编辑mapred-site.xml文件,配置MapReduce框架的相关参数,如任务调度器和本地任务运行模式。
hadoop的基本使用Hadoop的基本使用Hadoop是一种开源的分布式计算系统和数据处理框架,具有可靠性、高可扩展性和容错性等特点。
它能够处理大规模数据集,并能够在集群中进行并行计算。
本文将逐步介绍Hadoop的基本使用。
一、Hadoop的安装在开始使用Hadoop之前,首先需要进行安装。
以下是Hadoop的安装步骤:1. 下载Hadoop:首先,从Hadoop的官方网站(2. 配置环境变量:接下来,需要将Hadoop的安装目录添加到系统的环境变量中。
编辑~/.bashrc文件(或其他相应的文件),并添加以下行:export HADOOP_HOME=/path/to/hadoopexport PATH=PATH:HADOOP_HOME/bin3. 配置Hadoop:Hadoop的配置文件位于Hadoop的安装目录下的`etc/hadoop`文件夹中。
其中,最重要的配置文件是hadoop-env.sh,core-site.xml,hdfs-site.xml和mapred-site.xml。
根据具体需求,可以在这些配置文件中进行各种参数的设置。
4. 启动Hadoop集群:在完成配置后,可以启动Hadoop集群。
运行以下命令以启动Hadoop集群:start-all.sh二、Hadoop的基本概念在开始使用Hadoop之前,了解一些Hadoop的基本概念是非常重要的。
以下是一些重要的概念:1. 分布式文件系统(HDFS):HDFS是Hadoop的核心组件之一,用于存储和管理大规模数据。
它是一个可扩展的、容错的文件系统,能够在多个计算机节点上存储数据。
2. MapReduce:MapReduce是Hadoop的编程模型,用于并行计算和处理大规模数据。
它由两个主要的阶段组成:Map阶段和Reduce阶段。
Map阶段将输入数据切分为一系列键值对,并运行在集群中的多个节点上。
Reduce阶段将Map阶段的输出结果进行合并和计算。
hadoop伪分布式安装实验总结
1. 确保系统满足要求:在开始安装之前,确保系统满足Hadoop的最低要求,包括适当的操作系统版本、Java环境和相关的依赖项。
确保在安装过程中没有缺少任何必要的软件包或依赖项。
2. 下载和安装Hadoop:从官方网站下载Hadoop的稳定版本。
解压缩下载的文件,并将其放置在适当的位置。
设置相应的环境变量,以便系统能够识别Hadoop的安装路径。
3. 配置Hadoop:编辑Hadoop配置文件,主要包括core-site.xml、hdfs-site.xml和mapred-site.xml。
在这些文件中,指定Hadoop集群的相关配置,如HDFS的名称节点、数据节点、日志目录的位置以及其他必要的属性。
4. 格式化HDFS:在启动Hadoop之前,需要对HDFS进行初始化。
使用命令hdfs namenode -format初始化名称节点。
这一步会清空HDFS上的所有数据,所以请确保在使用时备份重要数据。
5. 启动Hadoop:使用start-all.sh脚本启动Hadoop服务。
该脚本会启动HDFS和MapReduce 服务。
在启动过程中,系统会显示Hadoop的日志输出,如果有任何错误或警告信息,请注意排查并解决。
6. 测试安装:使用hadoop fs -ls命令来验证HDFS是否运行正常。
该命令应该列出HDFS 上的文件和目录列表。
您还可以运行简单的MapReduce任务来验证MapReduce服务的运行情况。
ubuntu 下安装配置hadoop 1.0.4第一次搞hadoop,折腾我2天,功夫不负有心人,终于搞好了,现在来分享下,我的环境操作系统:wmv虚拟机中的ubuntu12.04hadoop版本:hadoop-1.0.4(听说是稳定版就下了)eclipse版本:eclipse-jee-indigo-SR2-win321.先安装好jdk,然后配置好jdk的环境变量,在这里我就不累赘了!网上多的是2.安装ssh这个也不用说了2.把hadoop-1.0.4.tar.gz拖到虚拟机中,解压,比如: /home/wys/Documents/hadoop-1.0.4/ (有的还单独建了个用户,为了舍去不必要的麻烦我都是用root用户来操作的)3.修改hadoop-1.0.4/conf 下面的core-site.xml文件,如下:<configuration><property><name></name><value>hdfs://192.168.116.128:9000</value></property><property><name>hadoop.tmp.dir</name><value>/home/wys/Documents/tmp</value></property></configuration>192.168.116.128这个是虚拟机中ubuntu的ip,听说用localhost,127.0.0.1都不行,我没试过,直接写上ip地址了tmp是预先创建的一个目录4.修改hadoop-env.sh把export JAVA_HOME=xxxxxx 这行的#号去掉,写上jdk的目录路径5.修改hdfs-site.xml如下:<configuration><property><name>dfs.replication</name><value>1</value></property><property><name>dfs.permissions</name><value>false</value></property></configuration>说明:为了以后用eclipse开发出现各种问题,就把权限关了!6.修改mapred-site.xml<configuration><property><name>mapred.job.tracker</name><value>192.168.116.128:9001</value></property></configuration>这里我也用了本机ip7.启动hadoop为了方便启动,我就把hadoop配置到了环境变量(配置完记得重启):export HADOOP_HOME=/home/wys/Documents/hadoop-1.0.4export JAVA_HOME=/home/wys/Documents/jdk1.6.0_24export JRE_HOME=$JAVA_HOME/jreexport PATH=$PATH:$HADOOP_HOME/bin把这个复制到/etc/profile 文件中HADOOP_HOME JAVA_HOME根据实际情况而定!重启之后格式化分布式文件系统:hadoop namenode -format接着启动hadoop:start-all.sh成功后会看到一下信息:starting namenode, logging to /home/wys/Documents/hadoop-1.0.4/libexec/../logs/hadoop-root-namenode-ubuntu.outlocalhost: starting datanode, logging to /home/wys/Documents/hadoop-1.0.4/libexec/../logs/hadoop-root-datanode-ubu ntu.outlocalhost: starting secondarynamenode, logging to /home/wys/Documents/hadoop-1.0.4/libexec/../logs/hadoop-root-secondarynam enode-ubuntu.outstarting jobtracker, logging to /home/wys/Documents/hadoop-1.0.4/libexec/../logs/hadoop-root-jobtracker-ubu ntu.outlocalhost: starting tasktracker, logging to /home/wys/Documents/hadoop-1.0.4/libexec/../logs/hadoop-root-tasktracker-ub untu.out现在就可以在浏览器中输入地址:http://192.168.116.128:50030http://192.168.116.128:50070均可以查看到一些信息假如这个http://192.168.116.128:50070地址无法访问是因为hadoop.tmp.dir 这个没指定文件夹至此hadoop已安装配置完成!Eclipse 连接hadoop开发程序入门前面一遍博文介绍了如何安装配置hadoop地址:/wqs1010/article/details/8486040这里就来介绍一下用eclipse如何连接hadoop开发由于我用的是虚拟机中的系统来做测试,多少有点不正确,还请谅解!1.首先要下载eclipse hadoop插件我用的是hadoop 1.0.4的版本,这里有个已经做好了的版本下载地址:hadoop-eclipse-plugin-1.0.4.jar下载下来直接把jar文件放到eclipse/plugins/文件夹中,然后重启eclipse2.之后会到看到如下图:然后设置下右边的hadoop根目录没有的话说明插件没安装成功!3.切换到Map/Reduce视图:下面有个黄色的大象:4.右击新建一个hadoop地址把红框的都填下:Location name : 这个随便写个Map/Reduce host port: 这2个是要根据conf/mapred-site.xml这个来定的DFS Master port:这个是对应你conf/core-site.xml这个文件中这个属性的值右边的Advanced parameters就不用改了!完成后再看工程视图:一步一步展开DFS Locations当出现ConnectException异常时,只要检查下你写的地址跟端口是否跟hadoop配置文件中一样即可!5.连接成功之后类似这个样子:6.新建一个MapReduce Project把\hadoop-1.0.4\src\examples\org\apache\hadoop\examples\WordCount.java复制到你的工程7.在eclipse里,创建远程目录命名为wordCount,建完之后刷新就可以看到了8.然后从本地上传一个word.txt文件word.txt内容:java c++ python cjava c++ javascripthelloworld hadoopmapreduce java hadoop hbase当出现node.SafeModeException: 异常,这时就要把hadoop安全模式关闭, 命令:hadoop dfsadmin –safemode leave9.上传之后run as WordCount.java 记得带上参数,用空格隔开这个时候会出现Exception in thread "main" java.io.IOException: Failed to set permissions of path: \tmp\hadoop-wys\mapred\staging\wys1479426331\.stagingto 0700 异常,是因为没有权限,网上说替换hadoop-core-xx.jar包中的org.apache.hadoop.fs.FileUtil.class文件,除此之外我还没找到其他的方法了!文件地址:FileUtil10.替换之后刷新工程,再次执行WordCount.java文件当控制台打印下面这些说明已经执行成功!再看DFS Locations下面会多出来一个文件夹和2个文件,打开part-r-00000文件这个就是你想要的:恭喜你,此时大功告成!。
Hadoop安装、配置指南一、环境1、软件版本Hadoop:hadoop-0.20.2.Hive:hive-0.5.0JDK:jdk1.6以上版本2、配置的机器:主机[服务器master]:192.168.10.121 hadoop13从机[服务器slaves]:192.168.10.68 hadoop4在本文中,在命令或二、先决条件1、配置host:打开/etc/host文件,添加如下映射192.168.10.121 hadoop13 hadoop13192.168.10.68 hadoop4 hadoop42、配置SSH自动登陆1)以ROOT用户,登陆到[服务器master]上执行,如下操作:ssh-keygen -t rsa //一路回车cd ~/.sshcat id_rsa.pub >> authorized_keysscp -r ~/.ssh [服务器slaves]:~/2)以ROOT用户,登陆到[服务器slaves]上执行,如下操作:scp -r ~/.ssh [服务器master]:~/3)测试SSH是否配置成功在主服务器中执行如下命令:ssh [服务器master]ssh 192.168.10.68成功显示结果:Last login: Thu Aug 26 14:11:27 2010 from 在从服务器中执行如下命令:ssh [服务器slaves]ssh 192.168.10.121成功显示结果Last login: Thu Aug 26 18:23:58 2010 from 三、安装hadoop1、JDK安装,解压到/usr/local/jdk1.6.0_17,并配置/etc/profile环境export JAVA_HOME=/usr/local/jdk/jdk1.7.0export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre:$PATHexport CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jarJDK路径:/usr/local/jdk/jdk1.7.0export JAVA_HOME=/usr/local/jdk/jdk1.7.0export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre:$PATHexport CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar/usr/local/jdk/jdk1.7.02、下载Hadoop 并解压到[服务器master]的/root/zwmhadoop目录下tar zxvf hadoop-0.20.2.tar.gz四、配置hadoop1.配置主机[服务器master]到zwm hadoop/hadoop-0.20.2/ hadoop 目录下,修改以下文件:1)配置conf/hadoop-env.sh文件,在文件中添加环境变量,增加以下内容:export JAVA_HOME=/usr/local/jdk1.6.0_17export HADOOP_HOME=/root/zwmhadoop/hadoop-0.20.2/2)配置conf/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></name><value>hdfs://192.168.10.121:9000</value>//你的namenode的配置,机器名加端口<description>The nam e of the default file system. Either the literal string "local" o r a host:port for DFS.</description></property></configuration>3)配置conf/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>hadoop.t m p.dir</name><value>/root/zwmhadoop/t m p</value>//Hadoop的默认临时路径,这个最好配置,然后在新增节点或者其他情况下莫名其妙的DataNode启动不了,就删除此文件中的t mp目录即可。
一:准备4台集群的机器.192.168.1.31 192.168.1.32 192.168.1.33 192.168.1.34root账号修改4台机器的/etc/hosts 文件,添加如下:192.168.1.31 hadoop1 #namenode+job192.168.1.32 hadoop2 #datanode192.168.1.33 hadoop3 # datanode192.168.1.34 hadoop4 # datanode在每台服务器上创建4个一样的hadoop用户:eradd hadoop #加用户2.passwd hadoop #修改密码二:创建SSH免密码登录hadoop 账号在namenode节点上,查看ssh localhost 是否是免密码的,如果不是,执行下面命令:a)生成公钥密钥:ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa执行完成之后,会在~/.ssh/ 下生成id_dsa.pub 和id_dsab)把id_dsa.pub 文件内容复制到authorized_keys 文件里:cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys执行完成后会在~/.ssh/ 下生成authorized_keys删除id_dsa.pub 文件: rm –rf id_dsa.pubc)将authorized_keys复制到各个datanode节点上:在各个子节点上创建.ssh 文件夹:mkdir /home.hadoop/.ssh将证书文件拷贝到各台机器上(会提示输入密码):scp authorized_keys hadoop2:/home/hadoop/.ssh/scp authorized_keys hadoop3:/home/hadoop/.ssh/scp authorized_keys hadoop4:/home/hadoop/.ssh/d)将各个datanode 节点下的.ssh 权限改成700, authorized_keys 改成600改完后应该就差不多可以了,在hadoop1 机器上依次执行: ssh hadoop2 ,sshhadoop3 , ssh hadoop4, 如果都不用密码的话,表是成功.三:安装jdk用root账号安装,可以下载个bin文件,我的是jdk-6u23-linux-i586-rpm.bin , 直接./jdk-6u23-linux-i586-rpm.bin 安装, 默认路径在/usr/java/jdk1.6.0_23/ 下,4台机器都一样,注意点:安装的路径一定要一样.四:安装配置Hadoop用hadoop账号,下载hadoop-0.20.205.0.tar.gz ,放在/home/hadoop/ 下,修改hadoop-0.20.205.0.tar.gz 权限: chmod 700 hadoop-0.20.205.0.tar.gz解压: tar zxvf hadoop-0.20.205.0.tar.gz ,完成后会生成hadoop-0.20.205.0 目录,进入hadoop-0.20.205.0/conf/ 下按照如下方式修改下面文件:node配置: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>hadoop.tmp.dir</name><value>/tmp/hadooptmp</value><description>A base for other temporary directories.</description> </property><property><name></name><value>hdfs://hadoop1:9000</value><description>The name of the default file system. A URI whose scheme and authority determine the FileSystem implementation. The uri's scheme determines the config property (fs.SCHEME.impl) naming the FileSystem implementation class.The uri's authority is used to determine the host, port, etc. for a filesystem.</description></property></configuration>2.Tracker配制: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>hadoop1:9001</value><description>The host and port that the MapReduce job tracker runs at.If "local", then jobs are run in-process as a single map and reduce task.</description></property><property><name>mapred.hosts</name><value>slaves.include</value><description>show slaves node</description></property></configuration>3.备份: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>1</value><description>backup</description></property></configuration>~4.备用namenode节点:Masters:hadoop15.集群配置slaves:hadoop2hadoop3hadoop46.Hadoop环境配置:hadoop-env.sh把export JAVA_HOME 前面的“#”去掉,改成你本机安装的jdk的路径到此,hadoop配置已经完成.7.把hadoop分发给各个子节点:a)删除hadoop1(namenode)节点上安装之后的.tar.gz包:i.rm –rf hadoop-0.20.205.0.tar.gzb)把hadoop1(namenode)节点上配置好的hadoop打个包:i.tar vczf hadoop-0.20.205.0.tar.gz hadoop-0.20.205.08.把已经配置好的压缩包hadoop-0.20.205.0.tar.gz 分发到各个子节点:a)scp hadoop-0.20.205.0.tar.gz hadoop2:/home/hadoop/b)scp hadoop-0.20.205.0.tar.gz hadoop3:/home/hadoop/c)scp hadoop-0.20.205.0.tar.gz hadoop4:/home/hadoop/d)每个节点上解压hadoop-0.20.205.0.tar.gz9.回到hadoop1 (namenode)节点上,运行hadoopa)进入到/home/hadoop/hadoop0.20.205.0/bin/下:i.格式化namenode: ./hadoop namenode –formatii.启动hadoop: ./start-all.shiii.查看任务状态: http://192.168.1.31:50070/dfshealth.jspiv.停止hadoop: ./stop-all.sh。