Hadoop On GlusterFS
Author By esxu
2015.07.09
概述
GlusterFS为Apache Hadoop提供了兼容性,它使用Hadoop中的标准文件系统API为Hadoop的部署提供新的存储选项。现有的基于MapReduce的应用程序可以使用GlusterFS无缝连接。
- 提供Hadoop的范围内同时基于文件和基于对象的访问
- 消除了集中的元数据节点
- 兼容原有MapReduce程序,无需重写
- 提供容错文件系统
安装配置
这里以Cloudera的版本为例,GLusterfs支持多个Hadoop版本。Hadoop的安装配置这里不做说明,默认已经存在一个可用的Hadoop集群。
节点分布
主节点:
IP:11.11.11.205
HOSTNAME:jobsub-138-015
计算节点4个:
IP:11.11.11.205
HOSTNAME:jobsub-138-015
IP:11.11.11.207
HOSTNAME:jobsub-138-017
IP:11.11.11.208
HOSTNAME:jobsub-138-018
IP:11.11.11.209
HOSTNAME:jobsub-138-019
这里目的是配置glustefs文件系统,替换原Hadoop的分布式存储HDFS,过程如下:
修改配置文件
主要修改三个配置文件:core-site.xml、yarn-site.xml、mapred-site.xml
Edit core-site.xml
<configuration> <property> <name>fs.glusterfs.impl</name> <value>org.apache.hadoop.fs.glusterfs.GlusterFileSystem</value> </property> <property> <name>fs.default.name</name> <value>glusterfs:///</value> </property> <property> <name>fs.glusterfs.mount</name> <value>/mnt/glusterfs</value> </property> <property> <name>fs.AbstractFileSystem.glusterfs.impl</name> <value>org.apache.hadoop.fs.local.GlusterFs</value> </property> <property> <name>fs.glusterfs.volumes</name> <value>volume6</value> </property> <property> <name>fs.glusterfs.volume.fuse.volume6</name> <value>/mnt/glusterfs</value> </property> <property> <name>gluster.daemon.user</name> <value>hadoop</value>