大数据运维问题整理

1、负责公司大数据平台的部署、管理、优化、监控报警,保障平台服务7*24稳定可靠高效运行;

2、深入理解公司大数据平台架构,发现并解决性能瓶颈,支撑业务和数据量的快速增长;

3、开发大数据自动化运维、监控报警、故障处理相关脚本和工具;

 

4、负责Hadoop/spark/kafka等集群服务、业务监控、持续交付、应急响应、容量规划等。

 

大数据生态圈部署实战(最好是自动化的部署):这块是我们已经学习的这么多的大数据组件

 

尝试通过shell脚本实现所有组件的自动化安装和配置

 

提升步骤:其中一个组件的安装+配置的shell脚本--->增加一两个组件同时安装+配置---->加上遇到过的问题的测试和解决脚本--->最终一整套的自动化

 

1、面试中问到的问题

1、kafka相关(*****),kafka监控指标

2、mysql主从复制

3、大数据集群迁移

4、hadoop集群数据备份

 

Hbase备份可以分为在线备份和离线备份

 

5、hadoop底层原理

hdfs采用master/slave架构。一个Hdfs集群是有一个namenode和一定数目的datanode组成。namenode是一个中心服务器,负责管理文件系统的namespace和客户端对文件的访问。Datanode在集群中一般是一个节点一个,负责管理节点上它们附带的存储。在内部,一个文件分成一个或多个block,这些block存储在datanode集合例。namenode执行文件系统的namespace操作,例如打开、关闭、重命名文件和目录,同时决定block到具体datanode节点的映射。datanode在namenode的指挥下进行block的创建、删除和复制。namenode和datanode都是设计成可以跑在普通的廉价的linux的机器上。hdfs采用java语言开发,因此可以部署到很大范围的机器上,一个典型的部署场景是一台机器跑一个单独的namenode节点,集群中的其他机器跑一个datanode实例。这个架构并不排除一台机器上跑多个datanode,不过这比较少见。namenode是所有hdfs元数据的仲裁者和管理者,这样,用户数据永远不会流过namenode。

 hdfs架构原理

1、文件些人时候:

客户端向namenode发起文件的写入,namenode根据文件大小和文件块配置情况,返回给client它所管理部分datanode的信息。client将文件划分为多个block块,并根据datanode的地址信息,按顺序插入到datanode块中。

2、当文件读取:

client向namenode发起文件读取的请求。namenode返回文件存储的block块/、及其block块所在Datanode的信息。clinet读取文件信息。

namenode:

1、管理着文件系统命名空间,维护着文件系统树,跟文件目录数。 

2、存储元数据,

  文件名目录名及它们之间的层级关系

  文件目录的所有者及其权限

  每个文件块的名及文件有哪些块组成

3、元数据保存在内存中

4、保存文件,block,datanode之间的映射关系

 secondnamenode是做周期性的检查

 

 datanode:负责存储数据块,负责为系统客户端提供数据块的读写服务

根据namenode的指示进行创建、删除和复制等操作

心跳机制,定期报告文件块列表信息

datanode之间进行通信,快的副本处理

 

 

 

6、spark日常遇到的问题

 

spark原理:

driver process 通过resource manager 申请资源,resource manager跟excutor progress分配资源,excutor process 期中有60%的spark.storage.memoryFracion,有20%spark.shuffle.memoryFraction,剩余的20%分配给task;

 

7、hadoop日常组件的监控

答:目前采用的方案zabbix+hue+kafka manager

zabbix主要监控相关进程是否存活以及针对运行时间过长的任务进行报警,目前暂定为1个小时,主要是通过hadoop提供的jmx接口获取相关数据给zabbix

监控的项目:

1、监控rescoremanager、namenode、datanode、nodemanager

2、监控节点数目,如果数目为0报警

3、hadoop正在执行任务超过60分钟任务个数。

 

Hue:

hue是cloudera开源的一套针对hadoop及相关组件的可视化及监控工具

目前可以对:hdfs+mapreduce+hive+hbase+zookeeper+ooize+spark进行监控

目前监控的数据:

hdfs中的数据

mapreduce相关任务的情况

hbase中的数据

zookeeper的运行情况

 

kafka manager:

主要用于监控kafka集群运行情况及各个topic的详细参数

 

posted @ 2020-03-23 17:45  Simon92  阅读(622)  评论(0编辑  收藏  举报