hadoop集群安装&配置
修改配置文件
配置文件都在hadoop-2.6.5/etc/下
实际上所有的配置都可以写在任一文件中,分文件只是为了区分模块.
hadoop-env.sh
加入JAVA_HOME, 这是远程启动集群用的.
core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<!--此处填写hdfs的namenode 必须填写主机名, 不能写localhsot, 不能写127.0.0.1 应为这将是监听ip. 否则外界不能访问-->
<value>hdfs://ubuntu:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/zb/hadop/tmp</value>
</property>
</configuration>
hdfs-site.xml
这个文件中都有默认配置,也可以不配.
<configuration>
<property>
<!--文件的存储副本分数-->
<name>dfs.replication</name>
<value>2</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
格式化nanamenode
namenode第一次使用时候需要格式化.
执行命令 ./bin/hdfs namenode -format
启动命令
一键启动命令
start-dfs.sh
start-yarn.sh
启动hdfs的namenode
这个是主节点, 其他所有数据节点的配置都指向它.
./sbin/hadoop-daemon.sh start namenode
此时就可以通过网页访问namenode了:
http://192.168.40.128:50070
启动hdfs的datanode
./sbin/hadoop-daemon.sh start datanode
高可用&容灾
SecondaryNameNode备份数据
SecondaryNameNode会同步namenode的工作目录数据.
这样当发生灾难, nanenode数据丢失时可以复制SecondaryNameNode的元数据目录给namenode, 可以恢复绝大部分的数据.
namenode多磁盘多工作目录容灾
为避免namenode数据丢失造成极大损失, 可以设置namenode多工作目录, 并且这些工作目录都处于不同的磁盘上(Linux文件夹挂载), 此时就有了多个副本.
配置 hdfs-site.xml 添加:
<property>
<name>dfs.name.dir</name>
<value>/home/zb/hadoop/name1,/home/zb/hadoop/name2</value>
</property>
此时我们就有了2个处于不同磁盘上的元数据目录, 取其一可恢复全部数据.
网友评论