说明:如果您有任何疑问或想咨询其他业务请拨打电话 400 685 0732
全网监测海量数据按需发布监测预警
实时把握舆情动态精准追溯信息源头
在学习计算机的过程当中,我们经常可以碰见自动化运维这一个名词,然而自动化运维具有哪些功能以及开发自动化运维架构需要哪些要素呢?今天我们就一起来了解一下吧。
自动化运维——一个成熟的自动化运维系统具备什么功能?
机房设备数据系统(EMDB)
1.录入机房服务器和网络设备的各种信息,比如机器型号,硬盘大小,OS类型,所属应用,运行状态,机房名称,所在房间,机架,位置等等各种信息,这是一个最基础的数据库,最主要的目的是给每个机器从多个维度统一打上各种标签,方便其他系统的使用。
2.提供各种查询API接口,并做好权限控制。目的是能够被上层的各种系统调用,一般是rest接口,xml接口。然后基于各种语言做相应的封装库。
应用监控系统(Appmonitor)
1.一个统一的数据采集模块,用于采集设备运行信息,包括磁盘IO,网络流量,CPU利用率,网络设备的Session数,PPS。这个采集模块在网络设备上一般可以通过snmp来实现,在服务器上一般通过一个定制化的Agent来实现,这个Agent最基础的能力是采集服务器运行数据,最重要的是能执行各种脚本语言并通过脚本语言实现对服务器的各种操作(如更改配置,分析应用日志并输出结果)。
2.监控数据存储与可视化,数据采集模块采集到各种数据会很多,但对事务性没啥要求,可以用各种NoSQL数据库如Hbase,Cassandra等来实现。
3.监控项添加和报警通知,监控项是一种层次结构,而不是列表结构。上层节点的配置能够被下层节点的配置覆盖掉。对网络设备来说监控项就是一些不同的oid。借助于底层的数据采集模块,对服务器来说监控项基本上就是一个脚本。
4.监控Api接口,并做好权限控制。
开发自动化运维架构六要素
要点已:架构独立
任何架构的产生都是为了满足特定的业务诉求,如果我们在满足业务要求的同时,能够兼顾运维对架构管理的非功能性要求。那么我们有理由认为这样的架构是对运维友好的。
站在运维的角度,所诉求的架构独立包含四个方面:独立部署,独立测试,组件化和技术解耦。
要点二:部署友好
DevOps中有大量的篇幅讲述持续交付的技术实践,希望从端到端打通开发、测试、运维的所有技术环节,以实现快速部署和交付价值的目标。可见,部署是运维日常工作很重要的组成部分,是属于计划内的工作,重复度高,必须提升效率。
实现高效可靠的部署能力,要做好全局规划,以保证部署以及运营阶段的全方位运维掌控。有五个纬度的内容是与部署友好相关的:
要点三:可运维性
运维脑海中最理想的微服务架构,首当其冲的肯定是可运维性强的那类。不具可运维性的应用或架构,对运维团队带来的不仅仅是黑锅,还有对他们职业发展的深深的伤害,因为维护一个没有可运维性的架构,简直就是在浪费运维人员的生命。
要点四:容错容灾
在腾讯技术运营(运维)的四大职责:质量、效率、成本、安全。质量是首要保障的阵地,转换成架构的视角。
要点五:质量监控
保障和提高业务质量是运维努力追逐的目标,而监控能力是我们实现目标的重要技术手段。
要点六:性能成本
在腾讯,所有的技术运营人员都肩负着一个重要的职能,就是要确保业务运营成本的合理。为此,我们必须对应用吞吐性能、业务容量规划和运营成本都要有相应的管理办法。
以上就是自动化运维有哪些功能以及构架又有哪些要素的所有内容,这些都是在学习自动化过程当中最基本的知识点,大家一定要掌握,如果大家还想了解更多与之有关的内容,欢迎关注我们文军营销的官网。
推荐阅读
说明:如果您有任何疑问或想咨询其他业务请拨打电话 400 685 0732