运维是一个融合多学科(网络、系统、开发、安全、应用架构、存储等)的综合性技术岗位,从最初的网络管理(网管)发展到现在的系统运维工程师、网络运维工程师、安全运维工程师、运维开发工程师等,可以看出,运维的分工一直在细化,并且对综合技能要求越来越高,可以看出,未来运维的发展趋势是高、精、尖,高表示高度,精表示精通,尖表示尖端,也就是运维职场一定要站在一定的技术高度,在多个技术领域中,要精通某项技能,同时对尖端前沿技术一定要能掌控趋势。
一、运维职位的发展和趋势
根据不同的运维领域和技术面以及分工流程三个方面来了解下2019年运维职位的发展趋势。
1、按领域来划分
1)、基础设施运维:IDC/网络运维、服务器/存储设备运维
2)、系统运维:系统中间件运维、云计算平台运维
3)、数据运维:数据库运维、大数据技术平台运维
4)、应用运维:应用软件系统
5)、云平台运维:公有云平台运维
6)、容器运维:基于容器服务的运维
2、按技术切面来分
1)、安全运维
2)、性能运维
3)、数据运维
4)、集成运维
3、按流程来划分
1)、构建/持续集成、发布
2)、安装部署、升级、迁移、合并、扩展
3)、配置、初始化、配置变更
4)、备份、传输、恢复
5)、日志、监控、预警
6)、诊断排查、优化
二、大数据运维技能图谱
大数据从2017年开始逐渐走到生活的各个角落,2018年在逐渐落地,而在2019年,大数据依然火热,加上国家对大数据产业的扶持,大数据产业在新的一年岗位需求一定会更加大,因此掌握大数据运维技能,就走在了运维的前沿,下图列出了大数据运维要掌握的各种必备技能。
如果你对大数据开发感兴趣,想系统学习大数据的话,可以加入大数据技术学习交流扣扣群:4583+数字45782,欢迎添加,私信管理员,了解课程介绍,获取学习资源
三、数据为王的时代
万丈高楼平地起,高楼稳不稳取决于地基是否扎实。运维数据便是运维管理这座高楼的地基。运维数据大致分为CMDB、日志、生产DB、知识库四个方面。
CMDB中文是配置管理数据库,存储与管理企业IT架构中设备的各种配置信息,主要是IT资产管理信息。
日志数据保护了企业服务器上运行的各种系统产生的应用日志,系统日志、设备日志、数据库日志等数据,这部分数据是企业数据的核心。
DB数据主要是所有IT系统的数据库信息,包括运维管理系统本身的数据库,数据库包含生产数据库、测试数据库、开发数据库三种类型。
知识库主要存储日常开发、测试、运维管理中发生的事件、问题以及一些经典问题的解决和常用的解决方案,主要起到运维管理辅助的功能。
对数据的维护和管理只管重要,特别是日志数据,对运维来说,通过日志可以比较准确全面地知道系统或是设备的运行情况,可以返查问题产生的原因,还原问题发生的整个过程。通过日志也可以提前预测系统可能要发生的问题或是故障,如系统安全日志,如果网络攻 击会在系统安全日志中有一定的体现。
下面简单介绍下,运维重点收集的日志数据有哪些部分以及用途。
1、系统日志
系统日志主要指的是操作系统的日志,主要在/var/log下的各种日志信息。包含系统操作日志、系统安全日志、定时任务日志等。系统日志是运维管理安全模块中审计的重要依据。一般默认的操作系统日志不能满足要求,需要对系统的参数进行修改,如为history命令加上时间戳、IP,并且长久保留历史等功能。并且对日志文件进行处理,不允许用户进行清空命令,只能追加。
2、应用日志
应用日志主要记录应用服务的健康运行情况以及业务操作的具体日志两部分。应用监控运行情况反应应用服务的健康状态,如果应用占用CPU或是内存过高或是忽高忽低不定,都可以通过分析应用日志结合业务操作日志得出结论。业务操作日志可以为业务审计提供主要依据。有一些系统喜欢把业务操作日志写到数据库中,这个也是需要注意的。不过不管在哪个地方,要求是不可缺少的,它为以后业务审计和问题返查提供依据。
3、数据库日志
数据库日志主要反馈数据库的运行情况。通过监控和管理数据库的日志,及时了解数据库的运行情况,遇到问题及时解决等。可以通过数据库日志结合数据库系统自带的数据库如Oracle的系统视图v$开头,MySQL的performance_schema等。虽然数据库的一些信息不是存在日志中而是在数据库里面,但是也可以作为数据库日志的一部分进行管理和监控,已便我们及时知道数据库的监控状况,从而预防可能出现的问题。
4、设备日志
设备日志一般是一个比较容易忽略的地方,但设备日志往往可以反映设备的运行情况。交换机故障,防火墙故障等设备故障都可能引起大面积的系统和服务故障。所以设备日志一定要收集,分析和监控预警。常用的设备日志有交换机日志、防火墙日志、网络安全设备日志等。
这么多的日志,运维要通过各种手段完成日志的收集、过滤分析、可视化展示,那么如何实现这些功能呢,方法很多。
四、用大数据思维做运维监控
大数据分析最早就来源于运维人的日志分析,到逐渐发展对各种业务的分析,人们发现这些数据蕴涵着非常大的价值,通过实时监测、跟踪研究对象在互联网上产生的海量行为数据,进行挖掘分析,揭示出规律性的东西,提出研究结论和对策。这就是大数据的用途。
同样,通过大数据分析,我们可以得到各种指标,例如:
1、在业务层面,如业务每秒访问数,每秒验券数,每分钟支付、创建订单等。
2、在应用层面,每个应用的错误数,调用过程,访问的平均耗时,最大耗时,95线等。
3、在系统资源层面:如cpu、内存、swap、磁盘、load、主进程存活等。
4、在网络层面: 如丢包、ping存活、流量、tcp连接数等。
而这些指标,刚好是运维特别需要的东西。通过大数据分析出的这些指标,可以解决如下方面的问题:
系统健康状况监控
查找故障根源
系统瓶颈诊断和调优
追踪安全相关问题
那么如何用大数据思维做运维呢,大数据架构上的一个思维就是:提供一个平台让运维方便解决这些问题, 而不是,让大数据平台去解决出现的问题。
对于运维的监控,利用大数据思维,需要分三步走:
获取需要的数据
过滤出异常数据并设置告警阀值
通过第三方监控平台进行告警
所有系统最可靠的就是日志输出,系统是不是正常,发生了什么情况,我们以前是出了问题去查日志,或者自己写个脚本定时去分析。现在这些事情都可以整合到一个已有的平台上,我们唯一要做的就是定义分析日志的的逻辑。
好啦,这就是今天要给大家介绍的新时期核心运维技能啦,抓住时机,赶紧开始全新学习吧!