转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46352315

1.hadoop的分布式安装过程

1.1 分布结构

主节点(1个,是hadoop0):NameNode、JobTracker、SecondaryNameNode

从节点(2个,是hadoop1、hadoop2):DataNode、TaskTracker

主机名映射ip: vi /etc/sysconfig/network   ip地址=主机名  比如 192.168.106.130=hadoop0

1.2 各节点又一次产生ssh加密文件

ssh-keygen -t rsa    一路回车

进入/root/.ssh文件夹  cat id_rsa.pub >> authorized_keys

1.3 编辑各个节点的/etc/hosts,在该文件里含有全部节点的ip与hostname的映射信息

1.4 两两节点之间的SSH免password登陆

ssh-copy-id -i  hadoop1      把公钥复制到hadoop1主机

            scp /root/.ssh/authorized_keys   hadoop1:/root/.ssh/    把authorized.keys文件复制到hadoop1主机下

1.5 把hadoop0的hadoop文件夹下的logs和tmp删除

1.6 把hadoop0中的jdk、hadoop目录拷贝到hadoop1和hadoop2节点

scp  -r /usr/local/jdk   hadoop1:/usr/local/

1.7 把hadoop0的/etc/profile拷贝到hadoop1和hadoop2节点,在目标节点中运行source  /etc/profile

1.8 编辑hadoop0的配置文件slaves,改为从节点的hostname。各自是hadoop1和hadoop2,编辑hadoop1,hadoop2的配置文件masters,改为主节点的hostname。即hadoop0。注意:masters文件中配置的是secondarynamenode所在的主机名

1.9 格式化,在hadoop0节点运行hadoop namenode -format

1.10 启动,在hadoop0节点运行start-all.sh

改动hadoop配置文件

1.hadoop-env.sh

export JAVA_HOME=/usr/local/jdk/

2.core-site.xml

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop0:9000</value>
<description>change your own hostname</description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/tmp</value>
</property>
</configuration>

3.hdfs-site.xml

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

4.mapred-site.xml

<configuration>
<property>
<name>mapred.job.tracker</name>
<value>hadoop0:9001</value>
<description>change your own hostname</description>
</property>
</configuration>

****注意:对于配置文件core-site.xml和mapred-site.xml在全部节点中都是同样的内容。

core-site.xml主要是配置namenode,mapred-site.xml主要是配置jobtracker,而namenode和jobtracker主要是分配到一台主机上,所以配置文件core-site.xml和mapred-site.xml在全部节点中都是同样的内容。

2.动态的添加一个hadoop节点

2.1 配置新节点的环境

2.2 把新节点的hostname配置到主节点的slaves文件里

2.3 在新节点,启动进程

hadoop-daemon.sh start datanode

            hadoop-daemon.sh start tasktracker

2.4 在主节点运行脚本 hadoop dfsadmin -refreshNodes

3.动态的下架一个hadoop节点

3.1、在hadoop0上改动conf/hdfs-site.xml文件

<property>

           <name>dfs.hosts.exclude</name>

          <value>/usr/local/hadoop/conf/excludes</value>

         </property>

3.2、确定要下架的机器

dfs.hosts.exclude定义的文件内容为,每一个须要下线的机器,一行一个。

3.3、强制又一次载入配置

#hadoopdfsadmin  -refreshNodes

3.4、关闭节点

hadoopdfsadmin -report

        能够查看到如今集群上连接的节点

        正在运行Decommission,会显示:

             DecommissionStatus : Decommission in progress   

        运行完成后,会显示:

             DecommissionStatus : Decommissioned

3.5、再次编辑excludes文件

一旦完毕了机器下架,它们就能够从excludes文件移除了

        登录要下架的机器,会发现DataNode进程没有了,可是TaskTracker依旧存在,须要手工处理一下

Hadoop之——分布式集群安装过程简化版的更多相关文章

  1. hadoop学习之hadoop完全分布式集群安装

    注:本文的主要目的是为了记录自己的学习过程,也方便与大家做交流.转载请注明来自: http://blog.csdn.net/ab198604/article/details/8250461 要想深入的 ...

  2. Hadoop学习---CentOS中hadoop伪分布式集群安装

    注意:此次搭建是在ssh无密码配置.jdk环境已经配置好的情况下进行的 可以参考: Hadoop完全分布式安装教程 CentOS环境下搭建hadoop伪分布式集群 1.更改主机名 执行命令:vi  / ...

  3. Hadoop完全分布式集群安装

    转载请注明原地址,谢谢! 本文目的是教大家配置Hadoop的完全分布式的集群,除了完全分布式还有两种分别是单节点和伪分布式部署.伪分布式只需要一台虚拟机,配置的东西也相对较少,大多用作代码调试,大家稍 ...

  4. 大数据学习之hadoop伪分布式集群安装(一)公众号undefined110

    hadoop的基本概念: Hadoop是一个由Apache基金会所开发的分布式系统基础架构. 用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力进行高速运算和存储. Hadoo ...

  5. 吴超老师课程---Hadoop的分布式集群安装

    1.hadoop的分布式安装过程 1.1 分布结构 主节点(1个,是hadoop0):NameNode.JobTracker.SecondaryNameNode            从节点(2个,是 ...

  6. CentOS7+Hadoop2.7.2(HA高可用+Federation联邦)+Hive1.2.1+Spark2.1.0 完全分布式集群安装

    1 2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.9.1 2.9.2 2.9.2.1 2.9.2.2 2.9.3 2.9.3.1 2.9.3.2 2.9.3.3 2. ...

  7. HBase 1.2.6 完全分布式集群安装部署详细过程

    Apache HBase 是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,是NoSQL数据库,基于Google Bigtable思想的开源实现,可在廉价的PC Server上搭建大规模结构化存 ...

  8. hadoop学习通过虚拟机安装hadoop完全分布式集群

    要想深入的学习hadoop数据分析技术,首要的任务是必须要将hadoop集群环境搭建起来,可以将hadoop简化地想象成一个小软件,通过在各个物理节点上安装这个小软件,然后将其运行起来,就是一个had ...

  9. 超详细从零记录Hadoop2.7.3完全分布式集群部署过程

    超详细从零记录Ubuntu16.04.1 3台服务器上Hadoop2.7.3完全分布式集群部署过程.包含,Ubuntu服务器创建.远程工具连接配置.Ubuntu服务器配置.Hadoop文件配置.Had ...

随机推荐

  1. ajax获取数据的处理和实例

    HTML: <!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" cont ...

  2. Computer(hdu 2196)

    题意:给出一棵树,求出每个点与距离它最远的点的距离. /* 树形DP 先把无根树转为有根树,对于一个节点i来说,与它相距最远的点有两种可能,一是在它的子树中,二是不在,我们分别用f[i][0]和f[i ...

  3. GitHub上README写法暨markdown语法解读

    原文: GitHub上README写法暨markdown语法解读 自从开始玩GitHub以来,就 越来越 感觉它有爱.最近对它的 README.md 文件颇为感兴趣.便写下这贴,帮助更多的还不会编写R ...

  4. 关于math头文件

    math.h是c语言里的 cmath是c++里的 fabs是对小数求绝对值 abs是对整数绝对值 用math.h里的abs对小数不能求绝对值- - fabs对小数取绝对值 abs是对整数 现在要对一个 ...

  5. Ubuntu系统用户与用户组

    1.查看用户组 vi /etc/group 结果说明: 组名: 组名是用户组的名称,由字母或数字构成.与/etc/passwd中的登录名一样,组名不应重复.   口令: 口令字段存放的是用户组加密后的 ...

  6. python update数据

    #!/usr/bin/env python # -*- coding:utf-8 -*- # @Time : 2017/11/23 23:57 # @Author : lijunjiang # @Fi ...

  7. ZOJ3874 Permutation Graph(NTT&&cdq分治)

    最近在看几道整体二分还有cdq分治的东西,突然间想起前几个礼拜的ZOJ题,然后看了一下代码,经过了一些深思熟虑之后,发现自己终于看懂了,下面就用别人的代码来剖析一下整个解题的思路吧,具体的内容我再看看 ...

  8. Laravel使用Eloquent ORM操作数据库

    1.定义模型 <?php namespace App; use Illuminate\Database\Eloquent\Model; class Flight extends Model{ p ...

  9. Linux下多进程服务端客户端模型二(粘包问题与一种解决方法)

    一.Linux发送网络消息的过程 (1) 应用程序调用write()将消息发送到内核中 ( 2)内核中的缓存达到了固定长度数据后,一般是SO_SNDBUF,将发送到TCP协议层 (3)IP层从TCP层 ...

  10. Xamarin XAML语言教程Xamarin.Forms中构建进度条

    Xamarin XAML语言教程Xamarin.Forms中构建进度条 ProgressBar被称为进度条,它类似于没有滑块的滑块控件.进度条总是水平放置的.本节将讲解如何使用进度条. 注意:进度条在 ...