关于hadoop:Hadoop-集群安装

环境筹备

我这里筹备四个虚拟机,ip别离为:

# bigdata01
192.168.11.100
# bigdata02
192.168.11.101
# bigdata03
192.168.11.102
# bigdata04
192.168.11.103

主机命批改

主机名批改为bigdata01、bigdata02、bigdata03、bigdata04。

# 进入文件
vi /etc/hostname
# 批改文件,这里依据不同的服务器批改
bigdata01

新建账户

新建账户为bigdata,并设置明码,设置权限,bigdata的权限等同于root

# 进入文件
vi /etc/sudoers
# 新增配置
bigdata ALL=(ALL) ALL

敞开防火墙/敞开Selinux

# 敞开防火墙
systemctl disable firewalld

敞开selinux

# 进入文件
vi /etc/selinux/config
# 批改配置
SELINUX=disabled

域名映射

# 进入文件
vi /etc/hosts
# 新增配置
192.168.11.100 bigdata01 
192.168.11.101 bigdata02 
192.168.11.102 bigdata03 
192.168.11.103 bigdata04

置SSH免密登录

bigdata用户登录,在每个虚拟机执行ssh-keygen命令,始终enter上来,直至id_rsa.pub和id_rsa两个文件生成。
生成后,每个虚拟机执行以下命令发送公钥文件:

ssh-copy-id bigdata01
ssh-copy-id bigdata02
ssh-copy-id bigdata03
ssh-copy-id bigdata04

发送后通过ssh验证,比方以后在bigdata01服务器,ssh bigdata02看看能不能免密登录到bigdata02服务器,如果能够,就阐明设置胜利。
如果设置了还不行,就须要留神设置文件夹和文件的权限。因为sshd为了平安,对属主的目录和文件权限有所要求。如果权限不对,则ssh的免明码登陆不失效。

chmod 700 /home/bigdata
chmod 700 /home/bigdata/.ssh
chmod 600 /home/bigdata/.ssh/authorized_keys

编译

我这边装置的是2.7.7版本。
编译之前除了下载相应版本的源码包,还须要查看官网的BUILDING.txt文件,这个文件形容了以后版本的编译须要的依赖项,以及依赖项的装置、配置。
上面是官网的截图,比方Unix零碎,须要JDK1.7+、Maven3.0等。

以上软件都装置实现后,就能够通过maven对源码进行编译,编译后,咱们就能够在target生成一个hadoop-2.7.7.tar.gz文件,至此编译实现。

编译后把生成的文件解压到制订目录,比方我这里是/home/bigdata/apps/hadoop-2.7.7。

配置文件

参考官网
配置之前,咱们的布局是这样的,4个节点,3个正本:

节点名称 HDFS YARN
bigdata01 NameNode NodeManager
bigdata02 DataNode + SecondaryNamenode NodeManager
bigdata03 DataNode NodeManager
bigdata04 DataNode ResourceManager

hadoop-env.sh

配置Hadoop守护过程环境,门路:etc/hadoop/hadoop-env.sh。

参数 形容 必选
JAVA_HOME JAVA_HOME的门路
HADOOP_PID_DIR HADOOP的PID文件门路
HADOOP_LOG_DIR HADOOP的日志文件门路
HADOOP_HEAPSIZE 应用的最大堆大小,以MB为单位,默认1000M

core-site.xml

门路:etc/hadoop/core-site.xml。这个是xml文件,配置在configuration节点上面。

参数 形容 参数值
fs.defaultFS NameNode的URL hdfs://bigdata01:9000
io.file.buffer.size equenceFiles中应用的读/写缓冲区的大小。 131072
hadoop.tmp.dir 集群相干的数据存储目录 /home/bigdata/data/hadoopdata

hdfs-site.xml

配置NameNode和DataNode信息,门路:etc/hadoop/hdfs-site.xml。这个是xml文件,配置在configuration节点上面。

参数 形容 参数值
dfs.namenode.name.dir 本地文件系统上的门路,NameNode在其中长久化存储命名空间和事务日志,如果用逗号隔开,那每个目录都冗余存储 /home/bigdata/data/hadoopdata/name
dfs.blocksize HDFS块大小 比方268435456,即256MB
dfs.datanode.data.dir datanode的数据存储目录,如果用逗号隔开,那每个目录都冗余存储 /home/bigdata/data/hadoopdata/data
dfs.replication 正本个数 3
dfs.secondary.http.address secondarynamenode运行节点的信息 bigdata02:50090

yarn-site.xml

配置yarn的ResourceManager和NodeManager信息。门路:etc/hadoop/yarn-site.xml。这个是xml文件,配置在configuration节点上面。

参数 形容 参数值
yarn.resourcemanager.hostname 主节点的地位 bigdata04
yarn.nodemanager.aux-services MapReduce利用须要的shuffle服务 mapreduce_shuffle

/mapred-site.xml

配置MapReduce利用。门路:etc/hadoop/mapred-site.xml。这个是xml文件,配置在configuration节点上面。

参数 形容 参数值
mapreduce.framework.name 执行框架设置为Hadoop YARN yarn

Slaves文件

配置slave节点,门路:etc/hadoop/slaves。内容如下:

bigdata01
bigdata02
bigdata03
bigdata04

散发各环境

scp -r hadoop-2.7.7 bigdata02
scp -r hadoop-2.7.7 bigdata03
scp -r hadoop-2.7.7 bigdata04

环境变量

每个环境都执行以下命令

# 进入文件
vim ~/.bashrc
# 新增配置
export HADOOP_HOME=/home/bigdata/apps/hadoop-2.7.7 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

运行

集群初始化,执行以下命令,留神仅第一次的时候须要。

# 仅第一次
hadoop namenode -format

启动HDFS集群,能够在任意节点

# 能够在任意节点
start-dfs.sh


启动YARN集群,在YARN节点上执行

# 在YARN节点上执行
start-yarn.sh


启动胜利验证:
网址输出http://bigdata01:50070,界面…

输出http://bigdata04:8088,界面如…

集群装置实现。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理