运维是一个集多学科(网络、系统、开发、安全、应用架构、存储等)于一体的综合性技术岗位,从最初的网络管理(networkmanagement)到当前的系统操作。运维工程师、网络运维工程师、安全运维工程师、运维开发工程师等。可见运维分工细化,对综合技能的要求越来越高,更高。而且,未来运维的发展趋势是高、精、尖,即运维职场必须站在一定的技术高度。在多个技术领域,既要精通某项技能,又要能驾驭技术的走向。运维岗位发展趋势我们从不同运维领域、技术层面、分工流程三个方面来了解2019年运维岗位的发展趋势。按领域划分基础设施运维:IDC/网络运维、服务器/存储设备运维系统运维:系统中间件运维、云计算平台运维数据运维:数据库运维、大数据运维数据技术平台运维应用运维:应用软件系统云平台运维:公有云平台运维容器运维:基于容器服务的运维按技术层面划分安全运维性能运维和维护数据运维综合运维按流程划分构建/维护持续集成、发布、安装部署、升级、迁移、合并、扩展配置、初始化zation、配置变更备份、传输、恢复日志、监控、预警诊断与故障处理、优化系统运维技能图谱系统运维是运维的基础,新的一年,对基础运维的要求技能也在增加。只有打好系统运维的基础,才能在后面学习到各种运维技巧。下图列出了系统运维需要掌握的技能:Web运维技能图Web运维是运维岗位中最多的岗位之一,薪水也比较高,但是知识点比较多被掌握。该掌握的技能一定要掌握,旧的运维技能不能丢。下图列出了Web运维需要掌握的各种必备技能。大数据运维技能图大数据从2017年开始逐渐进入生活的各个角落,2018年开始逐步落地,2019年大数据依然火热。再加上国家对大数据产业的扶持,大数据产业在新的一年,就业岗位的需求肯定会更大。因此,掌握大数据运维技能将是运维工作的重中之重。下图列出了大数据运维必备的各种技能。容器运维技能图容器的出现是IT行业的一场革命。2015年到2016年,业界普遍认为是容器技术爆发的一年。在短短一年多的时间里,容器技术完成了从零星概念到野火的壮举。如今,容器技术在国内大部分企业落地已经成为共识,国内生态也呈现出企业产品、开源社区、公有云齐头并进的良好局面。因此,2019年也是容器继续快速落地的一年。下图列出了大数据运维必备的各种技能。数据为王的时代,高楼平地而起,高楼的稳固取决于地基是否牢固。运维数据是这座高楼运维管理的基础。运维数据大致分为四个方面:CMDB、日志、生产DB、知识库。CMDB中文是配置管理数据库,存储和管理企业IT架构中设备的各种配置信息,主要是IT资产管理信息。日志数据保护企业服务器上运行的各种系统产生的应用日志、系统日志、设备日志、数据库日志等数据。这部分数据是企业数据的核心。DB数据主要是所有IT系统的数据库信息,包括运维管理系统本身的数据库。数据库包括三种类型:生产数据库、测试数据库和开发数据库。知识库主要存储日常开发、测试、运维管理中发生的事件和问题,以及一些经典问题的解决方案和常用的解决方案,主要作为运维管理的辅助功能。数据的维护和管理很重要,尤其是日志数据。对于运维来说,通过日志可以更准确、更全面地了解系统或设备的运行状态,回溯问题原因,还原问题的全过程。.也可以通过日志,如系统安全日志,提前预测系统可能出现的问题或故障。如果存在网络威胁,会反映在系统安全日志中。下面简单介绍一下运维收集的日志数据的部分和用途。系统日志系统日志主要是指操作系统的日志,主要是/var/log下的各种日志信息。包含系统操作日志、系统安全日志、计划任务日志等。系统日志是运维管理安全模块中进行审计的重要依据。一般默认的操作系统日志不能满足要求,需要修改系统参数,比如在history命令中加入timestamp和IP,长期保留history。并且日志文件经过处理,不允许用户清除命令,只能追加。应用日志应用日志主要记录应用服务的健康状态和业务操作的具体日志。应用监控的运行状态反映了应用服务的健康状态。如果应用的CPU或内存使用率过高或波动较大,结合业务运行日志分析应用日志即可得出结论。业务操作日志可以为业务审计提供主要依据。有些系统喜欢将业务操作日志写入数据库,这也是需要注意的。但无论在哪里,需求都是不可或缺的,它为以后的业务审计和问题审核提供了依据。数据库日志数据库日志主要反馈数据库的运行状态。通过监控和管理数据库日志,可以及时了解数据库的运行情况,及时解决问题。可以将数据库日志和数据库系统内置的数据库结合起来,比如Oracle的以v$开头的系统视图,MySQL的performance_schema等。也可以作为数据库日志的一部分进行管理和监控,以便我们及时了解数据库的监控状态,从而预防可能出现的问题。设备日志设备日志一般是一个容易被忽略的地方,但是设备日志往往可以反映出设备的运行情况。交换机故障、防火墙故障等设备故障可能会导致大规模的系统和服务故障。因此,必须对设备日志进行收集、分析和监控,以进行预警。常用的设备日志包括交换机日志、防火墙日志和网络安全设备日志。日志如此之多,运维需要通过各种手段完成日志收集、过滤分析、可视化展示。那么如何实现这些功能,方法有很多种。例如ELK集成套件(Elasticsearch、Logstash、Kibana)可以轻松实现日志数据。实时采集、分析传输、图形显示。Elasticsearch是一个开源的分布式搜索引擎,提供收集、分析和存储数据三大功能。其特点是:分布式、零配置、自动发现、索引自动分片、索引复制机制、restful风格接口、多数据源、自动搜索负载等。Logstash主要是一个收集、分析、过滤日志的工具,支持大量的数据获取方法。一般的工作方式是c/s架构,客户端安装在需要收集日志的主机上,服务器端负责对接收到的各个节点的日志进行过滤和修改,并发送给Elasticsearch。Kibana也是一个开源和免费的工具。Kibana可以为Logstash和ElasticSearch提供友好的日志分析Web界面,可以帮助汇总、分析和搜索重要的数据日志。另外,Filebeat可以替代Logstash作为日志收集工具,Filebeat属于Beats。Beats目前包括四个工具:Packetbeat(收集网络流量数据)Topbeat(收集系统、进程和文件系统级别的CPU和内存使用数据)Filebeat(收集文件数据)Winlogbeat(收集Windows事件日志数据)可见,Beats涵盖所有收集日志数据的方面。那么如何使用ELK呢?根据日志量的不同,对应的ELK架构也不同。见以下几种常见的架构:这种架构主要是在各个节点上部署Logstash,收集相关的日志和数据,经过分析、过滤后发送到远程服务器上的Elasticsearch进行存储。Elasticsearch再将数据以分片的形式进行压缩存储,并提供各种API供用户查询和操作。用户可以通过KibanaWeb直观查询日志,并根据需求生成数据报表。这种架构的优点是构建简单,使用方便。缺点是Logstash非常消耗系统资源,运行时会占用大量的CPU和内存资源。另外,由于没有消息队列缓存,可能存在数据丢失的风险。建议初学者或数据量较小的环境使用此模式。由此衍生出第二种架构:这种架构的主要特点是引入了消息队列机制。位于每个节点上的LogstashAgent(一级Logstash,主要用于传输数据)首先将数据传输到消息队列(常见的有Kafka,Redis等),然后,LogstashServer(二级Logstash,主要用于拉取消息队列数据,过滤分析数据)会将格式化后的数据传给Elasticsearch进行存储。日志和数据由Kibana呈现给用户。由于引入了Kafka(或Redis)缓存机制,即使远程LogstashServer因故障停止运行,数据也不会丢失,因为数据已经存储。这种架构适用于集群较大、数据量一般的应用环境。但是由于二级Logstash需要对大量数据进行分析处理,而Elasticsearch也需要对大量数据进行存储和索引,所以它们的负载会比较重。解决办法是将它们配置成集群模式,分担负载。这种架构的好处是引入了消息队列机制,平衡了网络传输,从而减少了网络拥塞,尤其是数据丢失的可能性。但是仍然存在Logstash占用系统资源过多的问题。在海量数据的应用场景中,可能会出现性能瓶颈。还有第三种架构:这种架构是在上面第二种架构的基础上改进而来的。主要是将前端收集数据的LogstashAgent替换为Filebeat,消息队列使用Kafka集群,然后将Logstash和Elasticsearch两者集成。该架构采用集群模式构建,适用于大规模集群和海量数据的业务场景。通过将前端的LogstashAgent替换为Filebeat,有效降低了业务系统对日志采集的资源消耗。同时,消息队列采用Kafka集群架构,有效保证采集数据的安全性和稳定性,后端Logstash和Elasticsearch均采用集群模式构建,提高了效率、扩展性和吞吐量。整个ELK系统。用大数据思维做运维监控大数据分析最早起源于运维人员的日志分析,逐渐发展到各种业务的分析。人们发现这些数据蕴含着非常大的价值。通过实时监测和跟踪研究对象在互联网上产生的海量行为数据,进行挖掘和分析,揭示规律,提出研究结论和对策。这就是大数据的用途。同样,通过大数据分析,我们可以得到各种指标,比如:在业务层面,比如团购业务每秒访问次数,团购优惠券每秒查看次数,每分钟支付,ordercreation等在应用层面,每个应用的错误次数,调用流程,访问平均耗时,95行等在系统资源层面:如CPU,内存,Swap,磁盘,Load,主进程存活率等在网络层面:比如丢包、ping存活率、流量、TCP连接数等这些指标,恰好是运维特别需要的东西。通过大数据分析这些指标,可以解决以下问题:系统健康监测,找到故障根源系统瓶颈诊断和调优,跟踪安全相关问题那么如何用大数据思维来做运维,其中之一bigdataarchitectures的思路是:提供一个运维平台来方便的解决这些问题,而不是让大数据平台来解决出现的问题。一个基本的大数据运维架构如下:对于运维监控,使用大数据思维,需要分三步走:获取需要的数据,过滤掉异常数据,设置告警阈值,通过第三方监控平台。系统最可靠的是日志输出。系统是否正常,发生了什么?我们以前出错的时候会查看日志,或者写个脚本定时分析。现在这些东西都可以集成到一个现有的平台中,我们要做的就是定义分析日志的逻辑。好了,这就是今天要给大家介绍的2019核心运维技巧,抓住机会,开始新的学习吧!2019,你的新开始!!!
