Hadoop完全分布式集群搭建 centos 6.5(保姆级教程)

Posted @28号技师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hadoop完全分布式集群搭建 centos 6.5(保姆级教程)相关的知识,希望对你有一定的参考价值。

Hadoop完全分布式搭建

环境:
使用的是 centos6.5 hadoop-3.3.0 ,jdk版本推荐使用Jdk-1.8.0_202否则容易出现版本不兼容
准备三台主机:HadoopMaster,HadoopSlave1,HadoopSlave2

!!注:除了一些系统文件用root用户编辑外,其他都用普通用户来编辑(可以用vim,sudo来编辑),否则要出现权限问题

步骤:

一.主机配置


1.配置ip(比较基础就没写了)
2.关闭防火墙

临时关闭

service iptables stop

永久关闭

chkconfig iptables off

3.root用户下编辑hosts文件将主机名与ip绑定(三台都要互相放)

vi /etc/hosts 

4 .三台主机互相进行免密登录
分别在三台主机上执行命令生成秘钥并将三台主机的公钥钥都复制在authorized_keys中

ssh-keygen -t rsa

系统在~/.ssh目录下会生成两个文件id_rsa(本机私钥) id_rsa.pub(公钥),将公钥放进authorized_keys(复制后自动生成)中

cp ~/.ssh/id_rsa.pub  ~/.ssh/authorized_keys

将另外两台主机的公钥也放进来

直接把authorized_keys文件传到另外两台的.ssh文件中

scp ~/.ssh/authorized_keys hadoop@HadoopSlave1:~/.ssh
scp ~/.ssh/authorized_keys hadoop@HadoopSlave2:~/.ssh

将authorized_keys文件赋予权限600

chmod 600 ~/.ssh/authorized_keys

二.编辑hadoop配置文件


上传hadoop压缩包到Master并解压:

在这用的是powershell 上传的大家可以用其他工具上传

Scp Hadoop.tar.gz hadoop@192.168.52.20:/home/hadoop/software

在/home/hadoop/software目录下解压

tar -zxvf Hadoop.tar.gz 

创建数据目录 ,因为三台都要创建故直接放在hadoop-3.3.0中,直接后期一起传过去

mkdir /home/hadoop/software/hadoop-3.3.0/hadooptmp 

解压过后在 hadoop-.3.3.0/etc/hadoop 目录下初步环境需要编辑7个文件,大家在相应的中添加下面代码

1.hadoop-env.sh

vim hadoop-env.sh 

将jdk路径放进其中(根据自己jdk的安装路径):

export JAVA_HOME=/home/hadoop/桌面/jdk

2.yarn-env.sh
加入如下代码(jdk路径)

vim yarn-env.sh
export  JAVA_HOME=/home/hadoop/桌面/jdk

然后保存文件

3.core-site.xml

vim core-site.xml 

core-site.xml 中的内容:

<configuration> 
<property> 
<name>fs.defaultFS</name> 
<value>hdfs://HadoopMaster:9000</value> 
</property> 
<property>  
<name>hadoop.tmp.dir</name> 
<value>/home/hadoop/software/hadoop-3.3.0/hadooptmp</value> 
</property> 
</configuration> 

4.hdfs-site.xml
hdfs-site.xml 中的内容:

vim hdfs-site.xml 
<configuration> 
<property> 
<name>dfs.replication</name> 
<value>2</value> 
</property> 
</configuration> 

5.yarn-site.xml
yarn-site.xml 中的内容:

vim yarn-site.xml
<configuration> 
<property> 
<name>yarn.nodemanager.aux-services</name> 
<value>mapreduce_shuffle</value> 
</property> 
<property> 
<name>yarn.resourcemanager.address</name> 
<value>HadoopMaster:18040</value> 
</property> 
<property> 
<name>yarn.resourcemanager.scheduler.address</name> 
<value>HadoopMaster:18030</value> 
</property> 
<property> 
<name>yarn.resourcemanager.resource-tracker.address</name> 
<value>HadoopMaster:18025</value> 
</property> 
<property> 
<name>yarn.resourcemanager.admin.address</name> 
<value>HadoopMaster:18141</value> 
</property> 
<property> 
<name>yarn.resourcemanager.webapp.address</name> 
<value>HadoopMaster:8088</value> 
</property>
</configuration> 

6.mapred-site.xml
mapred-site.xml 中的内容

vim mapred-site.xml
<configuration> 
<property> 
<name>mapreduce.framework.name</name> 
<value>yarn</value> 
</property> 
</configuration> 

7.在 HadoopMaster 节点配置 works 文件
使用 vim 编辑:

vim /workers

用下面的代码替换 works 中的内容(节点主机名)

HadoopSlave1
HadoopSlave2

8.复制到从节点
使用下面的命令将已经配置完成的 Hadoop目录复制到从节点 Slave 上:

scp -r hadoop hadoop@HadoopSlave1:~/software/ 
scp -r hadoop hadoop@HadoopSlave2:~/software/

9.配置 Hadoop 启动的系统环境变量 (root用户)
该节的配置需要同时在三个节点(Master 和 Slave)上进行操作,操作命令如下:

vi ~/.bash_profile 

将下面的代码追加到.bash_profile 末尾:

export HADOOP_HOME=/home/hadoop/software/hadoop-3.3.0
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH 

然后执行刷新命令:

source ~/.bash_profile 

10.格式化hadoop集群
格式化命令如下,该操作需要在 Master 节点上执行:

hadoop namenode -format 

11.启动 Hadoop集群
在master上执行

start-all.sh

四.验证
1.分别查看进程
Master:

Slave1:

Slave2:

2.在浏览器打开端口:
在浏览器输入:http://192.168.53.20:9870 查看yarn端口

在浏览器输入:http://192.168.53.20:8088 查看hdfs端口会出现Slave1和Slave2节点

自己搭建的过程大家共同学习

以上是关于Hadoop完全分布式集群搭建 centos 6.5(保姆级教程)的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop分布式集群搭建完全详细教程

大数据实战之Centos搭建完全分布式Hadoop集群

Hadoop集群完全分布式搭建教程-CentOS

Linux从零搭建Hadoop集群(CentOS7+hadoop 3.2.0+JDK1.8+Mapreduce完全分布式集群案例)

阿里云ECS服务器部署HADOOP集群:HBase完全分布式集群搭建(使用外置ZooKeeper)

CentOS7.5搭建Hadoop2.7.6完全分布式集群