一、大数据运维的职责

  一)大数据运维的职责概述

  1、集群管理

  • 大数据需要分布式系统(集群)
  • 相关软软件CDH、HDFS、YARN、Hive、Hbase、Kafka、zookeeper、Spark、Flume、Impala、Hue、Sqoop、Elasticsearch、kibana、MySQL、Oracle等等

  2、故障处理

  • 商用硬件使得故障是常态
  • 区分故障等级,优先处理影响实时性业务的故障

  3、变更管理

  • 以可控的方式,高效的完成变更工作
  • 包括配置管理和发布管理

  4、容量管理

  • 存储空间、允许连接数等都是容器概念
  • 在多租户环境下,容器管理尤其重要

  5、性能调优

  • 不同组件的性能概念不一样,如kafka注重吞吐量,hbase注重实时性可用
  • 需要对组件有深刻的理解

  6、架构调优

  • 优化大数据平台架构,支持平台能力和产品的不断迭代
  • 类似架构师的工作

  二)运维三板斧:可以解决90%以上的故障处理工作

  1、运维三板斧简述

  • 重启:重启有问题的机器或进程,使其正常工作
  • 切换:主备切换或猪猪切换,连接正常工作的节点
  • 查杀:杀死有问题的进程、连接等

  2、运维三板斧的问题

  • 只能解决故障处理问题,不能解决性能调优、架构优化等问题
  • 只能治标,不能治本

  3、大数据运维和传统运维的不同

  • 传统运维面对的底层软硬件基本稳固;大数据运维面对的是商用和复杂的Linux版本
  • 传统运维面对单机架构为主;大数据运维面对复杂的分布式架构
  • 传统运维大多维护闭源商业版系统;大数据运维通常面对开源系统,文档手册匮乏,对阅读源码要求高
  • 大数据运维对自动化工具的依赖大大增加

  三)laas层运维工作

  一般中大型企业有自己的基础设施维护团队,这部分工作不会交给大多数运维来做

  小公司可能需要大数据运维兼任这部分工作,主要关注三方面

  • 硬件:大数据系统大多使用廉价PC Server或虚拟机,硬件故障时常态,通过告警、日志、维护命令等识别故障,并组织硬件更换
  • 存储:大多使用PC Server挂载本地盘的存储方式,极少情况会使用SAN(存储区域网络)或NAS(网络附属存储),熟悉分区、格式化、巡检等基本操作
  • 网络:网络的配置变更需要比较专业的只是,如有需要可学习CCNA、CCNP等认证课程,但网络硬件和配置问题概率很低,主要关注丢包、延时

  四)大数据运维的工作职责

  1、HDFS运维工作

    1、容量管理
  • HDFS空间使用率超过80%要报警,若是多租户环境,租户的配额空间也可能用完
  • 熟悉hdfs,fsck,distcp等常用命令,会使用DataNode均衡器
    2、进程管理
  • namenode的进程是重点
  • 熟悉dfsadmin等命令怎么做namenode高可用
    3、故障管理
  • Hadoop最常见的错误是硬盘损坏(所以相关的监控,可以要有,指定好相应的预案)
    4、配置管理
  • hdfs-site.xml中的参数配置

  2、MapReduce运维工作

    1、进程管理
  • jobtracker进程故障概率比较低,有问题可以通过重启解决
  • 组件的高可用
    2、配置管理
  • mapred-site.xml中的参数设置

  3、Yarn运维工作

    1、故障管理
  • 主要是当任务异常中止时看日志排查,通常故障原因会集中在资源问题、权限问题、代码问题中的一种
    2、进程管理
  • ResourceManager主要是学会配置HA
  • NodeManager进程挂掉不重要,重启即可
    3、配置管理
  • yarn-site.xml中的参数设置,主要分三块配置:scheduler、ResourceManager、NodeManager

  4、Hive/Impala运维工作

    1、SQL问题排查
  • 结果不对,主要原因可能是SQL错误、数据不存在、UDF错误等,需要靠经验排查
  • 慢SQL,这类问题 开发经常会找运维排查,原因有可能是劣质SQL、数据量大,ye
    2、元数据管理
  • Hive和Impala共用Hive的元数据,存在关系型数据库中

  5、其他组件

  根据组件用途、特性、关注点的不同,运维工作各不相同

  • HBase关注读写性能、服务的可用性
  • Kafka关注吞吐量、负载均衡、消息不丢机制
  • Flume关注吞吐量、故障后得到快速恢复
  • ………………………………………….

二、大数据运维的技能

  一)扎实的Linux应用技能

  • Linux相关的管理工具grep、sed、awk等,语言shell、Python等
  • 关系型数据库MySQL、postgresql等关系型数据库技能
  • 计算机网络、操作系统等基础
  • Hadoop生态圈的各组件原理、架构和使用
  • 技术经验的积累

  二)丰富的行业领域知识、经验

  • 沟通能力强:言之有理有据
  • 懂业务:大数据应用架构

  三)阅读英文文档的能力

  四)学习新技术的狂热

 

版权声明:本文为happy-king原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/happy-king/p/9979830.html