最近开始学习大数据课程,便开始自己安装搭建完全分布式,下面是自己一步一步的安装方式,期间会遇到各种问题,但还是自己查找资料解决了:

1.在安装hadoop2.0之前,需要准备好以下软件(如下图1)

图1:

然后将这两个软件共享到centos上(如下图2,图3所示)

在vm这上面有个虚拟机,点击虚拟机后有个硬件和选项,点选项,下面有个共享文件夹

图2:

图3:

然后为了有个集群的概念,我们把一台linux机器复制成有三份!如下图4所示:

注:在复制前,必须要把linux的机器要在关机或者挂起状态,否则数据可能会丢失。

图4:

然后打开这三个虚拟镜像并且启动三个镜像(如下图5所示)

如果出现说:此虚拟机可能已被移动或复制,那你点击:我已复制该虚拟机

图5:

然后命令行输入:su  //进入管理员模式

然后命令行再输入:cd /etc/sysconfig/network-scripts/ifcfg-eth0

然后将三个虚拟机的其中两个虚拟机的ip更改,因为三个虚拟机的ip不能都一样。

如下图5,6,7,8的图:

master图6:

Slave1图7:

Slave2图8:

然后打开secureCRT远程控制软件连接三台虚拟机(如下图8)

图9:

1.我们开始配置本地网络配置(修改hosts文件)

命令行输入:vim /etc/hosts

然后在hosts这个文件里面把主节点的ip地址写入进去

192.168.183.10 master

192.168.183.11 slave1

192.168.183.12 slave2

然后保存退出

但是host还没有生效,需要生效

在命令行输入:hostname master

然后再输入:hostname 查看

但是这个生效只是临时生效,我们需要改为永久生效:

在命令行输入:vim /etc/sysconfig/network

然后原先network里面的是:HOSTNAME=localhost

我们改为:HOSTNAME=master      //其他节点也是一样这么操作,这里就不演示了

建立每台机器的互信关系(这样方便我们日后一台机器对另外一台机器的操作)

重点:是每个机器都要输入:ssh-keygen

在命令行输入:ssh-keygen 然后回车然后回车,回车(回三次车)。(如下图10所示)

然后再输入:ssh-keygen    然后有个选项让你选择yes/no的,你选择yes,因为直到有个yes/no的选项出现你才能正式的互信。

图10:

然后进入隐藏目录

在命令行输入:cd ~/.ssh/ 然后ls(如下图11)

图11:

Id_rsa.pub是共钥文件,id_rsa是密钥文件

我们要对id_rsa.pub这个公钥文件的内容拷贝给authorized_keys这个文件(在此说明:如果没有authorized_keys这个文件,请自己创建!!)

创建文件的命令:touch authorized_keys   (如下图12所示)

图12:

我们看一下id_rsa.pub这个公钥文件的内容

输入命令行:cat id_rsa.pub 看看这公钥

然后把slave1的公钥复制到主机节点master的authorized_keys上

在master命令行输入:vim authorized_keys

然后接下来把然后把slave1的公钥复制到authorized_keys这里(如下图13,14,15)

图13:

图14:

图15:把三个机器的公钥密码全部放入master的authorized_keys文件中

然后下一步操作就是把主节点上的authorized_keys分别复制给slave1和slave2这两个节点上   (这是我的ip,你们要复制下面的命令行的时候请先把自个的机器ip修改上去)

命令行输入:scp -rp authorized_keys 192.168.183.20:~/.ssh/

命令行输入:scp -rp authorized_keys 192.168.183.13:~/.ssh/   (如下图16)

图16:

然后分别给slave1和slave2检查一下是否有主节点传过来的公钥文件

在slave1和slave2的命令行上分别输入:cat authorized_keys

然后我们就可以给三台机器互相登录而且不需要密码了

那么我们试一下:在主节点上命令行上输入:ssh 192.168.183.20 如果要退出的话就是输入:exit

然后我们在主机节点上登录子节点:ssh 192.168.183.13 如果要退出的话就是输入:exit

然后在master里面输入:cd /mnt/hdfs      //查看在linux下共享的文件(如下图17)

图17:

看到了把?你共享的文件就已经在linux上有了。

然后我们把jdk和hadoop2.0工具包放入linux下的/usr/local/src/下(如下图18所示)

命令行输入:cp hadoop-2.6.1.tar.gz /usr/local/src/

命令行输入:cp jdk1.7.0_45.tgz /usr/local/src/

然后去/usr/local/src/下去查看有没有拷贝过来的文件

图18:

然后解压hadoop2.0以及jdk7的文件(如下图19所示)

命令行输入:tar xvzf hadoop-2.6.1.tar.gz

命令行输入:tar xvzf jdk1.7.0_45.tgz

图19:

然后进入jdk,命令行输入:cd jdk1.7.0_45/

然后查看当前的一个目录路径,命令行输入:pwd

然后将改路径写入配置文件当中,命令行输入:vim ~/.bashrc   (如下图20所示)

图20:

复制我这个配置命令: export JAVA_HOME=/usr/local/src/jdk1.7.0_45 (如下图21)

然后再配置CLASSPATH,复制配置命令:export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib

然后再配置path,复制配置命令:export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

图21:

然后退出该修改界面(退出界面请先按Esc键,然后点Shift键加分号;键然后输入wq然后再按Enter键退出)

然后在命令行输入: source ~/.bashrc重置一下

然后我们直接执行java,在命令行直接输入:java 然后这个java已经被系统自动识别了,然后我们看看java这个位置在哪里,命令行输入: which java(如下图22所示)

图22:

2.那么接下来我们也要把剩下两个节点也要安装java环境

在主节点输入:cd /usr/local/src/

再输入:ls

然后将java包复制一份到slave1和slave2这两个节点上去

在主节点输入:scp -rp jdk1.7.0_45 slave1:/usr/local/src/

在主节点输入:scp -rp jdk1.7.0_45 slave2:/usr/local/src/

然后让你输入yes/no你输入yes,然后让你输入密码,你输入你创建这台机器的密码,然后即可完成远程复制!!(如下图23所示)

图23:

然后我们再分别切到slave1和slave2这两个节点查看是否将jdk文件发送了过来

在slave1机器上输入:cd /usr/local/src/

然后再输入:ls 进行查看是否有jdk文件(如下图24,25)

图24:

图25:

然后再分别给slave1和slave2配置环境变量。操作跟上面给主节点master配置环境变量一样,输入:vim ~/.bashrc 把export JAVA_HOME=/usr/local/src/jdk1.7.0_45和export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib和export PATH=$PATH:$JAVA_HOME/bin

写在bashrc下

然后退出该修改界面(退出界面请先按Esc键,然后点Shift键加分号键然后输入wq然后再按Enter键退出)

然后在命令行输入: source ~/.bashrc重置一下

然后我们直接执行java,在命令行直接输入:java 然后这个java已经被系统自动识别了

然后我们看看java这个位置在哪里,命令行输入: which java(如下图26,27所示)

图26:

图27:

然后我们开始准备搭建hadoop2.0集群,在此之前需要把ssh配置好(如下操作与图17所示)

在此之前我们需要先把防火墙关闭了,以免防火墙的启动会导致我们集群启动失败

闭防火墙(在三台机器上或者更多的机器上执行一下命令)

在命令行输入:/etc/init.d/iptables stop    (如下图28所示)

然后检查一下是否关闭成功:在每台机命令行输入:chkconfig --level 35 iptables off

然后再从命令行输入: getenforce 查看是否关闭了 (在每台机器都输入此命令)

图28:

然后我们打开hadoop2.0安装包(如下图29所示)

图29:

然后在 hadoop-2.6.1这个目录下创建一个tmp目录,用来存放之后的一些临时文件

命令行输入:mkdir tmp

然后进入hadoop-2.6.1的etc文件里的hadoop文件  (如下图30)

图30:

然后修改hadoop文件夹里面的hadoop-env.sh这个文件

命令行输入:vim hadoop-env.sh

在hadoop-env.sh这个文件里面配置jdk路径(如下图31所示)

图31:

第二步修改yarn-env.sh文件

命令行输入:vim yarn-env.sh   然后在这个文件找到相应被注释的export JAVA_HOME= ,将它取消注释并把jdk路径继续填充上去(如下图32所示)

图32:

然后继续修改,修改一个slaves文件(如下图33所示)

修改文件:vim slaves

在slaves里面填充slave1  slave2

图33:

然后修改core-site.xml这个文件

在configuration里面添加数据(如下图34所示)

图34:

然后再修改hdfs-site.xml这个文件(如下图35,图36所示)

首先先在hadoop-2.6.1目录下创建dfs文件,然后在dfs文件里面再创建name和data这两个文件

添加内容:

<property>

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

<value>master:9001</value>

</property>

<property>

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

<value>file:/usr/local/src/hadoop-2.6.1/dfs/name</value>

</property>

<property>

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

<value>file:/usr/local/src/hadoop-2.6.1/dfs/data</value>

</property>

<property>

<name>dfs.replication</name>

<value>3</value>

</property>

图35:

图36:

然后在hadoop根目录下有一个文件mapred-site.xml.template模版,你需要将其拷贝一份并且改名为mapred-site.xml。(如下图37,图38所示)

命令行输入:cp mapred-site.xml.template mapred-site.xml

然后修改mapred-site.xml这个文件:vim mapred-site.xml

图37:

图38:

然后再修改yarn-site.xml这个文件

命令行输入:vim yarn-site.xml   添加内容(如下图39)

图39:

然后接下来把这个配置好的hadoop2.0安装文件分发到各个子节点上(如下图40所示)

分发完以后在子节点上的/usr/lcoal/src目录下查看有没有hadoop2.0文件

图40:

然后现在所有配置配置完毕,我们来准备启动:(如下图41所示)

在启动之前必须先格式化hadoop,必须要先hadoop下的bin目录下进行格式化

命令行输入:hadoop namenode -formate  (如下图41所示)

图41:

在hadoop-2.6.1的根目录下启动:  (如下图42所示)

命令行输入:./sbin/start-all.sh

主节点成功启动图42:

子节点成功启动图43:

子节点成功启动44:

恭喜,搭建完成!!

Hadoop完全分布式安装教程相关推荐

  1. Hadoop、Hbase安装教程保姆级教程

    Hadoop.Hbase安装教程 准备Centos系统 设置网络 安装java环境 配置SSH免密登录 安装hadoop 修改Hadoop相关命令执行环境 修改Hadoop配置 运行和测试 Web界面 ...

  2. 基于Docker的Hadoop完全分布式安装

    之前安装Hadoop是用VMWare创建虚拟机,然后安装伪分布式,因为虚拟机太慢,太卡,实在没有玩下去的心情了,现在想到Docker可以实现虚拟化,看看能不能安装Hadoop,网上查了查,果然可以,并 ...

  3. 单机安装 hadoop 环境(Hadoop伪分布式安装)

    任务描述: 作为某公司运维工程师,需在单机安装 hadoop 环境(Hadoop伪分布式安装).本环节需要使用 root用户完成相关配置,具体部署要求如下: 1. 关闭虚拟机防火墙 2. 修改&quo ...

  4. 第六天 - 安装第二、三台CentOS - SSH免密登陆 - hadoop全分布式安装、配置、集群启动

    第六天 - 安装第二.三台CentOS - SSH免密登陆 - hadoop全分布式安装.配置.集群启动 第六天 - 安装第二.三台CentOS - SSH免密登陆 - hadoop全分布式安装.配置 ...

  5. Hive、Hadoop完全分布式安装,基本SQL,基本SQL,基本表结构,数据类型,函数,窗口函数,jion,查询和排序,beeline,文件格式及基本架构汇总

    目录 Hive简介 一.概述 二.Hive和数据库的比较 三.特点 Hadoop完全分布式安装 一.配置 二.安装步骤 Hive安装 一.概述 二.安装步骤 其他 一.Hive运行日志 二.Hive的 ...

  6. Hadoop完全分布式安装

    Hadoop 博客链接:http://hphblog.cn/2018/12/17/Hadoop简介与分布式安装/ 简介 Hadoop 是Apache Lucene创始人道格·卡丁(Doug Cutti ...

  7. hadoop伪分布式安装

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/qq1010885678/article/details/43447733 首先需要有一台linux的 ...

  8. Hadoop完全分布式安装Kafka

    应用场景 按照搭建hadoop完全分布式集群博文搭建完hadoop集群后,发现hadoop完全分布式集群自带了HDFS,MapReduce,Yarn等基本的服务,一些其他的服务组件需要自己重新安装,比 ...

  9. hadoop高可用安装教程(刘浩)

    hadoop高可用安装 date: 2020-06-18 21:11:28 categories: 大数据 hadoop 前期准备 准备好四台安装了centos系统的虚拟机,并在其中一台完成伪分布式的 ...

最新文章

  1. 彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
  2. 老司机 iOS 周报 #24 | 2018-06-25
  3. CSS:基本概念、选择器、伪类伪元素
  4. Android之failed for task ‘:app:dexDebug‘致gradle编译OOM问题解决(android-support-multidex)
  5. 记住这两点,彻底终结原型链吧
  6. vba遍历字符串_EXCEL 公式 遍历查找 查找字符串
  7. 微信小程序引用阿里巴巴iconfont
  8. 网抑云音乐.ncm加密格式转换mp3
  9. PLC与伺服电机连接
  10. java读取mp3文件_java读取mp3文件 | 学步园
  11. redis过期策略及定期策略配置
  12. 数字转为汉语中人民币的大写
  13. Wifi热点工具-青青草原WiFi
  14. macbook air从win10回到macOS Sierra
  15. 使用代理访问百度网站 ProxyHandler python 爬虫 入门
  16. c语言购买电影票程序,求助,怎么改把程序产生数据写入文件里,电影票管理系统,大佬们...
  17. 去面试却被问的哑口无言,是不是踏入了机器学习误区
  18. c语言运算符 amp 的意思,C语言运算符是什么意思
  19. 上天入地无所不能的C语言(一)
  20. php实现ckeditor编辑器添加水印及使用误区

热门文章

  1. JS人民币小写金额转换为大写(没毛病)
  2. 基于Yocto构建嵌入式Linux系统U-boot、kernel内核、rootfs文件系统
  3. Linux 系统下各种包的安装方法
  4. mysql高级笔记_MySQL高级学习笔记
  5. 3.3.1 TextView(文本框)
  6. discuz论坛部署及常见问题处理
  7. (一)大数据学习引言——大数据概述
  8. 傲慢的上校的fragment讲解
  9. 三轴加速度计得到角度值原理
  10. 安卓手机上通过termux安装ubuntu