‘壹’ 如何在win7中配置hadoop伪分布式配置
第一步: 安装JDK 因为 Hadoop 运行必须安装 JDK 环境,因此在安装好 Linux 后进入系统的第一步 便是安装 JDK ,安装过程和在 Windows 环境中的安装步骤很类似,首先去Oracle 官网 去下载安装包,然后直接进行解压。我自己解压在路径 /usr/jvm ...
‘贰’ windows怎么安装hadoop
1、下载安装JDK,以及Eclipse2、新建JAVAProject3、去cloudera网站下载hadoop的CDH3u6版本。将起解压到win7的某个目录4、选中OperateHDFS,右击,选择“property”,弹出右侧的窗口;选择“JavaBuildPath”——“Libraries”——AddExternalJars5、到上面的画面后,下面就是选择开发hadoop程序时,用到的一些jar包将lib文件夹下的所有的jar包,添加进去;将红框内的jar包,安装进去。6、创建配置文件夹7、将core-site.xml,hdfs-site.xml,mapred-site.xml放入到此文件夹中。8、右键->属性进行如下操作,添加刚刚创建conf文件夹配置搞定!写代码的过程中要写入的namenode和jobtracker地址(修改为你自己的)在你的代码中,加入如下代码就可以了Configurationconf=newConfiguration();conf.set("fs.default.name","192.1.1.2:9000");conf.set("mapred.job.tracker","192.1.1.2:9001");
‘叁’ 如何配置hadoop环境变量
参考 export 变量。
环境变量就和变量一样使用,echo 变量就出来了。
‘肆’ 如何在win7安装hadoop
环境及软件准备:
win7(64位)
cygwin 1.7.9-1
jdk-6u25-windows-x64.zip
hadoop-0.20.2.tar.gz
1.安装jdk,并置java环境变量包括:JAVA_HOME,PATH,CLASSPATH
2.安装Hadoop,版本为0.20.2,我是直接放到/home目录下,并解压
tar –zxvf
hadoop-0.20.2.tar.gz
3.配置Hadoop,需要修改hadoop的配置文件,它们位于conf子目录下,分别是hadoop-env.sh、core-site.xml、hdfs-site.xml
和mapred-site.xml
(1) 修改hadoop-env.sh:
只需要将JAVA_HOME 修改成JDK 的安装目录即可
export
JAVA_HOME=/cygdrive/d/java/jdk1.6.0_25
(注意:路径不能是windows 风格的目录d:\java\jdk1.6.0_25,而是LINUX
风格/cygdrive/d/java/jdk1.6.0_25)
(2) 修改core-site.xml:(指定namenode)
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
(3)修改hdfs-site.xml(指定副本为1)
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
(4) 修改mapred-site.xml (指定jobtracker)
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
4.验证安装是否成功,并运行Hadoop
(1) 验证安装
$ bin/hadoop
Usage: hadoop [--config confdir] COMMAND
where COMMAND is one of:
namenode -format format the DFS filesystem
secondarynamenode run the DFS secondary namenode
namenode run the DFS namenode
datanode run a DFS datanode
dfsadmin run a DFS admin client
mradmin run a Map-Rece admin client
fsck run a DFS filesystem checking utility
fs run a generic filesystem user client
balancer run a cluster balancing utility
jobtracker run the MapRece job Tracker node
pipes run a Pipes job
tasktracker run a MapRece task Tracker node
job manipulate MapRece jobs
queue get information regarding JobQueues
version print the version
jar <jar> run a jar file
distcp <srcurl> <desturl> file or directories recursively
archive -archiveName NAME <src>* <dest> create a hadoop archive
daemonlog get/set the log level for each daemon
or
CLASSNAME run the class named CLASSNAME
Most commands print help when invoked w/o parameters.
(2) 格式化并启动Hadoop
bin/hadoop namenode –format
bin/start-all.sh
(3) 查看Hadoop
命令行查看:
$ jps
1608 NameNode
6572 Jps
6528 JobTracker
(注意:win7下cygwin中DateNode和TaskTracker进程是无法显示的,好像是cygwin的问题)
‘伍’ 如何配置Hadoop环境
安装前设置
在安装Hadoop之前,需要进入Linux环境下,连接Linux使用SSH(安全Shell)。按照下面提供的步骤设立Linux环境。
创建一个用
在开始时,建议创建一个单独的用户Hadoop以从Unix文件系统隔离Hadoop文件系统。按照下面给出的步骤来创建用户:
使用 “su” 命令开启root .
创建用户从root帐户使用命令 “useradd username”.
现在,可以使用命令打开一个现有的用户帐户“su username”.
打开Linux终端,输入以下命令来创建一个用户。
$ su
password:
# useradd hadoop
# passwd hadoop
New passwd:
Retype new passwd
SSH设置和密钥生成
SSH设置需要在集群上做不同的操作,如启动,停止,分布式守护shell操作。认证不同的Hadoop用户,需要一种用于Hadoop用户提供的公钥/私钥对,并用不同的用户共享。
下面的命令用于生成使用SSH键值对。复制公钥形成 id_rsa.pub 到authorized_keys 文件中,并提供拥有者具有authorized_keys文件的读写权限。
$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
安装Java
Java是Hadoop的主要先决条件。首先,应该使用命令“java-version”验证 java 存在在系统中。 Java version 命令的语法如下。
$ java -version
如果一切顺利,它会给下面的输出。
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b13)
Java HotSpot(TM) Client VM (build 25.0-b02, mixed mode)
如果Java还未安装在系统中,那么按照下面的给出的步骤来安装Java。
第1步
下载Java(JDK<最新版> - X64.tar.gz)
然后JDK-7u71-linux-x64.tar.gz将被下载到系统。
第2步
一般来说,在下载文件夹中的Java文件。使用下面的命令提取 jdk-7u71-linux-x64.gz文件。
$ cd Downloads/
$ ls
jdk-7u71-linux-x64.gz
$ tar zxf jdk-7u71-linux-x64.gz
$ ls
jdk1.7.0_71 jdk-7u71-linux-x64.gz
第3步
为了使Java提供给所有用户,将它移动到目录 “/usr/local/”。打开根目录,键入以下命令。
$ su
password:
# mv jdk1.7.0_71 /usr/local/
# exit
第4步
用于设置PATH和JAVA_HOME变量,添加以下命令到~/.bashrc文件。
export JAVA_HOME=/usr/local/jdk1.7.0_71
export PATH=PATH:$JAVA_HOME/bin
现在从终端验证 java -version 命令如上述说明。
下载Hadoop
下载来自Apache基金会软件,使用下面的命令提取 Hadoop2.4.1。
$ su
password:
# cd /usr/local
# wget http //apache claz org/hadoop/common/hadoop-2.4.1/
hadoop-2.4.1.tar.gz
# tar xzf hadoop-2.4.1.tar.gz
# mv hadoop-2.4.1/* to hadoop/
# exit
Hadoop操作模式
下载 Hadoop 以后,可以操作Hadoop集群以以下三个支持模式之一:
本地/独立模式:下载Hadoop在系统中,默认情况下之后,它会被配置在一个独立的模式,用于运行Java程序。
模拟分布式模式:这是在单台机器的分布式模拟。Hadoop守护每个进程,如 hdfs, yarn, MapRece 等,都将作为一个独立的java程序运行。这种模式对开发非常有用。
完全分布式模式:这种模式是完全分布式的最小两台或多台计算机的集群。我们使用这种模式在未来的章节中。
在单机模式下安装Hadoop
在这里,将讨论 Hadoop2.4.1在独立模式下安装。
有单个JVM运行任何守护进程一切都运行。独立模式适合于开发期间运行MapRece程序,因为它很容易进行测试和调试。
设置Hadoop
可以通过附加下面的命令到 ~/.bashrc 文件中设置 Hadoop 环境变量。
export HADOOP_HOME=/usr/local/hadoop
在进一步讨论之前,需要确保Hadoop工作正常。发出以下命令:
$ hadoop version
如果设置的一切正常,那么应该看到以下结果:
Hadoop 2.4.1
Subversion https://svn.apache.org/repos/asf/hadoop/common -r 1529768
Compiled by hortonmu on 2013-10-07T06:28Z
Compiled with protoc 2.5.0
From source with checksum
这意味着Hadoop在独立模式下工作正常。默认情况下,Hadoop被配置为在非分布式模式的单个机器上运行。
‘陆’ win7上搭Hadoop平台,格式化出现HADOOP_HDFS_HOME not found!错误
hadoop namenode -format试试呢
‘柒’ 如何配置一个环境变量HADOOP
典型的配置:
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_HOME=$HADOOP_HOMEexport
YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export
LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/amd64/server:/usr/local/lib:$HADOOP_HOM
/lib/native
修改hadoop解压文件名称 :
mv hadoop-2.4.1 hadoop
将hadoop安装目录的权限赋值为hadoop用户:
chown -R hadoop:hadoop hadoop
创建Hadoop数据目录,并赋予权限:
[root@djt java]# mkdir -p /data/dfs/name
[root@djt java]# mkdir -p /data/dfs/data
[root@djt java]# mkdir -p /data/tmp
[root@djt java]# chown -R hadoop:hadoop hadoop /data/
[root@djt java]# ls -l /d
data/ dev/ [root@djt java]# ls -l /data/
total 8
drwxr-xr-x 4 hadoop hadoop 4096 May 21 17:26 dfs
drwxr-xr-x 2 hadoop hadoop 4096 May 21 17:26 tmp
1.1修改主机名
vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=itcast ###
‘捌’ win7下搭建hadoop好吗
可以。
alvik有自己的libdex库负责对.class进行处理。libdex主要对.class进行处理生成自己的dex文件。主要做的工作是,对虚拟机指令进行转换(dalvik是基于寄存器的,sun虚拟机是基于栈的),对类的静态数据进行归类、压缩。
dalvik基于寄存器,而jvm基于stack
,dalvik执行的是特有的dex文件格式,而jvm运行的是*.class文件格式。
‘玖’ windows环境如何搭建hadoop最好
1、下载安装JDK,以及Eclipse
2、新建JAVA Project
3、去cloudera网站下载hadoop的CDH3u6版本。将起解压到win7的某个目录
4、选中OperateHDFS,右击,选择“property”,弹出右侧的窗口;
选择“Java Build Path” —— “Libraries” —— Add External Jars
5、到上面的画面后,下面就是选择开发hadoop程序时,用到的一些jar包
将lib文件夹下的所有的jar包,添加进去;将红框内的jar包,安装进去。
6、创建配置文件夹
7、将core-site.xml,hdfs-site.xml,mapred-site.xml放入到此文件夹中。
8、右键->属性 进行如下操作,添加刚刚创建conf文件夹
配置搞定!
写代码的过程中要写入的namenode和jobtracker地址(修改为你自己的)
在你的代码中,加入如下代码就可以了
Configuration conf = new Configuration();
conf.set("fs.default.name","192.1.1.2:9000");
conf.set("mapred.job.tracker","192.1.1.2:9001");
‘拾’ 怎样在windows中配置部署的hadoop2,创建输入和输出目录
若在windows的Eclipse工程中直接启动maprec程序,需要先把hadoop集群的配置目录下的xml都拷贝到src目录下,让程序自动读取集群的地址后去进行分布式运行(您也可以自己写java代码去设置job的configuration属性)。
若不拷贝,工程中bin目录没有完整的xml配置文件,则windows执行的maprece程序全部通过本机的jvm执行,作业名也是带有“local"字眼的作业,如 job_local2062122004_0001。 这不是真正的分布式运行maprece程序。
估计得研究org.apache.hadoop.conf.Configuration的源码,反正xml配置文件会影响执行maprece使用的文件系统是本机的windows文件系统还是远程的hdfs系统; 还有影响执行maprece的mapper和recer的是本机的jvm还是集群里面机器的jvm
二、 本文的结论
第一点就是: windows上执行maprece,必须打jar包到所有slave节点才能正确分布式运行maprece程序。(我有个需求是要windows上触发一个maprece分布式运行)
第二点就是: Linux上,只需拷贝jar文件到集群master上,执行命令hadoop jarPackage.jar MainClassName即可分布式运行maprece程序。
第三点就是: 推荐使用附一,实现了自动打jar包并上传,分布式执行的maprece程序。
附一、 推荐使用此方法:实现了自动打jar包并上传,分布式执行的maprece程序: