极客视点
极客时间编辑部
极客时间编辑部
113242 人已学习
免费领取
课程目录
已完结/共 3766 讲
2020年09月 (90讲)
时长 05:33
2020年08月 (93讲)
2020年07月 (93讲)
时长 05:51
2020年06月 (90讲)
2020年05月 (93讲)
2020年04月 (90讲)
2020年03月 (92讲)
时长 04:14
2020年02月 (87讲)
2020年01月 (91讲)
时长 00:00
2019年12月 (93讲)
2019年11月 (89讲)
2019年10月 (92讲)
2019年09月 (90讲)
时长 00:00
2019年08月 (91讲)
2019年07月 (92讲)
时长 03:45
2019年06月 (90讲)
2019年05月 (99讲)
2019年04月 (114讲)
2019年03月 (122讲)
2019年02月 (102讲)
2019年01月 (104讲)
2018年12月 (98讲)
2018年11月 (105讲)
时长 01:23
2018年10月 (123讲)
时长 02:06
2018年09月 (119讲)
2018年08月 (123讲)
2018年07月 (124讲)
2018年06月 (119讲)
时长 02:11
2018年05月 (124讲)
时长 03:16
2018年04月 (120讲)
2018年03月 (124讲)
2018年02月 (112讲)
2018年01月 (124讲)
时长 02:30
时长 02:34
2017年12月 (124讲)
时长 03:09
2017年11月 (120讲)
2017年10月 (86讲)
时长 03:18
时长 03:31
时长 04:25
极客视点
15
15
1.0x
00:00/04:35
登录|注册

自动化一切是云时代运维的首要任务

讲述:初明明大小:4.19M时长:04:35
如今,越来越多的企业开始把自己线下的数据中心和机房搬迁上公有云,“云计算是未来”已经成了大多数人的共识。这对运维人员来说,又是一次被迫提升自己的机会。因为在云时代,运维人员将变得更重要,其面临的挑战也与传统运维人员有很大差别。此前,阿里巴巴高级技术专家滕圣波在其文章中对于“云时代运维人员如何面对挑战”作出回答:既然上云势不可挡,何不顺势而为,升级应对呢?
具体如何升级?以下是滕圣波给出的方案。
运维人员可以通过学习 DevOps 实践、熟练掌握各种自动化运维工具,以及积极参与开源和云厂商的生态建设来升级成为 SRE 。
而要想实现云上运维的顺利升级,首要任务就是“自动化一切”,如果列出 Top3,应该是:监控自动化、运维操作代码化、基础设施代码化。

监控自动化

先来看监控,包括了“监”和“控”两个方面。
“监”,从横向划分,包含了事件(Event)、日志(Log)、指标(Metric)、告警(Alarm)四个维度。
对于云服务商来言,事件其实是资源的变化。
日志是客户行为和云服务内部行为的过程记录,包含时间、操作者、内容、级别等要素。
指标是资源运行时的内部属性数据,运维人员需要关心系统的健康指标数据。
告警是指对于严重级别的事件,需要立即采取人工或者自动化动作。运维人员可以根据指标设定阈值来触发一个告警,也可以在事件和日志的基础上设定报警规则,触发告警。
“监”,从纵向划分,可分为底层基础设施的“监”和上层应用的“监”。
底层基础设施的“监”,需要由云服务商来提供基础数据,云厂商的监控往往会提供针对基础设施的事件、日志、指标、告警,运维人员可以很方便的配置和接入。
上层应用的“监”,可选择的产品就很多了,例如阿里云的应用实时监控服务 ARMS 提供了针对上层应用层的事件、日志、指标、告警,用户也可以选择开源的 prometheus 或者 zabbix 来自建。
基础设施和上层应用之间的边界并不是绝对的,真正需要的往往是从下到上的全监控。
“监”的目的,是为了“控”,这里的控,具体指的是对事件和告警的处理。以短信、电话、邮件等方式通知给联系人,是最简单直接的处理方式,但这种方式显然容易被人忽略,而且延时很大。因此,SRE 应该实现自动化的事件处理。

运维操作代码化

如何实现自动化的事件处理呢?程序员可能会自然想到自己写一个 Event Consumer 程序,从云监控拉事件,然后调用资源的 API 进行处理。这个做法看上去很容易,但是对于运维人员来说,具体实现会面临多种不确定的复杂问题,这里不做详细展开。
那么,如何解决这个自动化事件问题呢?两个建议:
选择一个可以快速开发的简洁的运维语言;
选择一个可靠的事件驱动的运维平台,而不是自己从头造轮子。
在运维语言方面,脚本化的语言成为了主流,在遇到复杂的逻辑的时候,可以借助 Python、Shell,而 C、C++ 之类的语言,运维人员用起来就有点沉重了。开源的运维平台,可以选择 Ansible、Puppet、SaltStack 等等。

基础设施代码化

云基础设施包括云服务器、云存储、DNS、CDN 等,而传统的云基础设施管理总是面临着各种各样的难题,例如咨询审批流程长、响应不及时,手工安装和配置速度慢、难以版本化,易出错、遗漏配置项等等。
为了规避这些问题,一个解决方案是“基础设施代码化”,它指的是用代码的方式管理基础设施,并且维护管理它的全生命周期,包括审计的要求。代码成为了审计很好的记录,代码变更也可以追溯到人、项目组,解决了变本、追溯和变更历史的问题。
怎么实现“基础设施代码化”呢?关键是需要一个平台。开源的 Terraform 是个不错的选择,它得到了各个主流云厂商的官方支持,用户可以直接使用。不过,Terraform 要求运维人员自己准备服务器来配置安装,还要自己维护这个平台。另外,云厂商也提供了开箱即用的云服务,例如阿里云提供的资源编排服务(ROS)。
以上就是今天的内容,希望对你有所帮助。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
免费领取
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
大纲
固定大纲
监控自动化
运维操作代码化
基础设施代码化
显示
设置
留言
收藏
83
沉浸
阅读
分享
手机端
快捷键
回顶部