【Hadoop】集群设置之重要设置文件(hadoop-env.sh、yarn-env.sh、core-sit ...

打印 上一主题 下一主题

主题 708|帖子 708|积分 2124

Hadoop设置文件模板

参考官方设置文档:https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html#Configuring_Environment_of_Hadoop_Daemons
Hadoop的设置文件都在$HADOOP_HOME/etc/hadoop下面。比如我这里是:

Hadoop重要设置文件:
设置文件功能描述hadoop-env.sh设置Hadoop运行所需的情况变量yarn-env.sh设置Yarn运行所需的情况变量core-site.xmlHadoop核心全局设置文件,可在其他设置文件中引用该文件hdfs-site.xmlHDFS设置文件,继续core-site.xml设置文件mapred-site.xmlMapReduce设置文件,继续core-site.xml设置文件yarn-site.xmlYarn设置文件,继续core-site.xml设置文件
core-site.xml

参考官方core-default.xml设置字段信息:hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/core-default.xml
该文件是Hadoop的核心设置文件,其目的是设置HDFS地址、端口号,以及暂时文件目录。
  1. <configuration>
  2.     <!-- 用于设置Hadoop的默认文件系统,由URI指定 -->
  3.         <property>
  4.         <name>fs.defaultFS</name>
  5.         <value>hdfs://hadoop1:9000</value>
  6.     </property>
  7.         <!-- 配置Hadoop的临时目录,默认/tmp/hadoop-${user.name} -->
  8.     <property>
  9.         <name>hadoop.tmp.dir</name>
  10.         <value>file:/app/hadoop/hadoop-2.6.4/tmp</value>
  11.     </property>
  12.     <!-- 指定哪些主机可以充当代理用户 hduser。在这里,设置为 * 表示任何主机 -->
  13.     <property>
  14.         <name>hadoop.proxyuser.hduser.hosts</name>
  15.         <value>*</value>
  16.     </property>
  17.     <property>
  18.         <name>hadoop.proxyuser.hduser.groups</name>
  19.         <value>*</value>
  20.     </property>
  21. </configuration>
复制代码

hadoop-env.sh

hadoop-env.sh用来包管Hadoop系统能够正常实行HDFS的守护进程NameNode、Secondary NameNode和DataNode。
修改 HADOOP_CONF_DIR 和JAVA_HOME 情况变量值,并添加HADOOP_LOG_DIR 情况变量项。
  1. export JAVA_HOME=/usr/lib/java/jdk1.7.0_79
  2. export HADOOP_LOG_DIR=/app/hadoop/hadoop-2.6.4/tmp
  3. export HADOOP_CONF_DIR=/app/hadoop/hadoop-2.6.4/etc/hadoop
复制代码
修改完之后source编译该文件,让修改见效。

hdfs-site.xml

参考官方hdfs-default.xml设置字段信息:https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml
该文件用于设置HDFS的NameNode和DataNode两大进程。
  1. <configuration>
  2.     <!-- 指定secondary namenode的HTTP地址和端口 -->
  3.         <property>
  4.         <name>dfs.namenode.secondary.http-address</name>
  5.         <value>hadoop1:9000</value>
  6.     </property>
  7.         <!-- 指定namenode名称空间的存储地址 -->
  8.     <property>
  9.         <name>dfs.namenode.name.dir</name>
  10.         <value>file:/app/hadoop/hadoop-2.6.4/name</value>
  11.     </property>
  12.     <!-- 指定datanode数据存储地址 -->
  13.     <property>
  14.         <name>dfs.datanode.data.dir</name>
  15.         <value>file:/app/hadoop/hadoop-2.6.4/data</value>
  16.     </property>
  17.     <!--指定数据冗余份数-->
  18.     <property>
  19.         <name>dfs.replication</name>
  20.         <value>3</value>
  21.     </property>
  22.     <!--指定可以通过web访问hdfs目录-->
  23.     <property>
  24.         <name>dfs.webhdfs.enabled</name>
  25.         <value>true</value>
  26.     </property>
  27. </configuration>
复制代码

yarn-env-sh

添加JAVA_HOME 情况变量值。
  1. export JAVA_HOME=/usr/lib/java/jdk1.7.0_79
复制代码

yarn-site.xml

参考官方yarn-default.xml设置字段信息:https://hadoop.apache.org/docs/stable/hadoop-yarn/hadoop-yarn-common/yarn-default.xml
本文件是Yarn框架的核心设置文件,设置ResourceManager 和NodeManager。
  1. <configuration>
  2.    
  3.         <property>
  4.         <name>yarn.nodemanager.aux-services</name>
  5.         <value>mapreduce_shuffle</value>
  6.     </property>
  7.     <property>
  8.         <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
  9.         <value>org.apache.hadoop.mapred.ShuffleHandler</value>
  10.     </property>
  11.     <!-- 客户端提交作业的端口 -->
  12.     <property>
  13.         <name>yarn.resourcemanager.address</name>
  14.         <value>hadoop1:8032</value>
  15.     </property>
  16.     <property>
  17.         <name>yarn.resourcemanager.scheduler.address</name>
  18.         <value>hadoop1:8030</value>
  19.     </property>
  20.     <property>
  21.         <name>yarn.resourcemanager.resource-tracker.address</name>
  22.         <value>hadoop1:8031</value>
  23.     </property>
  24.     <property>
  25.         <name>yarn.resourcemanager.admin.address</name>
  26.         <value>hadoop1:8033</value>
  27.     </property>
  28.     <property>
  29.         <name>yarn.resourcemanager.webapp.address</name>
  30.         <value>hadoop1:8088</value>
  31.     </property>
  32. </configuration>
复制代码

mapred-site.xml

参考官方设置信息:hadoop.apache.org/docs/stable/hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml
该文件是MapReduce的核心设置文件,用于指定MapReduce运行时框架。在etc/hadoop/目录中默认没有该文件,需要先通过“cp mapred-site.xml.template mapred-site.xml”下令将文件复制并重定名为“mapred-site.xml”。接着,打开mapred-site.xml文件举行修改。
  1. <configuration>
  2.         <!-- 指定MapReduce运行时框架,这里指定在Yarn上,默认是local -->
  3.     <property>
  4.         <name>mapreduce.framework.name</name>
  5.         <value>yarn</value>
  6.      </property>
  7.     <!-- 配置jobhistory server -->
  8.     <property>
  9.         <name>mapreduce.jobhistory.address</name>
  10.         <value>hadoop1:10020</value>
  11.      </property>
  12.     <property>
  13.         <name>mapreduce.jobhistory.webapp.address</name>
  14.         <value>hadoop1:19888</value>
  15.      </property>
  16. </configuration>
复制代码

slaves

在etc/hadoop/slaves文件中列出所有工作节点的主机名或者IP地址。每行一个。用来配合一键启动脚本启动集群从节点。要使用此功能,必须为用于运行 Hadoop 的账户建立 ssh 信任(通过无密码 ssh 或其他方式,如 Kerberos)。打开该设置文件,先删除里面的内容(默认localhost),然后设置如下内容:
  1. hadoop1
  2. hadoop2
  3. hadoop3
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

饭宝

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表