hdfs haadmin使用,DataNode动态上下线,NameNode状态切换管理,数据块的balance,HA下hdfs-api变化(...
1.2.4集群运维测试
HA集群中两个namenode状态的管理命令
[root@mini2 hadoop-2.6.4]# bin/hdfs haadmin Usage: DFSHAAdmin [-ns <nameserviceId>] [-transitionToActive <serviceId> [--forceactive]] [-transitionToStandby <serviceId>] [-failover [--forcefence] [--forceactive] <serviceId> <serviceId>] [-getServiceState <serviceId>] [-checkHealth <serviceId>] [-help <command>] |
示例: 切换nn2为active
bin/hdfs haadmin -transitionToActive nn2--forcemanual
1、Datanode动态上下线
Datanode动态上下线很简单,步骤如下:
a) 准备一台服务器,设置好环境
b) 部署hadoop的安装包,并同步集群配置
c) 联网上线,新datanode会自动加入集群
d) 如果是一次增加大批datanode,还应该做集群负载重均衡
(start-balancer.sh -threshold 8 ##指定磁盘利用率,详情见下节 3)
2、Namenode状态切换管理
使用的命令上hdfs haadmin
可用 hdfs haadmin –help查看所有帮助信息
可以看到,状态操作的命令示例:
查看namenode工作状态
hdfs haadmin -getServiceState nn1 |
将standby状态namenode切换到active
hdfs haadmin –transitionToActive nn1 |
将active状态namenode切换到standby
hdfs haadmin –transitionToStandby nn2 |
3、数据块的balance
启动balancer的命令:
start-balancer.sh -threshold 8
运行之后,会有Balancer进程出现:
上述命令设置了Threshold为8%,那么执行balancer命令的时候,首先统计所有DataNode的磁盘利用率的均值,然后判断如果某一个DataNode的磁盘利用率超过这个均值Threshold,那么将会把这个DataNode的block转移到磁盘利用率低的DataNode,这对于新节点的加入来说十分有用。Threshold的值为1到100之间,不显示的进行参数设置的话,默认是10。
1.2.5 HA下hdfs-api变化
客户端需要nameservice的配置信息,其他不变
/** * 如果访问的是一个ha机制的集群 * 则一定要把core-site.xml和hdfs-site.xml配置文件放在客户端程序的classpath下 * 以让客户端能够理解hdfs://ns1/中 “ns1”是一个ha机制中的namenode对——nameservice * 以及知道ns1下具体的namenode通信地址 * @author * */ public class UploadFile {
public static void main(String[] args) throws Exception {
Configuration conf = new Configuration(); conf.set("fs.defaultFS", "hdfs://ns1/");
FileSystem fs = FileSystem.get(new URI("hdfs://ns1/"),conf,"hadoop");
fs.copyFromLocalFile(new Path("g:/eclipse-jee-luna-SR1-linux-gtk.tar.gz"), new Path("hdfs://ns1/"));
fs.close();
}
} |

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Elasticsearch 与 Kafka 整合剖析
1.概述 目前,随着大数据的浪潮,Kafka 被越来越多的企业所认可,如今的Kafka已发展到0.10.x,其优秀的特性也带给我们解决实际业务的方案。对于数据分流来说,既可以分流到离线存储平台(HDFS),离线计算平台(Hive仓库),也可以分流实时流水计算(Storm,Spark)等,同样也可以分流到海量数据查询(HBase),或是及时查询(ElasticSearch)。而今天笔者给大家分享的就是Kafka 分流数据到ElasticSearch。 2.内容 我们知道,ElasticSearch是有其自己的套件的,简称ELK,即ElasticSearch,Logstash以及Kibana。ElasticSearch负责存储,Logstash负责收集数据来源,Kibana负责可视化数据,分工明确。想要分流Kafka中的消息数据,可以使用Logstash的插件直接消费,但是需要我们编写复杂的过滤条件,和特殊的映射处理,比如系统保留的`_uid`字段等需要我们额外的转化。今天我们使用另外一种方式来处理数据,使用Kafka的消费API和ES的存储API来处理分流数据。通过编写Kafka消费者,...
- 下一篇
Hive简介、什么是Hive、为什么使用Hive、Hive的特点、Hive架构图、Hive基本组成、Hive与Hadoop的关系、Hive与...
1.1 Hive简介 1.1.1 什么是Hive Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。 1.1.2 为什么使用Hive Ø 直接使用hadoop所面临的问题 人员学习成本太高 项目周期要求太短 MapReduce实现复杂查询逻辑开发难度太大 Ø 为什么要使用Hive 操作接口采用类SQL语法,提供快速开发的能力。 避免了去写MapReduce,减少开发人员的学习成本。 功能扩展很方便。 1.1.3 Hive的特点 Ø 可扩展 Hive可以自由的扩展集群的规模,一般情况下不需要重启服务。 Ø 延展性 Hive支持用户自定义函数,用户可以根据自己的需求来实现自己的函数。 Ø 容错 良好的容错性,节点出现问题SQL仍可完成执行。 1.2 Hive架构 1.2.1 架构图 Jobtracker是hadoop1.x中的组件,它的功能相当于: Resourcemanager+AppMaster TaskTracker 相当于: Nodemanager+ yarnchild 1.2.2 基本组成 Ø 用户接口...
相关文章
文章评论
共有0条评论来说两句吧...