[转]hadoop0.2版本使用

Hadoop配置
1.	下载Hadoop:
http://labs.renren.com/apache-mirror//hadoop/core/
选择相应版本并下载相应目录下hadoop-*.tar.gz文件。
Ps:
1)	建议选择0.20.2相关版本,此配置基于0.20.204.0版本。
2)	这里只给出一种安装方式(tar方式),其他方式亦可。
2.	解压到安装目录:
sudo tar -zxvf hadoop-*.tar.gz –C /opt
Ps:
1)	自行选择解压目录,即安装目录,不建议选在指定用户目录下。通常在集群配置时,所有机器的Hadoop安装目录路径是相同的,方便管理。
3.	添加环境变量:
在文件/etc/environment下添加如下环境变量:
PATH=”…: /opt/hadoop-*/bin”
HADOOP_INSTALL=/opt/hadoop-*
HADOOP_CONF_DIR=/opt/hadoop-*/conf
HADOOP_COMMOM_HOME=/opt/hadoop-*
Ps:
1)	HADOOP_INSTALL和HADOOP_COMMON_HOME均设为安装目录即可,$HADOOP_CONF_DIR设置为安装目录下conf文件夹。
2)	推荐设置环境变量,方便之后的操作,如果不设置不能保证也能正常运行(未尝试)。
4.	设置文件夹所属:
sudo chown –R yyz:yyz $HADOOP_INSTALL
Ps:
1)	如果你的hadoop安装目录所有人是root那么会有很多麻烦,建议设置成为普通用户,”yyz”是实验时操作的用户,请替换成自己的用户。
5.	修改hadoop配置文件:
修改hadoop-env.sh文件,加入如下一行:
export JAVA_HOME=/usr/program/jdk1.6.0_06
ps:事实上,文件中有这一行,只不过被注释掉了,去掉该行注释即可。
修改core-site.xml:
源文件:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
</configuration>
修改后:
<?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>/usr/local/hadoop/hadooptmp</value>
  <description>A base for other temporary directories.</description>
</property>
<property>
  <name>fs.default.name</name>
  <value>hdfs://localhost:9000</value>
  <description> The name of the default file system.URI.</description>
</property>
</configuration>
简要说明:
1)	hadoop.tmp.dir配置为临时文件存放目录,该目录自行指定并且是已经存在的。
2)	fs.default.name配置为NameNode的URI,建议写IP,localhost可能会引起一些麻烦,不过在这里写localhost也没问题。
修改hdfs-site.xml:
源文件:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
</configuration>
修改后:
<?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>Default block replication.</description>
</property>
</configuration>
简要说明:
1)	dfs.replication配置为数据块的复制次数,即备份数量,它必须不大于集群的机器数目,默认值是3.
修改mapred-site.xml:
源文件:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
</configuration>
修改后:
<?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>localhost:9001</value>
  <description>The host and port that the MapReduce job tracker runs at.</description>
</property>
<property>
	<name>mapred.local.dir</name>
	<value>/usr/local/hadoop/hadooptmp/maptmp1</value>
	<description>Temp folder for local Map/Reduce.</description>
</property>
</configuration>
简要说明:
1)	mapred.job.tracker配置JobTracker的主机和端口
2)	mapred.local.dir配置Map/Reduce存放临时文件的场所,多路径以逗号分隔,有助于磁盘i/o
6.	*****配置结束,将配置好的hadoop文件夹拷贝到其余集群机器当中,并微调配置以适应各台机器。(伪分布式不用做)*****

Hadoop使用
1.	进入hadoop安装目录:
cd $HADOOP_INSTALL
2.	格式化hadoop文件系统:
bin/hadoop namenode –format
Ps:
1)	如果添加了bin文件夹路径到环境变量PATH中,可以不用进入hadoop目录下,任何场所均可使用bin下所有命令。
2)	对话询问输入y确认执行
3.	启动守护进程:
bin/start-all.sh
Ps:
1)	如果hadoop安装目录所属是root用户,这里将会要求反复输入root密码,很烦恼。
2)	验证hadoop是否配置成功:
	在浏览器中输入地址Http://localhost:50030和Http://localhost:50070看是否出现hadoop页面。
	也可以输入命令:bin/jps查看已经启动的节点。
4.	运行实例:
(1)在hdfs中建立一个input目录:bin/hadoop fs -mkdir input
(2)将file01和file02拷贝到hdfs中:
bin/hadoop fs -put conf/core-site.xml input
(3)执行wordcount:
bin/hadoop jar hadoop-examples-*.jar wordcount input output
(4)完成之后,查看结果
bin/hadoop fs -cat output/part-r-00000
Ps:
1)	Output是输出目录,hadoop进程会自动建立,而提前建立反而会导致运行错误。下次运行前可先将output删除,命令式bin/hadoop fs –rmr output
2)	hadoop-examples-*.jar是hadoop下样例文件
5.	结束守护进程:
bin/stop-all.sh
 

你可能感兴趣的:(hadoop)