大数据Hadoop系列之Hadoop机架感知配置

1)编写topology.data

  • IP地址 主机名 交换机/机架
    192.168.9.60    master60    /dc1/rack1
    192.168.9.61    slave61     /dc1/rack1
    192.168.9.62    slave62     /dc1/rack2
    192.168.9.63    slave63     /dc1/rack2
    

2) 编写topology.sh

#!/bin/bash  

HADOOP_HOME=/apps/svr/hadoop/hadoop-2.7.3
HADOOP_CONF=${HADOOP_HOME}/etc/hadoop

while [ $# -gt 0 ] ; do
  nodeArg=$1
  exec<${HADOOP_CONF}/topology.data
  result=""

  while read line ; do
    ar=( $line )
    if [ "${ar[0]}" = "$nodeArg" ]||[ "${ar[1]}" = "$nodeArg" ]; then
      result="${ar[2]}"
    fi
  done

  shift
  if [ -z "$result" ] ; then
    echo -n "/default-rack"  
  else
    echo -n "$result"  
  fi
done

3)配置core-site.xml

<property>
    <name>topology.script.file.name</name>
    <value>/apps/svr/hadoop/hadoop-2.7.3/etc/hadoop/topology.sh</value>
</property>

4)执行命令

  • 赋予topology.sh执行权限
    $ chmod 755 topology.sh
    
  • 重启NameNode
    $ hadoop-daemon.sh stop namenode
    $ hadoop-daemon.sh start namenode
    
  • 查看Hadoop机架信息
    $ hadoop dfsadmin -printTopology
    
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页