[hadoop@bigdata-senior01 hadoop-2.5.0]$ vim ${HADOOP_HOME}/etc/hadoop/hdfs-site.xml 1 <property> <name>dfs.replication</name> <value>1</value> </property> 1 2 3 4
dfs.replication配置的是HDFS存储时的备份数量,因为这里是伪分布式环境只有一个节点,所以这里设置为1。
2、 格式化HDFS
[hadoop@bigdata-senior01 ~]$ hdfs namenode –format 1
格式化是对HDFS这个分布式文件系统中的DataNode进行分块,统计所有分块后的初始元数据的存储在NameNode中。
格式化后,查看core-site.xml里hadoop.tmp.dir(本例是/opt/data目录)指定的目录下是否有了dfs目录,如果有,说明格式化成功。
注意:
- 格式化时,这里注意hadoop.tmp.dir目录的权限问题,应该hadoop普通用户有读写权限才行,可以将/opt/data的所有者改为hadoop。
- [hadoop@bigdata-senior01 hadoop-2.5.0]$ sudo chown -R hadoop:hadoop /opt/data
- 查看NameNode格式化后的目录。
[hadoop@bigdata-senior01 ~]$ ll /opt/data/tmp/dfs/name/current 1
fsimage是NameNode元数据在内存满了后,持久化保存到的文件。
fsimage*.md5 是校验文件,用于校验fsimage的完整性。
seen_txid 是hadoop的版本
vession文件里保存:
- namespaceID:NameNode的唯一ID。
- clusterID:集群ID,namenode和DataNode的集群ID应该一致,表明是一个集群。
#Mon Jul 04 17:25:50 CST 2016 namespaceID=2101579007 clusterID=CID-205277e6-493b-4601-8e33-c09d1d23ece4 cTime=0 storageType=NAME_NODE blockpoolID=BP-1641019026-127.0.0.1-1467624350057 layoutVersion=-57 1 2 3 4 5 6 7
3、 启动NameNode
[hadoop@bigdata-senior01 hadoop-2.5.0]$ ${HADOOP_HOME}/sbin/hadoop-daemon.sh start namenode starting namenode, logging to /opt/modules/hadoop-2.5.0/logs/hadoop-hadoop-namenode-bigdata-senior01.chybinmy.com.out 1 2
4、 启动DataNode
[hadoop@bigdata-senior01 hadoop-2.5.0]$ ${HADOOP_HOME}/sbin/hadoop-daemon.sh start datanode starting datanode, logging to /opt/modules/hadoop-2.5.0/logs/hadoop-hadoop-datanode-bigdata-senior01.chybinmy.com.out 1 2