集群概念

计算机集群是一种计算机系统,通过一组松散继承的计算机软件或硬件连接连接起来高度紧密地协作完成计算工作。

集群系统中的单个计算机通常称为节点,通过局域网连接。

集群特点:

1、效率高,通过多态计算机完成同一个工作。

2、高容错,两台或多台机内容、工作过程等完全一样,宕机一台其他机器继续工作。

Hadoop集群部署

搭建步骤

1、跟伪分布模式环境相同

更改主机名

设置Hosts

关闭防火墙

安装jdk

设置环境变量

设置SSH密钥登陆

2、安装配置Hadoop

namenode配置:

配置Hadoop环境变量

export HADOOP_HOME=/usr/local/hadoop

export PATH=.:$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH

配置hadoop-env.sh文件

export JAVA_HOME = /usr/local/jdk

export HADOOP_PID_DIR = /usr/local/hadoop/pids

配置core-site.xml

<property>

<name>fs.default.name</name>

<value>hdfs://h1:9000</value>

</property>

<property>

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

<value>/usr/local/hadoop/tmp</value>

</property>

配置hdfs-site.xml

<property>

副本数量设置

<name>dfs.replication</name>

<value>2</value>

</property>

<property>

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

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

</property>

配置mapred-site.xml

<property>

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

<value>hdfs://h1:90001</value>

</property>

配置masters和slaves

master中配置的节点为Secondarynamenode节点。

slaves中配置的节点为datanode和tasktracker节点。

拷贝hadoop目录到其他节点中。

namenode上使用 hadoop namenode –format格式化文件系统,以前格式化过的需要把hadoop.tmp.dir目录删除,否则格式化失败。

增加节点

1、在namnode和新主机的hosts文件中添加主机名,保证通过主机名能ping通。

2、修改namenode的配置文件 conf/slaves

添加新节点的ip或者主机名

3、在新节点上启动服务

hadoop-daemon.sh start datanode

hadoo-daemon.sh start tasktracker

4、在Namenode节点上执行刷新节点命令

hadoop dfsadmin –refreshNodes

5、Datanode节点均衡block块,也就是同步数据。

start-balancer.sh

注意事项:

1、保证slave的防火墙关闭

2、确保新的salve的ip或者主机名已经添加到master及其他slaves的hosts文件中,反之将master添加其他slave的主机名。实现主机名可以解析ip。

删除节点

1、在namenode节点中的配置文件添加

<property>

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

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

</property>

2、在dfs.hosts.exclude定义的文件中添加要下架的机器,一行一个。

3、使用命令强制加载节点

hadoop dfsadmin –refreshNodes

4、查看下架状态

hadoop dfsadmin –report

下架的机器会显示:Decommission in progres

执行完成后将不显示。

5、删除exclude文件中的主机名

6、到要下架的节点上关闭taskracker。

hadoop-daemon.sh stop tasktracker

安全机制

允许进入的节点设置

dfs.hosts/map.hosts

排除的设置(下线使用)

dfs.hosts.exclude/mapred.hosts.exclude

安全模式

hadoop开启是会有安全模式,安全模式时不允许修改、删除文件,知道安全模式结束。

作用:

主要为了系统启动时检查各个DataNode节点数据块的有效性,同时根据策略必要的复制或删除部分数据块。

一直处于安全模式原因:

如果datanode丢失的block块达到一定比例,系统会一直处于安全模式。

dfs.safemode.threshold.pct设置比例,默认是0.99f。如果设为1将永远为SafeMode。

集群监控-Web

MapReduce监控页面

地址http://主机名:50030/

HDFS监控页面

http://主机名:50070/


第三方监控工具

ganglie 分布式监控系统

Hadoop管理员命令

hadoop dfsadmin –safemode get 查看运行模式

hadoop dfsadmin –safemode enter 开启安全模式

hadoop dfsadmin –safemode leave 关闭安全模式

hadoop job –list 查看任务列表

hadoop job –kill jobid 删除任务

hadoop fsck / 检查HDFS状态,是否损坏

hadoop fsck / -delete 检查HDFS状态,删除损坏块

hadoop dfsadmin –report 检查HDFS状态,包括DdataNode信息

常见分布模式安装错误

1、NameNode与DataNode互相都可以ssh无密钥登陆访问

2、在hosts文件中127.0.0.1不要与主机名在一起

Hadoop学习记录(5)|集群搭建|节点动态添加删除的更多相关文章

  1. Hadoop HA高可用集群搭建(Hadoop+Zookeeper+HBase)

    声明:作者原创,转载注明出处. 作者:帅气陈吃苹果 一.服务器环境 主机名 IP 用户名 密码 安装目录 master188 192.168.29.188 hadoop hadoop /home/ha ...

  2. Ubuntu 12.04下Hadoop 2.2.0 集群搭建(原创)

    现在大家可以跟我一起来实现Ubuntu 12.04下Hadoop 2.2.0 集群搭建,在这里我使用了两台服务器,一台作为master即namenode主机,另一台作为slave即datanode主机 ...

  3. 高可用Hadoop平台-HBase集群搭建

    1.概述 今天补充一篇HBase集群的搭建,这个是高可用系列遗漏的一篇博客,今天抽时间补上,今天给大家介绍的主要内容目录如下所示: 基础软件的准备 HBase介绍 HBase集群搭建 单点问题验证 截 ...

  4. kafka学习(二)-zookeeper集群搭建

    zookeeper概念 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名 服务等.Zookeeper是h ...

  5. hadoop HA+kerberos HA集群搭建

    IP.主机名规划 hadoop集群规划: hostname IP hadoop 备注 hadoop1 110.185.225.158 NameNode,ResourceManager,DFSZKFai ...

  6. 第3章 Hadoop 2.x分布式集群搭建

    目录 3.1 配置各节点SSH无密钥登录 1.将各节点的秘钥加入到同一个授权文件中 2.拷贝授权文件到各个节点 3.测试无秘钥登录 3.2 搭建Hadoop集群 1.上传Hadoop并解压 2.配置H ...

  7. 3.环境搭建-Hadoop(CDH)集群搭建

    目录 目录 实验环境 安装 Hadoop 配置文件 在另外两台虚拟机上搭建hadoop 启动hdfs集群 启动yarn集群 本文主要是在上节CentOS集群基础上搭建Hadoop集群. 实验环境 Ha ...

  8. kafka学习(三)-kafka集群搭建

    kafka集群搭建 下面简单的介绍一下kafka的集群搭建,单个kafka的安装更简单,下面以集群搭建为例子. 我们设置并部署有三个节点的 kafka 集合体,必须在每个节点上遵循下面的步骤来启动 k ...

  9. Hadoop HA高可用集群搭建(2.7.2)

    1.集群规划: 主机名        IP                安装的软件                            执行的进程 drguo1  192.168.80.149 j ...

随机推荐

  1. MFC应用程序向导生成的文件

    比方说我们用Visio Studio创建了一个MFC应用程序,名称为Mysdi.在创建这个项目的时候,默认的会生成许多类和文件,就关于这些文件的内容和要点展开以下论述. 框架窗口类头文件 向导为项目M ...

  2. Vue + Webpack + Vue-loader 1

    Vue + Webpack + Vue-loader 原文地址:https://lvyongbo.gitbooks.io/vue-loader/content/ Vue-loader 是什么? vue ...

  3. CoreBluetooth - TouchID应用

    支持系统和机型: iOS系统的指纹识别功能最低支持的机型为iPhone 5s,最低支持系统为iOS 8, 虽然安装iOS 7系统的5s机型可以使用系统提供的指纹解锁功能,但由于API并未开放,所以理论 ...

  4. HDU 1560 DNA sequence (IDA* 迭代加深 搜索)

    题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1560 BFS题解:http://www.cnblogs.com/crazyapple/p/321810 ...

  5. C#基础|初探反射

    什么是反射 我们编写的C#代码都可以编译成exe文件或dll文件.暂时先把他们叫做程序集吧,程序集中包含了很多信息.你写了一个类,类中会有字段,有属性,有方法,编译是会把这些信息保存在程序集中,暂时把 ...

  6. PPTPD/L2TP/IPSec VPN一键安装包 For CentOS 6

    一.一键安装PPTPD VPN 本教程适用于Openv VPS.Xen VPS或者KVM VPS. 1.首先运行如下命令: cat /dev/net/tun 返回的必须是: cat: /dev/net ...

  7. AMH4.2免费版手动编译升级Nginx1.8版本方法

    从AMH免费版本停留在4.2版本之后就没有进行更新和升级,而且官方提供的解决文档也比较少,毕竟免费且没有盈利的产品还是没有多少兴趣的.但是,对于大部分网站环境来说,安装和使用AMH4.2免费版本还是够 ...

  8. strstr函数与strcmp函数

    1.strstr函数主要完成在一个字串中寻找另外一个字串 函数实现工程如下:摘自http://baike.baidu.com/link?url=RwrzOxs0w68j02J2uQs5u1A56bEN ...

  9. Unity3D研究院之在把代码混淆过的游戏返混淆回来

    最近一直在找如何在MAC上混淆Android的DLL,至今没能找到合适的,有大神知道记得告诉我喔.今天群里有人说了一个混淆代码和返混淆代码的工具de4dot ,不查不知道一查吓一跳.这玩意可以把别人混 ...

  10. Spring+MyBatis实践—工程配置

    初次实践:Spring+MyBatis技术搭建框架,采用Bootstrap前端开源框架. 简介: MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所 ...