yum安装CDH5.5 Hadoop集群(2)

# cat hadoop-env.sh
export HADOOP_MAPRED_HOME=/usr/lib/hadoop-mapreduce
export HADOOP_HOME=/usr/lib/hadoop
export JAVA_HOME=/opt/programs/jdk1.7.0_67/
export HADOOP_NAMENODE_OPTS="-XX:+UseParallelGC -XX:ParallelGCThreads=8"
export HADOOP_HEAPSIZE=16384
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/lib/hadoop-lzo.jar

在/etc/hadoop/conf/slaves中指定集群的hostname

# cat slaves
bd-ops-test-74
bd-ops-test-75
bd-ops-test-76
bd-ops-test-77

4.2修改hadoop配置文件
在/etc/hadoop/conf/core-site.xml中设置fs.defaultFS属性值,该属性指定NameNode是哪一个节点以及使用的文件系统是file还是hdfs,格式:hdfs://<namenode host>:<namenode port>/,默认的文件系统是file:///:

<property>
 <name>fs.defaultFS</name>
 <value>hdfs://bd-ops-test:8020</value>
</property>

在/etc/hadoop/conf/hdfs-site.xml中设置dfs.permissions.superusergroup属性,该属性指定hdfs的超级用户,默认为hdfs,你可以修改为hadoop:

<property>
    <name>dfs.permissions.superusergroup</name>
    <value>hadoop</value>
</property>

更多的配置信息说明,请参考 Apache Cluster Setup

4.3指定本地文件目录
在hadoop中默认的文件路径以及权限要求如下:

目录                                  所有者    权限      默认路径
hadoop.tmp.dir                      hdfs:hdfs  drwx------  /var/hadoop
dfs.namenode.name.dir              hdfs:hdfs  drwx------  file://${hadoop.tmp.dir}/dfs/name
dfs.datanode.data.dir              hdfs:hdfs  drwx------  file://${hadoop.tmp.dir}/dfs/data
dfs.namenode.checkpoint.dir        hdfs:hdfs  drwx------  file://${hadoop.tmp.dir}/dfs/namesecondary

说明你可以在 hdfs-site.xm l中只配置hadoop.tmp.dir,也可以分别配置上面的路径。这里使用分别配置的方式,hdfs-site.xml中配置如下:

<property>
      <name>dfs.namenode.name.dir</name>
      <value>file:///opt/hadoop/data/hdfs/nn</value>
  </property>
 
  <property>
      <name>dfs.datanode.data.dir</name>
      <value>file:///opt/hadoop/data1/hdfs/dn,file:///opt/hadoop/data2/hdfs/dn,file:///opt/hadoop/data3/hdfs/dn</value>
  </property>

在NameNode上手动创建 dfs.name.dir 或 dfs.namenode.name.dir 的本地目录:

mkdir -p /opt/hadoop/data/hdfs/nn

在DataNode上手动创建 dfs.data.dir 或 dfs.datanode.data.dir 的本地目录:

mkdir -p /opt/hadoop/data{1,2,3}/hdfs/dn

修改上面目录所有者:

chown -R hdfs:hdfs /opt/hadoop/*

hadoop的进程会自动设置 dfs.data.dir 或 dfs.datanode.data.dir,但是 dfs.name.dir 或 dfs.namenode.name.dir 的权限默认为755,需要手动设置为700:

# chmod 700 /opt/hadoop/data/hdfs/nn

注意:DataNode的本地目录可以设置多个(我这里有三个),你可以设置 dfs.datanode.failed.volumes.tolerated 参数的值,表示能够容忍不超过该个数的目录失败。

4.4开启回收站功能
回收站功能默认是关闭的,建议打开。在 /etc/hadoop/conf/core-site.xml 中添加如下两个参数:

fs.trash.interval,该参数值为时间间隔,单位为分钟,默认为0,表示回收站功能关闭。该值表示回收站中文件保存多长时间,如果服务端配置了该参数,则忽略客户端的配置;如果服务端关闭了该参数,则检查客户端是否有配置该参数;
fs.trash.checkpoint.interval,该参数值为时间间隔,单位为分钟,默认为0。该值表示检查回收站时间间隔,该值要小于fs.trash.interval,该值在服务端配置。如果该值设置为0,则使用 fs.trash.interval 的值。
4.5开启WebHDFS
在NameNode节点上安装:

# yum install hadoop-httpfs -y

然后修改 /etc/hadoop/conf/core-site.xml配置代理用户:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/739836c3dc4f0e7caf4694fe154de230.html