Hadoop日常运维问题汇总

一:namenode出现missing blocks

日常巡检CDH集群和HDP集群发现有些namenode下有很多missing blocks ,hadoop数据存储单位为块。一块64M,这些Missing大多因为元数据丢失而毁坏,很难恢复。就行硬盘故障一样,需要fsck并且delete。

CDH集群 :Cloudera manager的dashboard----HDFS----NameNode  Web UI 如图:

-----

  HDP集群:Ambari Server 的dashboard---HDFS Links---NameNode UI 如图

清理Missing blocks步骤:登录到console中控机,su hdfs 切换至hadoop集群管理用户

hdfs  fsck  /blocks-path/  查看文件系统cluster,如:

hdfs  fsck  -fs  hdfs://dc(n)   /block-path/    指定集群

hdfs  fsck  -fs  hdfs://dc   /block-path/ -delete   如果上步元数据已损坏,则直接清理。

例: hdfs fsck /app-logs/mapred/mbbi/logs/application_1525315338835_219860/10.11.12.161

hdfs fsck   -fs hdfs://dc1 /app-logs/mapred/mbbi/logs/application_1525315338835_219860/10.11.12.161

hdfs fsck  -fs  hdfs://dc1 /app-logs/mapred/mbbi/logs/application_1525315338835_219860/10.11.12.161  -delete

二: Spark on Yarn 查看任务日志及状态

1、根据application ID查看某个job的日志
yarn logs -applicationId application_1525315338835_7483

2、查看某个job的状态
yarn application -status application_1525315338835_7483

3、kill掉某个job(完全停止该job的执行,如果直接在Web上kill实际还会继续运行)
yarn application -kill application_1525315338835_7483

也可以通过 http://ip:8088/cluster/scheduler/ 查看,在此Web界面可通过applicationId查看任务状态和日志。

三:Hadoop集群用户磁盘配额管理

1.hdfs是hadoop集群的管理用户,所以首先应该登陆集群console并且su切换到hdfs用户

2.磁盘配额分为磁盘目录文件数配额和磁盘空间配额。以msns用户、1000000文件数、100T的配额空间为例:

磁盘目录文件数配额:hdfs dfsadmin -setQuota 1000000 /user/msns

磁盘空间配额:hdfs dfsadmin -setSpaceQuota 100t /user/msns

3.查看磁盘已有配额信息:

hadoop fs -count -q  /user/msns

文件数限额        可用文件数    空间配额    可用空间           目录数      文件数     总大小        文件/目录名

4清空目录配额信息:

清空文件数配额:hdfs dfsadmin -clrQuota  /user/msns

清空磁盘空间配额:hdfs dfsadmin -clrSpaceQuota  /user/msns

***5.注意这里的空间配额是把副本容量也算入的,也就是所我们这里的配额控制的是file_size  x  replications。即,如果我们要为msns用户设置100T的实际可用空间,副本因子为3(一般为3),那么就需要用上面的命令配置300T的空间配额。文件数配额也类似。

原文地址:https://www.cnblogs.com/heiye123/p/9025766.html

时间: 2024-08-08 00:32:13

Hadoop日常运维问题汇总的相关文章

hadoop日常运维与升级总结

日常运维 升级 问题处理方法 日常运维 进程管理 由于配置文件的更改,需要重启生效, 或者是进程自己因某种致命原因终止, 或者发现进程工作出现异常等情况下,需要进行手动进程的关闭或启动, 或者是增删节点过程中的需要, 进程的关闭与启动,使用 hadoop-daemon.sh start|stop datanode/namenode/journalnode/zkfc yarn-daemon.sh start|stop nodemanager/resourcemanager 检查进程是否完成关闭:

运维人员必须熟悉的运维工具汇总

运维人员必须熟悉的运维工具汇总 操作系统 :Centos※,Ubuntu,Redhat※,suse,Freebsd网站服务 :nginx※,apache※,tomcat※,lighttpd,php※,resin※数据库     :MySQL※,Mysql-proxy,MariaDB,PostgreSQLDB中间件:MyCat,amoeba,MySQL-proxy代理相关:lvs,keepalived,haproxy,nginx,apache,heartbeat(此行都是※)网站缓存:squid※

Hbase 日常运维

1.1监控Hbase运行状况 1.1.1操作系统 1.1.1.1IO a.群集网络IO,磁盘IO,HDFS IO IO越大说明文件读写操作越多.当IO突然增加时,有可能:1.compact队列较大,集群正在进行大量压缩操作. 2.正在执行mapreduce作业 可以通过CDH前台查看整个集群综合的数据或进入指定机器的前台查看单台机器的数据: b.Io wait 磁盘IO对集群的影响比较大,如果io wait时间过长需检查系统或磁盘是否有异常.通常IO增加时io wait也会增加,现在FMS的机器

[转]Linux 系统运维学习方法汇总

Linux 系统运维学习方法汇总 (2014.07.18) from:http://freeloda.blog.51cto.com/2033581/1315694 大纲 一.前言 二.Linux 运维大环境说明 三.Linux 运维学习思路 四.Linux 运维大方向说明 五.Linux 运维学习必看书籍推荐 六.Linux 运维实践内容简介 注,本博文主要用于交流与学习.如有雷同,纯属意外. 一.前言 最近,有不少博友问我.刚进入运维行业怎么学习呢?思路是什么?一点思路也没有,然后与大家在群里

日常运维工作中如何确保你的linux操作系统安全

在现在这个世道中,Linux操作系统的安全是十分重要的.但是,你得知道怎么干.一个简单反恶意程序软件是远远不够的,你需要采取其它措施来协同工作.下面是日常运维工作中常用的几种Linux安全的策略方法. 1. 使用SELinux SELinux是用来对Linux进行安全加固的,有了它,用户和管理员们就可以对访问控制进行更多控制.SELinux为访问控制添加了更细的颗粒度控制.与仅可以指定谁可以读.写或执行一个文件的权限不同的是,SELinux可以让你指定谁可以删除链接.只能追加.移动一个文件之类的

zookeeper 用法和日常运维

本文以ZooKeeper3.4.3版本的官方指南为基础:http://zookeeper.apache.org/doc/r3.4.3/zookeeperAdmin.html,补充一些作者运维实践中的要点,围绕ZK的部署和运维两个方面讲一些管理员需要知道的东西.本文并非一个ZK搭建的快速入门,关于这方面,可以查看<ZooKeeper快速搭建>. 1.部署 本章节主要讲述如何部署ZooKeeper,包括以下三部分的内容: 系统环境 集群模式的配置 单机模式的配置 系统环境和集群模式配置这两节内容大

mysql日常运维与参数调优

日常运维 DBA运维工作 日常 导数据,数据修改,表结构变更 加权限,问题处理 其它 数据库选型部署,设计,监控,备份,优化等 日常运维工作: 导数据及注意事项 数据修改及注意事项 表结构变更及注意事项 加权限及注意事项 问题处理,如数据库响应慢 导数据及注意事项 数据最终形式(csv,sql文本,还是直接导入某库中) 导数据方法(mysqldump,select into outfile,) 注意事项 导出为csv格式需要file权限,并且只能数据库本地导 避免锁库锁表(mysqldump使用

MySQL 日常运维业务账号权限的控制

在MySQL数据库日常运维中,对业务子账号的权限的统一控制十分必要. 业务上基本分为读账号和写账号两种账号,所以可以整理为固定的存储过程,让数据库自动生成对应的库的账号,随机密码.以及统一的读权限,写权限.(这里没有对 host进行过多的限制.只赋给通用的192.168.% .有兴趣的同学可以在存储过程加个参数,对host 控制) delimiter // set session sql_log_bin=OFF; drop PROCEDURE IF EXISTS `usercrt` // CRE

Openstack云计算项目实施其二(安装后日常运维)

5 安装后日常运维   运维基本的操作都在控制节点上的,较为方便的方式就是在openstack 的 dashboard(仪表盘)中进行,进入 dashboard 的方式就是直接在浏览器中输入控制节点的 IP 地址.(需要注意的是浏览器选择方面最好选择火狐浏览器或则谷歌浏览器,因为相对于 IE 浏览器而言,前面两个浏览器对于 openstack 的支持性要好,使用 IE 会在打开实例控制台时无法进入,出现"No vnc...."的错误信息) 用户名和密码放在控制节点/root 下,存放在