环境:Ubuntu 11.04
准备工作:
a.先安装jdk
b.修改/etc/hosts,绑定 10.16.110.7 master (最好不要用127.0.0.1 localhost 后面会出现意想不到的错误)
1.下载Hadoop-1.0.2
在linux下执行 wget
解压 tar zxvf hadoop-1.0.2.tar.gz
cd hadoop-1.0.2/目录
2、配置hadoop伪分布式环境,运行hadoop
进入conf目录
修改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>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
~
<!-- fs.default.name - 这是一个描述集群中NameNode结点的URI(包括协议、主机名称、端口号),集群里面的每一台机器都需要知道NameNode的地址。DataNode结点会先在NameNode上注册,这样它们的数据才可以被使用。独立的客户端程序通过这个URI跟DataNode交互,以取得文件的块列表。-->
修改conf/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>
<!-- mapred.job.tracker -JobTracker的主机(或者IP)和端口。-->
修改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>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
<!-- dfs.replication -它决定着 系统里面的文件块的数据备份个数。对于一个实际的应用,它 应该被设为3(这个数字并没有上限,但更多的备份可能并没有作用,而且会占用更多的空间)。少于三个的备份,可能会影响到数据的可靠性(系统故障时,也许会造成数据丢失)-->
修改conf/hadoop-env.sh 配置JAVA_HOME export JAVA_HOME=/home/yongkang/tools/java
在/conf/master中加入主机的ip 10.16.110.7
在/conf/salves中加入slaves机器 10.16.110.7
运行:
格式化分布式文件系统:$ bin/hadoop namenode –format
启动hadoop进程:$ bin/start-all.sh
是否启动成功,可访问以下url
NameNode – :50070/
JobTracker – :50030/
如果不能访问,检查logs目录下的日志分析原因。
正常运行后,执行jps命令,应该可以看到有5个hadoop相关进程
@lnuxidc:~/tools/hadoop-1.0.2/bin$2>@lnuxidc:~/tools/hadoop-1.0.2/bin$ jps
26999 Jps
11937 SecondaryNameNode
11413 NameNode
12024 JobTracker
12281 TaskTracker
11662 DataNode