HDFS

HDFS2.0

痞子三分冷 提交于 2020-01-07 06:09:11
HDFS2.0的新特性 • NameNode HA(高可用) • NameNode Federation • HDFS 快照 • HDFS 缓存 • HDFS ACL • 异构层级存储结构 NameNode HA HDFS1.0中存在的问题: Hadoop 1.0中NameNode在整个HDFS中只有一个,存在单点故障 风险,一旦NameNode挂掉,整个集群无法使用 解决方法: HDFS的高可用性将通过在同一个集群中运行两个NameNode (active NameNode & standby NameNode )来解决 • 在任何时间,只有一台机器处于Active状态;另一台机器是处于Standby状态 • Active NameNode负责集群中所有客户端的操作; • Standby NameNode主要用于备用,它主要维持足够的状态,如果必要,可以提供快速 的故障恢复。 • 同步问题:需要依赖JournalNodes守护进程,完成元数据的一致性 • 快速的故障恢复:心跳保证,Standby NN也需要保存集群中各个文件块的存储位置 • 避免分歧:任何情况下,NameNode只有一个Active状态,否则导致数据的丢失及其它不正确的结果 – 如何做到? – 在任何时间,JNs只允许一个 NN充当writer。在故障恢复期间,将要变成Active 状态的NN

How to select policy of block placement in the DataNode?

房东的猫 提交于 2020-01-07 05:54:10
问题 If the block replication is 3 in my hadoop cluster,and every DataNode has 3 ${dfs.data.dir} directories. When the DataNode is choosed to storage block, the block is storage in all 3 direcoties or one of them? If the answer is latter, how to choose a ${dfs.data.dir} directory? 回答1: The right directory is chosen on round robin manner when the block arrives to the datanode. You can alter this behavior by changing dfs.datanode.fsdataset.volume.choosing.policy to org.apache.hadoop.hdfs.server

How to select policy of block placement in the DataNode?

拥有回忆 提交于 2020-01-07 05:54:09
问题 If the block replication is 3 in my hadoop cluster,and every DataNode has 3 ${dfs.data.dir} directories. When the DataNode is choosed to storage block, the block is storage in all 3 direcoties or one of them? If the answer is latter, how to choose a ${dfs.data.dir} directory? 回答1: The right directory is chosen on round robin manner when the block arrives to the datanode. You can alter this behavior by changing dfs.datanode.fsdataset.volume.choosing.policy to org.apache.hadoop.hdfs.server

监控指标10K+!携程实时智能检测平台实践

人盡茶涼 提交于 2020-01-07 01:15:11
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 简介: 本文将介绍携程实时智能异常检测平台——Prophet。到目前为止,Prophet 基本覆盖了携程所有业务线,监控指标的数量达到 10K+,覆盖了携程所有订单、支付等重要的业务指标。Prophet 将时间序列的数据作为数据输入,以监控平台作为接入对象,以智能告警实现异常的告警功能,并基于 Flink 实时计算引擎来实现异常的实时预警,提供一站式异常检测解决方案。 作者:潘国庆@携程 一、背景介绍 1.规则告警带来的问题 大部分监控平台是基于规则告警实现监控指标的预警。规则告警一般基于统计学,如某个指标同比、环比连续上升或下降到一定阈值进行告警。规则告警需要用户较为熟悉业务指标的形态,从而较为准确的配置告警阈值,这样带来的问题是配置规则告警非常繁琐、告警效果也比较差,需要大量人力物力来维护规则告警。 当一个告警产生时,也需要耗费许多人力验证告警是否正确并确认是否需要重新调整阈值。在携程,规则告警还涉及了其它问题,比如携程仅公司级别的监控平台就有三个,每个业务部门还会根据自己的业务需求或业务场景构建自己的监控平台。携程内部有十几个不同规模的监控平台,在每一个监控平台都配置监控指标,对于用户是非常繁琐的。 二、Prophet 针对规则告警存在的以上几种问题,携程构建了自己的实时智能异常检测平台——

HDFS的HA集群原理分析

泄露秘密 提交于 2020-01-07 00:52:28
1.简单hdfs集群中存在的问题 不能存在两个NameNode 单节点问题 单节点故障转移 2.解决单节点问题 找额外一个NameNode备份原有的数据 会出现脑裂 脑裂:一个集群中多个管理者数据不一致 这种情况称之为脑裂 3.如何解决启动多个NameNode时保证同一时刻只有一个NameNode工作 避免脑裂发生   QJM 使用Zookeeper完成高可用 4.面试问题 在HA集群中 如果zk与NameNode(active) 出现网络延迟这种情况时,zk会自动切换NameNode(standy) 为活跃节点 这个时候集群中就出现了多个NameNode active 进而出现脑裂问题 Journal Node可以解决脑裂问题 它有两个作用: 负责NameNode中edits同步 隔离机制 保证在这一时刻只能有一个NameNode active 使用ssh登录到NameNode节点上使用kill命令杀死NameNode 来源: https://www.cnblogs.com/xiaoh1/p/12151920.html

分布式文件系统HDFS

左心房为你撑大大i 提交于 2020-01-06 19:17:32
一.启动hdfs 在sbin目录下 ./start-dfs.sh jps检测进程是否开启 查看进程 方式一:jps检测进程是否开启 方式二: http://192.168.198.10:50070 发现进程有误,在logs目录下寻找log文件。 浏览器打不开 :查看防火墙状态:sudo firewall-cmd --state 关闭防火墙: sudo systemctl stop firewalld.service start-dfs.sh = hadoop-daemons.sh start namenode hadoop-daemons.sh start datanode hadoop-daemons.sh start secondarynamenode 二.命令行操作 hadoop常用命令: hadoop fs -ls / hadoop fs -put 从本地复制到hdfs hadoop fs -copyFromLocal hadoop fs -moveFromLocal hadoop fs -cat hadoop fs -text hadoop fs -get 复制到本地 hadoop fs -mkdir hadoop fs -mv 移动/改名 hadoop fs -getmerge hadoop fs -rm hadoop fs -rmdir hadoop fs -rm

Hadoop2.6.5的伪分布式,全分布式,HA(高可用)搭建步骤

情到浓时终转凉″ 提交于 2020-01-06 18:09:55
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 伪分布式 (single node setup) --------------------------- 安装jdk、配置环境变量,测试 免秘钥 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys hadoop包安装并配置环变:hadoop-2.6.5.tar.gz Hadoop的第二次JAVA_HOME 环境变量配置 vi hadoop-env.sh vi mapred-env.sh vi yarn-env.sh 配置core-site.xml vi core-site.xml <property> <name>fs.defaultFS</name> <value>hdfs://node06:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/var/sxt/hadoop/local</value> </property> 配置hdfs-site.xml <property> <name>dfs.replication</name> <value>1</value> </property>

hadoop完全分布式集群安装的文件配置

女生的网名这么多〃 提交于 2020-01-06 17:20:44
1.修改hadoop-env.sh export JAVA_HOME = /home/hadoop/jdk 2.修改core-site.xml < configuration > < ! -- 指定 HDFS 老大(namenode)的通信地址 -- > < property > < name > fs.defaultFS < /name > < value > hdfs://hadoop01:9000 < /value > < /property > < ! -- 指定 hadoop 运行时产生文件的存储路径 -- > < property > < name > hadoop.tmp.dir < /name > < value > /home/hadoop/data/hadoopdata < /value > < /property > < /configuration > 3.修改hdfs-site.xml < ! -- Put site-specific property overrides in this file. -- > < configuration > < property > < name > dfs.namenode.name.dir < /name > < value > /home/hadoop/data/hadoopdata/name < /value

Permissions error on webhdfs

冷暖自知 提交于 2020-01-06 15:19:07
问题 I'm working on using the REST interface to Hadoop's HDFS as a convenient way to store files over the network. To test I installed hadoop on my mac (10.8.5) following these instructions: http://importantfish.com/how-to-install-hadoop-on-mac-os-x/ That worked like a charm and I'm able to start hadoop and run a basic test: hadoop-examples-1.1.2.jar pi 10 100 Now, I'm using the python client to handle the HTTP requests to/from webhdfs: http://pythonhosted.org/pywebhdfs/ But I'm stumbling on a

Permissions error on webhdfs

本小妞迷上赌 提交于 2020-01-06 15:18:31
问题 I'm working on using the REST interface to Hadoop's HDFS as a convenient way to store files over the network. To test I installed hadoop on my mac (10.8.5) following these instructions: http://importantfish.com/how-to-install-hadoop-on-mac-os-x/ That worked like a charm and I'm able to start hadoop and run a basic test: hadoop-examples-1.1.2.jar pi 10 100 Now, I'm using the python client to handle the HTTP requests to/from webhdfs: http://pythonhosted.org/pywebhdfs/ But I'm stumbling on a