1、修改主机名称

对master/slave1/slave2同时配置为Master/Slave1/Slave2

master@Master:~$ sudo gedit /etc/hostname

上述3个虚机结点均需要进行以上步骤

2、填写主机IP

对master/slave1/slave2同时配置

master@Master:~$ sudo gedit /etc/hosts

192.168.48.128 master
192.168.48.129 slave1
192.168.48.130 slave2

上述3个虚机结点均需要进行以上步骤

3、建立hadoop用户组及新用户

对master/slave1/slave2同时配置

为hadoop集群专门设置一个用户组及用户

master@Master:~$ sudo groupadd hadoop    //设置hadoop用户组

master@Master:~$ sudo useradd -s /bin/bash -d /home/hnu -m hnu -g hadoop   //添加一个hnu用户,此用户属于hadoop用户组。

master@Master:~$ sudo passwd hnu   //设置用户hnu登录密码

master@Master:~$ su hnu  //切换到hnu用户中

上述3个虚机结点均需要进行以上步骤

4、 配置ssh免密码连入

Ubuntu14.04系统下:

对master/slave1/slave2同时配置

master@Master:~$sudo apt-get install openssh-client=1:6.6p1-2ubuntu1

master@Master:~$ sudo apt-get install openssh-server

上述3个虚机结点均需要进行以上步骤

(1) 每个结点分别产生公私密钥。

hnu@Master:~$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

以上命令是产生公私密钥,产生目录在用户主目录下的.ssh目录中,如下:

hnu@Master:~$ cd .ssh

hnu@Master:~$ ls

Id_dsa.pub为公钥,id_dsa为私钥,紧接着将公钥文件复制成authorized_keys文件,这个步骤是必须的,过程如下:

hnu@Master:~/.ssh$ cat id_dsa.pub >> authorized_keys

hnu@Master:~/.ssh$ ls

用上述同样的方法在剩下的两个结点中如法炮制即可。

上述3个虚机结点均需要进行以上步骤

(2)本机ssh免密码登录测试

hnu@Master:~$ ssh localhost

在单机结点上用ssh进行登录,这将为后续对子结点SSH远程免密码登录作好准备。

用上述同样的方法在剩下的两个结点中如法炮制即可。

上述3个虚机结点均需要进行以上步骤

(3)    让主结点(master)能通过SSH免密码登录两个子结点(slave)

1)对slave1节点操作:

为了实现这个功能,两个slave结点的公钥文件中必须要包含主结点的公钥信息,这样当master就可以顺利安全地访问这两个slave结点了。操作过程如下:

hnu@Slave1:~/.ssh$ scp hnu@master:~/.ssh/id_dsa.pub ./master_dsa.pub

hnu@Slave1:~/.ssh$  cat master_dsa.pub >> authorized_keys

如上过程显示了slave1结点通过scp命令远程登录master结点,并复制master的公钥文件到当前的目录下,这一过程需要密码验证。接着,将master结点的公钥文件追加至authorized_keys文件中,通过这步操作,如果不出问题,master结点就可以通过ssh远程免密码连接slave1结点了。

2)对slave2节点同样进行以上步骤

在master结点中对两个子节点进行免密登陆:

hnu@Master:~$ ssh slave1

slave1结点首次连接时需要输入yes后成功接入,紧接着注销退出至master结点。然后再执行一遍ssh slave1,如果没有要求你输入”yes”,就算成功了,对node2结点也可以用同样的方法进行上述操作。

表面上看,这两个节点的ssh免密码登录已经配置成功,但是我们还需要对主节点master也要进行上面的同样工作,据说是真实物理结点时需要做这项工作,因为jobtracker有可能会分布在其它结点上,jobtracker有不存在master结点上的可能性。

3)对master自身进行ssh免密码登录测试工作:

hnu@Master:~/.ssh$ scp hnu@master:~/.ssh/id_dsa.pub  ./master_dsa.pub

hnu@Master:~/.ssh$ cat master_dsa.pub  >> authorized_keys

hnu@Master:~/.ssh$ ssh master

至此,SSH免密码登录已经配置成功。

5、JDK与HADOOP环境变量配置

对master/slave1/slave2同时配置

解压JDK

master@Master:~$ sudo tar -zxvf jdk-8u91-linux-x64.tar.gz -C /opt

master@Master:~$ sudo gedit /etc/profile

#JAVA

export JAVA_HOME=/opt/jdk1.8.0_91

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

#HADOOP

export HADOOP_PREFIX=/home/hnu/hadoop-2.6.0

export PATH=$PATH:$HADOOP_PREFIX/bin:$HADOOP_PREFIX/sbin

export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_PREFIX}/lib/native

export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib:$HADOOP_PREFIX/lib/native"

上述3个虚机结点均需要进行以上步骤

6、HADOOP安装与配置

对master配置

解压hadoop

master@Master:~$ sudo tar -zxvf hadoop-2.6.0.tar.gz -C /home/hnu

master@Master:/home/hnu/hadoop-2.6.0/etc/hadoop$

1)  core-site.xml

<configuration>

<property>

<name>hadoop.tmp.dir</name>

<value>file:/home/hnu/hadoop-2.6.0/tmp</value>

<description>A base for other temporary directories.</description>

</property>

<property>

<name>fs.defaultFS</name>

<value>hdfs://master:9000</value>

</property>

<property>

<name>io.file.buffer.size</name>

<value>4096</value>

</property>

</configuration>

2)   hadoop-env.sh 添加如下环境变量(一定要添加切勿少了)

export JAVA_HOME=/opt/jdk1.8.0_91

export HADOOP_PID_DIR=/home/hnu/hadoop-2.6.0/pids

在yarn-env.sh下添加如下环境变量

export JAVA_HOME=/opt/jdk1.8.0_91

export YARN_PID_DIR=/home/hnu/hadoop-2.6.0/pids

3) hdfs-site.xml

<configuration>

<property>

<name>dfs.namenode.name.dir</name>

<value>file:/home/hnu/hadoop-2.6.0/name</value>

</property>

<property>

<name>dfs.datanode.data.dir</name>

<value>file:/home/hnu/hadoop-2.6.0/data</value>

</property>

<property>

<name>dfs.replication</name>

<value>2</value>

</property>

<property>

<name>dfs.namenode.secondary.http-address</name>

<value>master:50090</value>

</property>

<property>

<name>dfs.webhdfs.enabled</name>

<value>true</value>

</property>

</configuration>

4)  mapred-site.xml

<configuration>

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

<final>true</final>

</property>

<property>

<name>mapreduce.jobtracker.http.address</name>

<value>master:50030</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>

<property>

<name>mapred.job.tracker</name>

<value>http://master:9001</value>

</property>

</configuration>

5) yarn-site.xml

<configuration>

<!-- Site specific YARN configuration properties -->

<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.resourcemanager.address</name>

<value>master:8032</value>

</property>

<property>

<name>yarn.resourcemanager.scheduler.address</name>

<value>master:8030</value>

</property>

<property>

<name>yarn.resourcemanager.resource-tracker.address</name>

<value>master:8031</value>

</property>

<property>

<name>yarn.resourcemanager.admin.address</name>

<value>master:8033</value>

</property>

<property>

<name>yarn.resourcemanager.webapp.address</name>

<value>master:8088</value>

</property>

</configuration>

6)slaves

slave1

slave2

7、向各节点复制hadoop

向slave1节点复制hadoop:

hnu@Master:~$  scp -r ./hadoop-2.6.0/ slave1:~

向slave2节点复制hadoop:

hnu@Master:~$  scp -r ./hadoop-2.6.0/ slave2:~

8、赋予权限

对master/slave1/slave2执行相同操作

将目录hadoop文件夹及子目录的所有者和组更改为用户hnu和组hadoop

root@Master:/home/hnu# chown -R hnu:hadoop hadoop-2.6.0

9、格式化hadoop

hnu@Master:~$ source /etc/profile

hnu@Master:~$ hdfs namenode -format

10、启动/关闭hadoop

start-all.sh/stop-all.sh

start-dfs.sh/start-yarn.sh

stop-dfs.sh/stop-dfs.sh

查看hdfs/RM

192.168.48.128:50070/192.168.48.128:8088

master:50070/master:8088

注:

(1)hadoop集群启动jps查看后没有DATANODE

删除slave1/slave2  中  /home/hnu/hadoop/data/current/VERSION文件后重启即可

写留言

微信扫一扫
关注该公众号

转载于:https://www.cnblogs.com/zhangguangxu98/p/8434212.html

Hadoop2.6.0完全分布式安装相关推荐

  1. Hadoop2.7.0伪分布式安装教程

    2019独角兽企业重金招聘Python工程师标准>>> 总是要学点什么是吧,Java学大数据据说很快,就从这面入手了,正好项目在使用可以get一项新技能了,距离全栈工程师又进了一步不 ...

  2. hadoop2.6.0 完全分布式安装教程

    最近用最新的hadoop2.6.0 版本搭了一个环境 步骤如下: 首先介绍一下软硬件:台式机win8.1,用VMware11.1建了三个Linux centos 6.5 64位的虚拟机.三个虚拟机的用 ...

  3. hadoop+hive-0.10.0完全分布式安装方法

    hadoop+hive-0.10.0完全分布式安装方法 1.jdk版本:jdk-7u60-linux-x64.tar.gz http://www.oracle.com/technetwork/cn/j ...

  4. 在Win7虚拟机下搭建Hadoop2.6.0伪分布式环境

    近几年大数据越来越火热.由于工作需要以及个人兴趣,最近开始学习大数据相关技术.学习过程中的一些经验教训希望能通过博文沉淀下来,与网友分享讨论,作为个人备忘. 第一篇,在win7虚拟机下搭建hadoop ...

  5. Hadoop2.2.0伪分布式环境搭建(附:64位下编译Hadoop-2.2.0过程)

    Hadoop2.2.0伪分布式环境搭建: 写在前面:Hadoop2.2.0默认是支持32位的OS,如果想要在64位OS下运行的话,可以通过在64位OS下面编译Hadoop2.2.0来实现,编译的操作步 ...

  6. 基于Hadoop2.2.0版本号分布式云盘的设计与实现

    基于Hadoop2.2.0版本号分布式云盘的设计与实现 一.前言 在学习了hadoop2.2一个月以来,我重点是在学习hadoop2.2的HDFS.即是hadoop的分布式系统,看了非常久的源代码看的 ...

  7. 基于Hadoop2.2.0版本分布式云盘的设计与实现

    基于Hadoop2.2.0版本分布式云盘的设计与实现 一.前言 在学习了hadoop2.2一个月以来,我重点是在学习hadoop2.2的HDFS.即是hadoop的分布式系统,看了很久的源代码看的我真 ...

  8. 安装hadoop2.6.0伪分布式环境

    集群环境搭建请见:http://blog.csdn.net/jediael_lu/article/details/45145767 一.环境准备 1.安装linux.jdk 2.下载hadoop2.6 ...

  9. hadoop2.9.2安装hadoop_pid_dir_Hadoop3.2 +Spark3.0全分布式安装

    目前Apache官网已经推出了最新版的Haoop3.2和最新版的Spark3.0,比原来增加了很多新特性.Hadoop的安装主要是为Spark提供HDFS的支持和yarn的调度.那么我们将在本文介绍全 ...

最新文章

  1. #天天复制,今天写一个# 把文字转为图片
  2. [Android疑难杂症]动态改变Background后Padding无效的问题
  3. C# 多态(接口、虚方法、抽象类)的理解
  4. php获取到的json数据如何处理_php – 如何从API获取JSON数据
  5. 中国可燃冰储量世界第一,2030年能实现商业性开发吗?多难开采?
  6. 1.4编程基础之逻辑表达式与条件分支 06 判断是否为两位数
  7. 南师大计算机毕设,南京师范大学是名牌大学吗?南师大毕业当老师难吗?
  8. cuSPARSE库:(十四)求解稀疏三角形线性系统(solution of sparse triangular linear systems)
  9. linux ipc 信号量,linux ipc信号量
  10. 拉起客户端 Universal Links Scheme Open App iOS(Deep Link)
  11. 这6款windows办公利器,一定有一款你喜欢的!
  12. 微信指纹支付提示java6_苹果6微信指纹支付每次提示请验证已有的指纹用于支付,怎样才能支付?...
  13. 21.通用型1602液晶显示屏操作方法
  14. stm32wb55 flash
  15. 从病毒开始聊聊那些windows下大杂烩
  16. 直截了当地解释 ERC-3525 与 ERC-1155 的差别
  17. 我是这样对待曾经背叛我的女人的!
  18. 代数基础 | Kronecker积
  19. 最新导则下:基于遥感解译与GIS技术环境影响评价图件制作实践应用
  20. 5G NR 技术简介

热门文章

  1. CCIE-LAB-第九篇-BGP下一跳+EBGP防环+伪装AS+通过标签过滤路由
  2. 【CodeForces - 1062C】Banh-mi (贪心,数学,找规律,快速幂)
  3. 【POJ - 1269 】Intersecting Lines (计算几何,直线间的位置关系)
  4. 【51Nod - 1010 】只包含因子2 3 5的数 (打表,有坑越界)
  5. 基于android公交车线路查询论文文献,本科毕业论文---基于android的手机公交线路查询系统.doc...
  6. date比较大小 mybatis_Hibernate 和 MyBatis 哪个更好用?
  7. leetcode559. N叉树的最大深度
  8. leetcode1084. 销售分析III(SQL)
  9. 借助桶排序思想完成的一道题
  10. 欧几里得gcd/extend_gcd