集群机器hadoop的安装与配置

Posted 刘墨苏

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了集群机器hadoop的安装与配置相关的知识,希望对你有一定的参考价值。

目录

一、Hadoop概念


Block一般128MB一个;
元数据:一个表,对应着数据所在的路径。

master重启的方式

二、Hadoop的安装

2.1 安装

mkdir /usr/hadoop  #创建/usr/hadoop

上传hadoop-2.7.3.tar.gz/opt/soft

tar  -zxvf hadoop-2.7.3.tar.gz  -C  /usr/hadoop # 解压/opt/soft/hadoop-2.7.3.tar.gz到 指定目录

2.2配置环境变量

nano /etc/profile,添加下面4行

# hadoop setting
export   HADOOP_HOME=/usr/hadoop/hadoop-2.7.3
export  CLASSPATH=$CLASSPATH:$HADOOP_HOME/lib
export  PATH=$PATH:$HADOOP_HOME/bin

保存退出之后,使环境变量生效 source /etc/profile

在安装好Hadoop和配置完环境变量之后,Hadoop已经可以做一些事情了。

2.3测试单机hadoop

创建一个文件夹,我这里创建在hadoop文件夹下

/usr/hadoop
mkdir mytestin
cd mytestin
nano data1.txt
nano data2.txt

data1.txt和data2.txt你可以输入一些字符(随便打几个英文单词)。

然后我们到hadoop-2.7.3目录下

hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar  wordcount /usr/hadoop/mytestin /usr/hadoop/mytestout 

hadoop是命令,jar是程序类型,后面是路径+jar 然后是输入目录,输出目录。jar =java包。

注意:每次运行此命令要求输出目录是一个全新目录(不存在的目录)。

我们一般使用Java输入和输出都在终端完成,但是hadoop的输入和输出的数据量十分巨大,所以我们要用输入和输出目录来存放。

hadoop fs 命令查看程序结果:

hadoop fs -text /usr/hadoop/mytestout/part-r-00000 # 或者使用cat

三、Hadoop集群配置

在上面我们讲了单机版的hadoop,现在我们来配置集群

3.1配置hadoop-env.sh

cd /usr/hadoop/hadoop-2.7.3/etc/hadoop

编辑hadoop-env.shnano hadoop-env.sh,注释原来的,修改如下。

# The java implementation to use.
export JAVA_HOME=/usr/java/jdk1.8.0_171

3.2配置core-site.xml

nano core-site.xml,在<configuration></configuration> 之间配置

<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value> #改名
</property>

<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/hadoop-2.7.3/hdfs/tmp</value>
</property>

<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>

<property>
<name>fs.checkpoint.period</name>  # 检查间隔60s
<value>60</value>
</property>

<property>
<name>fs.checkpoint.size</name> # 检查点大小
<value>67108864</value>
</property>

3.3配置yarn-site.xml

nano yarn-site.xml,如果你的主机名不是master你就需要改名。

<property>    
<name>yarn.resourcemanager.hostname</name>
<value>master</value> # 改名
</property>

<property>    
<name>yarn.resourcemanager.address</name>
<value>master:18040</value> # 改名
</property>

<property> 
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:18030</value> # 改名
</property>

<property> 
<name>yarn.resourcemanager.webapp.address</name>
<value>master:18088</value> # 改名
</property>

<property>
<name>yarn.resourcemanager-tracker.address</name>
<value>master:18025</value> # 改名
</property>

<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:18141</value> # 改名
</property>

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>

<property>
<name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>

3.4 编辑slavesmaster

nano slaves,有几个写几个。

slave1
slave2

nano master

master

3.5配置hdfs-site.xml

nano hdfs-site.xml

<property>
<name>dfs.replication</name>    
<value>2</value>#Block副本数,默认3
</property>

<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/hadoop/hadoop-2.7.3/hdfs/name</value>
<final>true</final>
</property>

<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/hadoop/hadoop-2.7.3/hdfs/data</value>
<final>true</final>
</property>

<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:9001</value> # 注意端口号不会重复使用。
</property>

<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>

<property>
<name>dfs.permissions</name>
<value>false</value>
</property>

3.6配置mapred-ste.xml

复制模板

cp mapred-site.xml.template mapred-site.xml

编辑文件,nano mapred-site.xml

<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

3.7分发给从机

scp -r /usr/hadoop root@slave1:/usr
scp -r /usr/hadoop root@slave2:/usr

配置从机的环境变量,

nano /etc/profile,添加下面4行

# hadoop setting
export   HADOOP_HOME=/usr/hadoop/hadoop-2.7.3
export  CLASSPATH=$CLASSPATH:$HADOOP_HOME/lib
export  PATH=$PATH:$HADOOP_HOME/bin

保存退出之后,使环境变量生效 source /etc/profile

3.8主机namenode格式化

cd /usr/hadoop/hadoop-2.7.3/
hadoop namenode -format

执行命令后如下

3.9 hadoop启动

hadoop不用每台机器都启动,我们再mstaer上调用脚本来启动

[root@master hadoop-2.7.3]# sbin/start-all.sh

然后查看进程

[root@master hadoop-2.7.3]# jps

jps是java提供的一个显示当前所有java进程pid的命令,适合在linux/unix平台上简单察看当前java进程。

主机:

从机,直接输入jps,不用启动hado9op


四、网页

关闭master防火墙,systemctl stop firewalld

打开浏览器输入:192.168.222.171:9001

打开浏览器输入:192.168.222.171:50070,文件系统概述

以上是关于集群机器hadoop的安装与配置的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop集群安装

hadoop集群配置与启动

Hadoop3.0集群配置

3台机器配置hadoop集群_Hadoop+Hbase 分布式集群架构

Hadoop多节点集群安装配置

HPC大规模集群下的Hadoop2.5+Zookeeper3.4+Giraph1.2的配置安装与应用