运维前线:一线运维专家的运维方法、技巧与实践1.6 运维自动化系统的实现

简介:

1.6 运维自动化系统的实现


挑战自动化的极致场景(可视化),是运维人员对极致的追求。极致的自动化是运维事务全流程的自动化,运维事务全流程自动化是包含了一次应用完整交付所涉及的所有资源的自动化能力,比如说DNS资源、负载均衡资源、数据库资源、服务器资源、配置资源等。下面将列举几个典型的运维自动化系统以供大家参考。

1.6.1 DNS管理系统

DNS是Web形态下的一个重要入口,用户服务的访问严格依赖于这个服务入口。现在一般被称为GSLB(全局服务负载均衡调度),目前是CDN服务中的重要服务节点。实现的目标都是要解决运维从哪里来,到哪里去最快,当目标机房发生故障的时候,如何把服务调度走。

在移动APP大量应用的今天,DNS协议的缺点已经逐渐暴露出来了,DNS解析时间长,另外还经常会被劫持。因为有端的控制,现在逐渐开始走HTTPDNS的服务,通过HTTP服务的方式获取域名对应的IP地址,此时由DNS平台直接对外提供HTTP服务。在有端App的情况下,还可以借助端的数据挖掘技术,识别非权威DNS域名是否存在被劫持的情况。系统需要保持和业务的与时俱进。

这里还需要注意一个问题,内部DNS能否统一管理?理论上是可以的,把单个机房当作单个的view,不过我不建议将两个场景耦合在一起,尽管这样能够实现统一管理。

系统Demo如图1-7所示。

 

图1-7 DNS管理系统

1.6.2 CMDB管理系统

CMDB管理系统的建设这里就不展开介绍了,感兴趣的读者可以关注微信公众号“互联网运维杂谈”,并参阅《运维平台之CMDB系统建设》一文。

系统Demo如图1-8所示。

1.6.3 名字服务中心系统

“名字服务中心系统”的概念最初来自于Zookeeper,该系统结合实际情况,实现了名字服务中心。把程序接口之间的调用抽象成单个服务之间的调用,在服务中心实现调度的统一注册、鉴权、ACL、容灾容错控制。将其看作线上服务最核心的系统,一点也不为过,并且它还是收益最大的系统,可直接替换掉DNS、LVS,降低线上系统对运维系统的依赖性。

系统Demo如图1-9所示。

 

图1-8 CMDB管理系统

 

图1-9 名字服务中心系统

1.6.4 持续部署管理系统

持续部署是应用升级的核心系统,该系统每个月都承担着大量的变更。在系统规划之初,我们就给它设定了清晰的业务管理目标:持续交付的一部分,实现图1-10中的4个维度管理目标;也设定了具体业务的运维目标:升级所有的包和配置,且让业务运维彻底退出业务的变更流程。具体如图1-10所示。

系统Demo如图1-11所示。

持续部署系统是持续交付系统的核心(持续集成、持续测试、持续部署、持续反馈),它是产品发布到达生产环境的关键步骤。在这个平台的建设上,运维人员应该将它作为突破的第一个点。在该平台搭建完成之后,运维就可以从日常的部署事务中解放出来了。

 

图1-10 持续部署管理系统示意图

 

图1-11 发布系统

1.6.5 运维调度管理系统

运维调度平台又称为调度编排系统,编排是一种场景化的运维能力封装,是对复杂运维事务的封装。我们在平时的运维过程中能够看到很多复杂的运维场景,比如说容灾切换、故障处理、服务迁移等。这些场景,很多时候都不是单一的动作就能够完成的,往往需要借助多种运维能力组合,如图1-12所示。

在图1-12中,我们把Ops自动化调度下面的服务支撑层分解为三部分:工具平台OpsStore,用来编写日常的运维工具;外部服务,用于公共API对外提供封装;Ops发布,用于提供代码持续部署服务。

一个完整的自动化调度平台应具备能够对接一切服务的能力,例如通过配置管理来初始化内核、通过OpenStack来初始化资源、通过DNS来获取全局调度服务、通过存储来获取存储的服务,甚至还可以通过公有云API来获取外部公有云的资源服务能力,如图1-13所示。

 

图1-13 自动化调度平台示意图

还有数据库运维管理平台、分布式Cache管理系统等也都有相应的实现,由于篇幅所限,这里就不贴图介绍了。

相关文章
|
9月前
|
数据采集 运维 数据可视化
AR 运维系统与 MES、EMA、IoT 系统的融合架构与实践
AR运维系统融合IoT、EMA、MES数据,构建“感知-分析-决策-执行”闭环。通过AR终端实现设备数据可视化,实时呈现温度、工单等信息,提升运维效率与生产可靠性。(238字)
|
10月前
|
存储 运维 安全
运维知识沉淀工具深度解析:从结构设计到落地实践全拆解
运维知识沉淀工具助力团队将零散经验结构化存储,实现问题处理路径标准化、知识复用化。通过标签、模板与自动化调取机制,让每次处理都留下可复用资产,提升团队协同效率与系统稳定性。
|
8月前
|
人工智能 运维 监控
运维安全还能靠“人盯人”?别闹了,聊聊自动化处理的真功夫
运维安全还能靠“人盯人”?别闹了,聊聊自动化处理的真功夫
296 17
|
10月前
|
人工智能 运维 安全
运维老哥的救星?AI 驱动的自动化配置管理新趋势
运维老哥的救星?AI 驱动的自动化配置管理新趋势
444 11
|
9月前
|
机器学习/深度学习 人工智能 运维
三重Reward驱动的运维智能体进化:多智能体、上下文工程与强化学习的融合实践
这篇文章系统性地阐述了 AI 原生时代下,面向技术风险领域的智能体系统(DeRisk)的架构设计、核心理念、关键技术演进路径与实践落地案例。
三重Reward驱动的运维智能体进化:多智能体、上下文工程与强化学习的融合实践
|
11月前
|
运维 Prometheus 监控
系统崩了怪运维?别闹了,你该问问有没有自动化!
系统崩了怪运维?别闹了,你该问问有没有自动化!
306 9
|
11月前
|
机器学习/深度学习 运维 监控
智能运维Agent:自动化运维的新范式
在数字化转型浪潮中,智能运维Agent正重塑运维模式。它融合人工智能与自动化技术,实现从被动响应到主动预防的转变。本文详解其四大核心功能:系统监控、故障诊断、容量规划与安全响应,探讨如何构建高效、可靠的自动化运维体系,助力企业实现7×24小时无人值守运维,推动运维效率与智能化水平全面提升。
2470 0
|
11月前
|
运维 监控 应用服务中间件
运维打铁: Ruby 脚本在运维自动化中的应用探索
Ruby 是一种简洁、动态类型的编程语言,适合运维自动化任务。本文介绍了其在服务器配置管理、定时任务执行和日志分析处理中的应用,并提供了代码示例,展示了 Ruby 在运维自动化中的实际价值。
520 2
|
8月前
|
数据采集 运维 监控
爬虫与自动化技术深度解析:从数据采集到智能运维的完整实战指南
本文系统解析爬虫与自动化核心技术,涵盖HTTP请求、数据解析、分布式架构及反爬策略,结合Scrapy、Selenium等框架实战,助力构建高效、稳定、合规的数据采集系统。
1245 62
爬虫与自动化技术深度解析:从数据采集到智能运维的完整实战指南