Hadoop 集群 傻瓜式搭建手记 (四) 完结篇

实际配置这部分时,才发现在(一)当中提到的那两个官网文档已经过时了,现在我实际下载的版本是 0.20.203,也即那个stable版本。于是只好找到相应版本的文档来参考了:http://hadoop.apache.org/common/docs/stable/cluster_setup.html


关于Hadoop的配置,按照我的理解,应该有六个文件需要修改,它们都在Hadoop的conf文件夹下,分别是

masters/slavers:配置masters和slavers的机器IP

hadoop-env.sh :Hadoop 运行时的环境变量,比如JAVA_HOME,LOG之类的

core-site.xml :Hadoop 的核心配置文件,对应并覆盖core-default.xml 中的配置项

hdfs-site.xml :HDFS 的配置文件,对应并覆盖hdfs-default.xml 中的配置项

mapred-site.xml :Map/Reduce的配置文件,对应并覆盖mapred-default.xml 中的配置项

上面提到的三个*-default.xml 是Hadoop的默认配置项,理论上都是只读的,如果要修改,就通过对应的用户配置文件来覆盖其设置。


1、先配置masters/slavers,NameNode和JobTracker是master, DataNode01和DataNode02是salvers

Masters:

vi /hadoop/conf/masters
masters文件内容如下:

192.168.100.101
192.168.100.102

Slavers:

vi /hadoop/conf/slavers
slavers文件内容如下:

192.168.100.103
192.168.100.104


2、先配置hadoop-env.sh,这里最重要的是配置JAVA_HOME,在我的机器上是这样的:

export JAVA_HOME=/usr/lib/jvm/java-6-sun

其余的可以考虑配置日志文件路径:

export HADOOP_LOG_DIR=${HADOOP_HOME}/logs

3、配置 core-site.xml,通过文档可以知道这里一般是配置NameNode的地址,即机器名或IP:

<configuration>  
        <property>
                <name>fs.default.name</name>   
                <value>hdfs://192.168.100.101:9000</value>   
        </property> 
</configuration> 

4、配置 hdfs-site.xml,这里一般配置文件存放路径以及文件权限:

<configuration>  
	<property>  
		<!-- DFS中存储文件命名空间信息的目录 -->  
		<name>dfs.name.dir</name>  
		<value>/hadoop/dfs/name</value>  
	</property>  
	<property>  
		<!-- DFS中存储文件数据的目录 -->  
		<name>dfs.data.dir</name>   
		<value>/hadoop/dfs/data</value>  
	</property>  
	<property>  
		<!-- 是否对DFS中的文件进行权限控制(测试中一般用false)-->  
		<name>dfs.permissions</name>  
		<value>false</value>  
   </property>  
</configuration> 


5、配置mapred-site.xml, 这里配置的东西有很多,都是跟Map-Reduce相关的,不过暂时先配置如下几项:

<configuration>
    <property>  
        <!-- JobTracker节点 -->  
        <name>mapred.job.tracker</name>  
        <value>hdfs://192.168.100.102:9001</value>  
    </property>  
    <property>  
        <!-- map/reduce的系统目录(使用的HDFS的路径) -->  
        <name>mapred.system.dir</name>  
        <value>/hadoop/mapred/system</value>  
    </property>  
    <property>  
        <!-- map/reduce的临时目录(可使用“,”隔开,设置多重路径来分摊磁盘IO) -->  
        <name>mapred.local.dir</name>  
        <value>/hadoop/mapred/local</value>  
    </property>  
</configuration> 

这些配置都可以在一台机器上搞定,由于Hadoop所有机器是使用同样的配置,所以可以通过scp命令将conf下的内容拷贝复制到各个机器上:

scp -rp /hadoop/conf fox@192.168.100.102/hadoop/

只复制conf是由于我拷贝虚拟机时就已经把JAVA,Hadoop 都安装好后才拷贝的,这样可以保证所有文件在同一目录。


启动

然后,激动人心的时刻到了,所有配置都搞定了,我们可以启动了!

不过还有一件事情必须要先做, 格式化名称空间。

在NameNode上,执行如下命令:

cd /hadoop/bin
./hadoop namenode -format
执行后结果如下:


然后就可以执行最后一个命令了:

./start-all.sh

如果一切顺利的话,应该就成功了:



如果要关闭的话,可以执行

./stop-all.sh








  • 1
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值