完全分布式Hadoop2.X的搭建[亲测有效]

完全分布式Hadoop2.X的搭建[亲测有效]准备工作: 安装jdk 克隆2台虚拟机完成后:新的2台虚拟机,请务必依次修改3台虚拟机的ip地址和主机名称【建议三台主机名称依次叫做:master、node1、node2 】(虚拟机的克隆,

完全分布式Hadoop2.X的搭建

准备工作:

安装jdk

克隆2台虚拟机完成后:新的2台虚拟机,请务必依次修改3台虚拟机的ip地址和主机名称【建议三台主机名称依次叫做:master、node1、node2 】(虚拟机的克隆,前面的博客,三台虚拟机都要开机)

这里我们安装的是Hadoop2.7.6版本:https://hadoop.apache.org/releases.html

1、设置主机名与ip的映射,修改配置文件命令:vi /etc/hosts

完全分布式Hadoop2.X的搭建[亲测有效]

 

 

 

2、将hosts文件拷贝到node1和node2节点

 

命令:

 

scp /etc/hosts node1:/etc/hosts

 

scp /etc/hosts node2:/etc/hosts

这里我们可以在bin目录下面写一个分发的脚本

cd /bin/

vim xsync

#!/bin/bash #1. 判断参数个数
if [ $# -lt 1 ]
then echo Not Enough Arguement! exit; fi #2. 遍历集群所有机器
for host in master node1 node2 do echo ====================  $host  ====================
  #3. 遍历所有目录,挨个发送
  for file in $@
  do
    #4. 判断文件是否存在
    if [ -e $file ] then #5. 获取父目录
      pdir=$(cd -P $(dirname $file); pwd) #6. 获取当前文件的名称
      fname=$(basename $file) ssh $host "mkdir -p $pdir" rsync -av $pdir/$fname $host:$pdir
    else echo $file does not exists! fi done done

修改脚本 xsync 具有执行权限:chmod 777 xsync

注意:完成上述操作后,三台需要刷新一下配置环境变量的文件:source /etc/profile 

 

4、关闭防火墙(三台都要操作),使用命令:service iptables stop

5、关闭防火墙的自动启动(三台都要操作),使用命令:chkconfig iptables off

 

6、设置ssh免密码登录(只在Master 这台主机操作)

主节点执行命令  ssh-keygen -t rsa     产生密钥 一直回车

  执行命令

完全分布式Hadoop2.X的搭建[亲测有效]

 

7、将密钥拷贝到其他两个子节点,命令如下:

ssh-copy-id -i node1

ssh-copy-id -i node2

实现免密码登录到子节点

 

8、将hadoop的jar包先上传到虚拟机/usr/local/module,使用xftp来上传

完全分布式Hadoop2.X的搭建[亲测有效]

 

 

 9、解压Hadoop

 tar -xvf hadoop-2.7.6.tar.gz -C /usr/local/soft/

 

10、配置环境变量

这是我配置的环境变量,一定要有jdk和Hadoop

vim /etc/profile

export JAVA_HOME=/usr/local/soft/jdk1.8.0_171 export PATH=$PATH:$JAVA_HOME/bin export REDIS_HOME=/usr/local/soft/redis/ export PATH=$PATH:$REDIS_HOME/bin export HADOOP_HOME=/usr/local/soft/hadoop-2.7.6 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

完全分布式Hadoop2.X的搭建[亲测有效]

 

 

 

分发给node1与node2:xsync  /etc/profile

完全分布式Hadoop2.X的搭建[亲测有效]

三台都需要:source /etc/profile

11、修改配置文件

hadoop 配置文件在/usr/local/soft/hadoop-2.7.6/etc/hadoop/

cd /usr/local/soft/hadoop-2.7.6/etc/hadoop/

 

11.1、hadoop-env.sh : Hadoop 环境配置文件
vim hadoop-env.sh
修改JAVA_HOME
export JAVA_HOME=/usr/local/soft/jdk1.8.0_171

完全分布式Hadoop2.X的搭建[亲测有效]

 

11.2、slaves : 从节点列表(datanode)
vim slaves
增加node1, node2

完全分布式Hadoop2.X的搭建[亲测有效]

 

 

 

11.3、core-site.xml : hadoop核心配置文件
vim core-site.xml

在configuration中间增加以下内容

<property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/usr/local/soft/hadoop-2.7.6/tmp</value> </property> <property> <name>fs.trash.interval</name> <value>1440</value> </property>

完全分布式Hadoop2.X的搭建[亲测有效]

11.4、hdfs-site.xml : hdfs配置文件

vim hdfs-site.xml

在configuration中间增加以下内容

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

完全分布式Hadoop2.X的搭建[亲测有效]

11.5、yarn-site.xml: yarn配置文件

vim 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> <property> <name>yarn.log-aggregation-enable</name> <value>true</value> </property> <property> <name>yarn.log-aggregation.retain-seconds</name> <value>604800</value> </property> <property> <name>yarn.nodemanager.resource.memory-mb</name> <value>20480</value> </property> <property> <name>yarn.scheduler.minimum-allocation-mb</name> <value>2048</value> </property> <property> <name>yarn.nodemanager.vmem-pmem-ratio</name> <value>2.1</value> </property>  

完全分布式Hadoop2.X的搭建[亲测有效]

 

完全分布式Hadoop2.X的搭建[亲测有效]

 

 11.6、mapred-site.xml: mapreduce配置文件

在这里需要重命名mapred-site.xml.template 

命令:mv mapred-site.xml.template mapred-site.xml

vim mapred-site.xml

在configuration中间增加以下内容

<property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>master:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>master:19888</value> </property> 

 完全分布式Hadoop2.X的搭建[亲测有效]

 

12、将hadoop安装文件同步到子节点

xsync  /usr/local/soft/hadoop-2.7.6

13、格式化namenode

hdfs namenode -format

 

14、启动hadoop

在Hadoop的sbin目录下执行:

    /usr/local/soft/hadoop-2.7.6/sbin

    启动命令:start-all.sh

 

 

 

15、访问hdfs页面验证是否安装成功

 

http://master:50070

完全分布式Hadoop2.X的搭建[亲测有效]

 

 

完全分布式Hadoop2.X的搭建[亲测有效]

 

 

 

 

 

 

用Java内部命令jps来看是否成功

 

 

完全分布式Hadoop2.X的搭建[亲测有效]

 

完全分布式Hadoop2.X的搭建[亲测有效]

 

 完全分布式Hadoop2.X的搭建[亲测有效]

 

 这里同样我们可以使用脚本查看三台节点的jps

在cd /bin/ 目录下 vim jpsall

#!/bin/bash

for i in hadoop102 hadoop103 hadoop104 do echo =============== $i =============== ssh $i "$*" "/usr/local/soft/jdk1.8.0_212/bin/jps" done

修改脚本 jpsall 具有执行权限:chmod 777 jpsall

 

完全分布式Hadoop2.X的搭建[亲测有效]

 

 

16、如果安装失败
stop-all.sh
再次重启的时候
1需要手动将每个节点的tmp目录删除: 所有节点都要删除
rm -rf /usr/local/soft/hadoop-2.7.6/tmp
然后执行将namenode格式化
2在主节点执行命令:
hdfs namenode -format
3启动hadoop
start-all.sh

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/5845.html

(0)
上一篇 2023-04-22
下一篇 2023-04-22

相关推荐

发表回复

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