手动合并hadoop namenode editlog
一. 基本概念
1.NN恢复实际上是由fsimage开始(这个相当于数据的base),如果有多个fsimage,会自动选择最大的fsimage,然后按照editlog序列日志开始执行日志
2.seen_txid文件里的值是当前的最大editlog值。如果nn正在运行,则是edits_inprogress_0000000003336594610 中的3336594610 ;如果NN已经挂了,则是序列最大的那个edits_0000000003332374206-0000000003334396028的下一个值:3334396029
3.在secondnn模式(冷备)和ha(热备)的standby模式下都是由nn的备份节点定期做checkpoint进行merge
4.NameNode:存储元数据,元数据存在内存和磁盘,保存文件—block DataNode之间的映射关系;
5.DataNode:存文件内容,磁盘上,维护block id 到datanode本地文件的映射
6.SecondaryNameNode:将NameNode的fsimage与edit log从NameNode复制到临时目录 将fsimage同edit log合并并产生新的fsimage 将产生的新的fsimage上传给NameNode 清除NameNode中的edit log
7.NameNode是单点,SecondaryNameNode可以认为是NameNode的备份,不是热切,可能会丢数据。
二. 手动恢复:
1.sudo su - 进入root用户,cd ${dfs.namenode.name.dir}目录下(可以在hadoop的conf下的hdfs-site.xml文件查看配置)
2. hadoop dfsadmin -safemode enter(进入安全模式)
3. hadoop dfsadmin -saveNamespace(保存内存信息到磁盘)
4. sudo /sbin/stop hadoop-hdfs-namenode(关闭NN)
5. cd /mnt/namenode/current/
6. rm /mnt/namenode/current/edits*(删除editlog)
7. sudo /sbin/start hadoop-hdfs-namenode(重启NN)
三.常用命令:
hadoop fs命令
ls(显示一层) lsr(递归)
du(显示所有文件及大小) dus(文件夹大小) count(多少个文件、大小)
hadoop fs –help mv 帮助
mv(移动)
cp(复制)
rm(删除) rmr(递归删除)
mkdir(新文件夹)
put(从本地文件复制到hdfs)
get(从hdfs复制到本地)
getmerge(合并目录中到多个文件 到 本地系统)
copyFromLocal(从本地拷贝到hdfs)
movelFromLocal(从本地移动到hdfs)
copyToLocal(从hdfs拷贝到本地)
text(允许压缩包)
cat(输出到控制台)
stat(分析,如修改时间 块大小 复制)
setrep(指定备份几份)
touchz(往文件写一个时间戳 内容是yyyy-MM-dd HH:mm:ss(文件必须零长度))
tail
chmod chowm chgrp
关于hadoop fs -setrep(命令修改副本数)
setrep
Usage: hadoop fs -setrep [-R] [-w] <numReplicas> <path>
Changes the replication factor of a file. If path is a directory then the command recursively
changes the replication factor of all files under the directory tree rooted at path.
Options:
The -w flag requests that the command wait for the replication to complete. This can potentially take a very long time.
The -R flag is accepted for backwards compatibility. It has no effect.
Example:
hadoop fs -setrep -w 3 /user/hadoop/dir1
Exit Code:
Returns 0 on success and -1 on error.
hdfs dfsadmin –report dfs信息
hdfs dfsadmin –savemode enter 进入 leave 离开 get得到当前状态 wait等待结束
hdfs dfsadmin –saveNamespace 保存内存信息到磁盘
hdfs dfsadmin –saveNamespace 保存内存信息到磁盘(必须安全模式)
hdfs dfsadmin –refreshNodes 比如新加节点 重新通信
hdfs dfsadmin –upgradeProgress status 升级信息
hdfs dfsadmin –finalizeUpgrade 停止升级
hdfs dfsadmin –metasave filename 存meta到本地文件
hdfs dfsadmin –setQuota 2 path 最多放几个文件(从现在开始的)
hdfs dfsadmin –clrQuota 2 path 清除
hdfs dfsadmin –setSpaceQuota 2 path (包含当前的)
hdfs dfsadmin –clrSpaceQuota 2 path (包含当前的)
hdfs dfsadmin –setBalancerBandwidth [byte per second] 负载均衡带宽
手动合并hadoop namenode editlog的更多相关文章
- Hadoop记录-Hadoop NameNode 高可用 (High Availability) 实现解析
Hadoop NameNode 高可用 (High Availability) 实现解析 NameNode 高可用整体架构概述 在 Hadoop 1.0 时代,Hadoop 的两大核心组件 HDF ...
- Hadoop namenode无法启动
最近遇到了一个问题,执行start-all.sh的时候发现JPS一下namenode没有启动 每次开机都得重新格式化一下namenode才可以 其实问题就出在tmp文件,默 ...
- Hadoop NameNode is not formatted.
2014-08-26 20:27:22,712 WARN org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Encountered except ...
- hadoop namenode多次格式化后,导致datanode启动不了
jps hadoop namenode -format dfs directory : /home/hadoop/dfs --data --current/VERSION #Wed Jul :: CS ...
- hadoop namenode -format Couldn'tload main class "-Djava.library.path=.home.hadoop.hadoop-2.5.2.lib"
<pre name="code" class="sql">[hadoop@MasterHadoop50 ~]$ hadoop namenode -f ...
- hdfs格式化hadoop namenode -format错误
在对HDFS格式化,执行hadoop namenode -format命令时,出现未知的主机名的问题,异常信息如下所示: [shirdrn@localhost bin]$ hadoop namenod ...
- hadoop namenode格式化问题汇总
hadoop namenode格式化问题汇总 (持续更新) 0 Hadoop集群环境 3台rhel6.4,2个namenode+2个zkfc, 3个journalnode+zookeeper-serv ...
- 对hadoop namenode -format执行过程的探究
引言 本文出于一个疑问:hadoop namenode -format到底在我的linux系统里面做了些什么? 步骤 第1个文件bin/hadoop Hadoop脚本位于hadoop根目录下的bi ...
- 通过tarball形式安装HBASE Cluster(CDH5.0.2)——Hadoop NameNode HA 切换引起的Hbase错误,以及Hbase如何基于NameNode的HA进行配置
通过tarball形式安装HBASE Cluster(CDH5.0.2)——Hadoop NameNode HA 切换引起的Hbase错误,以及Hbase如何基于NameNode的HA进行配置 配置H ...
随机推荐
- Kubernetes官方java客户端之八:fluent style
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- 操作系统-1w字关于内存的总结
内存的基本概念 什么是内存,有何作用 内存是用于存放数据的硬件.程序执行前需要先放入内存中才能被CPU处理 存储单元 内存中也有一个一个的小房间,每个小房间就是一个存储单元. 如果计算机按照 字节编址 ...
- 剑指offer-查找数组中重复的数字
找出数组中重复的数字. 在一个长度为 n 的数组 nums 里的所有数字都在 0-n-1 的范围内.数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次.请找出数组中任意一个重 ...
- Desired_Capabilities配置
appium服务器初始化参数 最全: https://github.com/appium/appium/blob/master/docs/cn/writing-running-appium/caps. ...
- 2021年正确的Android逆向开发学习之路
2021年正确的Android逆向开发学习之路 说明 文章首发于HURUWO的博客小站,本平台做同步备份发布.如有浏览或访问异常或者相关疑问可前往原博客下评论浏览. 原文链接 2021年正确的Andr ...
- ctfhub技能树—密码口令—默认口令
打开靶机 查看页面内容 根据题目提示,去搜索北京亿中邮信息技术有限公司邮件网关的默认口令 尝试登录 成功拿到flag
- WMIC 查看bios配置信息
如何查看我们的主板上的BIOS信息呢?有办法,不用安装任何软件,只需要windows自带的命令提示符就行,哈哈 WMIC BIOS LIST FULL /FORMAT:VALUE 如果第一次使用wmi ...
- idea 启动热部署Devtolls
1.在子工程pom.xml中添加devtools jar包到需要启动的项目中 1 <dependency> 2 <groupId>org.springframework.boo ...
- 学习Java第一天
public 保证类名和文件名一致 关键字字母全小写,编辑器中有颜色标记 null空常量不能打印 变量就是内存中的存储空间 计算机中最小的存储单元时字节(byte) //1字节(B) = 8位(bit ...
- Python爬虫:数据分析小能手:JSON库的用法
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写. 给大家推荐一个Python交流的q裙,大家在学习遇到了什么问题都可以进群一起交流,大家 ...