Hadoop分布式环境配置(5)

系列文章目录

Hadoop分布式环境配置(1)
Hadoop分布式环境配置(2)
Hadoop分布式环境配置(3)
Hadoop分布式环境配置(4)
Hadoop分布式环境配置(5)



前言

在 CentOS7 系统快速配置Hadoop,仅需配置主节点,配置完成后将Hadoop文件及jdk文件发送给从节点,即可完成分布式集群部署,本节主要介绍Hadoop文件配置


配置四个核心配置文件

配置 {hadoop_home}(Hadoop所在位置)/etc/hadoop 的四个配置文件,以下的s201为主节点主机名

core-site.xml

参数属性值描述
fs.defaultFSNameNode URL服务器IP地址,也可以使用主机名
io.file.buffer.size131072该属性值单位为KB,131072KB即为默认的64M。SequenceFiles文件中.读写缓存size设定
hadoop.tmp.dir文件路径用来指定使用hadoop时产生文件的存放目录
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://s201:9000</value>
	</property>
    <property>
        <name>io.file.buffer.size</name>
        <value>131072</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/hadoop/tmp</value>
    </property>
</configuration>

hdfs-site.xml

参数属性值描述
dfs.replication
dfs.namenode.name.dir在本地文件系统所在的NameNode的存储空间和持续化处理日志命名空间和事务在本地文件系统永久存储的路径
dfs.namenode.data.dir
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>    
	<property>
		<name>dfs.replication</name>
		<value>3</value>	<!-- 节点数量、分片数量、配置的备份方式 -->
	</property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/hadoop/dfs/name</value>
    </property>
    <property>
        <name>dfs.namenode.data.dir</name>
        <value>file:/usr/hadoop/dfs/data</value>
    </property>
</configuration>

mapred-site.xml

注意:文件夹中一开始并没有mapred-site.xml这个文件,只有mapred-site.xml.template,因此需要先复制一份将副本改名为mapred-site.xml,cp mapred-site.xml.template mapred-site.xml

参数属性值描述
mapreduce.framework.nameyarn执行框架设置为 Hadoop YARN
mapreduce.jobhistory.address
mapreduce.jobhistory.webapp.address
<?xml version="1.0"?>
<configuration>
	<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
	</property>
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>s201:10020</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>s201:19888</value>
    </property>
</configuration>

yarn-site.xml

参数属性值描述
yarn.resourcemanager.hostnameRM的hostname
yarn.resourcemanager.address客户端对ResourceManager主机通过 host:port 提交作业RM对客户端暴露的地址,客户端通过该地址向RM提交应用程序等
yarn.resourcemanager.scheduler.addressApplicationMasters 通过ResourceManager主机访问host:port跟踪调度程序获资源RM对AM暴露的地址,AM通过地址想RM申请资源,释放资源等
yarn.resourcemanager.resource-tracker.addressNodeManagers通过ResourceManager主机访问host:portRM对NM暴露地址,NM通过该地址向RM汇报心跳,领取任务等
yarn.resourcemanager.admin.address管理命令通过ResourceManager主机访问host:port管理员可以通过该地址向RM发送管理命令等
yarn.resourcemanager.webapp.addressResourceManager web页面host:portRM对外暴露的web http地址,用户可通过该地址在浏览器中查看集群信息
yarn.nodemanager.aux-services.mapreduce.shuffle.class
<?xml version="1.0"?>
<configuration>
	<property>
		<name>yarn.resourcemanager.hostname</name>
		<value>s201</value>
	</property>
	<property>
		<name>yarn.nodemanager.aux-services</name>
		<value>mapreduce_shuffle</value>
	</property>
    <property>
        <name>yarn.resourcemanager.address</name>
        <value>s201:8032</value>
    </property>
    <property>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>s201:8030</value>
    </property>
    <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>s201:8031</value>
    </property>
    <property>
        <name>yarn.resourcemanager.admin.address</name>
        <value>s201:8033</value>
    </property>
    <property>
        <name>yarn.resourcemanager.webapp.address</name>
        <value>s201:8088</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
        <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
</configuration>

配置masters文件

masters文件设置的是运行secondary namenode的结点,并且可以在masters里面设置多个结点来运行secondary namenode。

vi masters
# 没有 masters 文件就新建 mkdir masters
# 加入主节点的主机名/IP地址(只能选一种,并与slaves文件保持一致)
s201 / 192.168.142.201

配置slaves文件

slaves文件指明哪些节点运行DataNode进程。

  vi slaves
  # 删除localhost,加入以下内容,DataNode节点的名称/IP地址(只能选一种,并与masters文件保持一致)
  s202 / 192.168.142.202
  s203 / 192.168.142.203
  s204 / 192.168.142.204

文件配置

  1. 编辑 {hadoop_home}(Hadoop所在位置)/etc/hadoop/hadoop-env.sh

    # 添加
    export JAVA_HOME=/home/jdk1.8.0_65(jdk位置)
    
  2. 新建目录

    mkdir /usr/hadoop/tmp	-p
    # 注意:hdfs-site.xml 设置存放文件的name和data文件夹不要自己建,并且在启动前 hadoop namenode -format格式化
    mkdir /usr/hadoop/dfs/name -p 	# mkdir -p: 递归创建目录,即使上级目录不存在,会按目录层级自动创建目录
    mkdir /usr/hadoop/dfs/data -p
    
  3. 修改 /usr/hadoop 目录的权限 (针对使用hadoop用户,root用户跳过)

    chown -R hadoop:hadoop /usr/hadoop/		# chown = change ownerp 用于设置文件所有者和文件关联组的命令
    
  4. 分发配置,将文件同步其他节点

    cd /home/hadoop-2.7.3/etc/
    # 分发至其他主机
    scp -r hadoop [用户名]@[主机名]:/{hadoop_home}/hadoop/etc
    # 例如:
    scp -r hadoop root@s202:/soft/hadoop/etc/
    scp -r hadoop root@s203:/soft/hadoop/etc/
    scp -r hadoop root@s204:/soft/hadoop/etc/
    
    scp -r /usr/hadoop/ root@s202:/usr/
    scp -r /usr/hadoop/ root@s203:/usr/
    scp -r /usr/hadoop/ root@s204:/usr/
    
  5. 格式化文件系统 (注意:仅namenode主节点执行,datanode从节点不执行)

    hadoop namenode -format
    
  6. 启动Hadoop进程

    start-all.sh
    
  7. 停止Hadoop进程

    stop-all.sh
    
  8. 查看Java进程

    jps
    
  9. 集群启动后的集群报告

    hdfs dfsadmin -report
    
  10. 使用浏览器浏览Master节点机

    输入 http://{master Ip地址}:50070
    

总结

以上就是今天要讲的内容,本文仅仅简单介绍了Hadoop的文件配置和在Linux上的安装启动,完成本文的操作后即完成了对Hadoop的安装和配置。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hadoop是一个分布式的计算框架,它的分布式模式需要在多个节点上进行配置和安装。以下是Hadoop分布式模式的配置步骤: 1. 在每个节点上安装JDK,并配置环境变量。 2. 在每个节点上下载Hadoop的二进制安装包,并将其解压到一个目录下。 3. 配置Hadoop的环境变量: 在每个节点的`~/.bashrc`文件中添加以下内容: ``` export HADOOP_HOME=/path/to/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin ``` 然后运行`source ~/.bashrc`命令,使配置生效。 4. 配置Hadoop的核心文件`core-site.xml`: 在每个节点的`$HADOOP_HOME/etc/hadoop/core-site.xml`文件中添加以下内容: ``` <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> </property> </configuration> ``` 其中,`master`是Hadoop集群中的主节点的主机名或IP地址,`9000`是Hadoop的默认端口号。 5. 配置Hadoop的HDFS文件系统`hdfs-site.xml`: 在每个节点的`$HADOOP_HOME/etc/hadoop/hdfs-site.xml`文件中添加以下内容: ``` <configuration> <property> <name>dfs.replication</name> <value>3</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/data/hadoop/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/data/hadoop/dfs/data</value> </property> </configuration> ``` 其中,`dfs.replication`指定了数据块的副本数量,`dfs.namenode.name.dir`指定了主节点存储元数据的目录,`dfs.datanode.data.dir`指定了数据节点存储数据块的目录。 6. 配置Hadoop的YARN资源管理器`yarn-site.xml`: 在每个节点的`$HADOOP_HOME/etc/hadoop/yarn-site.xml`文件中添加以下内容: ``` <configuration> <property> <name>yarn.resourcemanager.hostname</name> <value>master</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration> ``` 其中,`yarn.resourcemanager.hostname`指定了资源管理器运行的主机名或IP地址,`yarn.nodemanager.aux-services`指定了运行在节点上的附属服务。 7. 配置HadoopMapReduce框架`mapred-site.xml`: 在每个节点的`$HADOOP_HOME/etc/hadoop/mapred-site.xml`文件中添加以下内容: ``` <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> ``` 其中,`mapreduce.framework.name`指定了MapReduce框架运行的模式。 8. 启动Hadoop集群: 在主节点上执行以下命令启动Hadoop集群: ``` $HADOOP_HOME/sbin/start-dfs.sh $HADOOP_HOME/sbin/start-yarn.sh ``` 然后在任意一个节点上执行以下命令验证Hadoop集群是否正常工作: ``` hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar pi 10 1000 ``` 该命令将会启动一个计算圆周率的MapReduce作业。如果作业能够成功运行并输出正确的结果,则说明Hadoop集群已经正常工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值