无服务器架构,让运维自动运行

F5生态系统 | 2017年7月31日

您需要一个用于自动化和编排的平台。无服务器架构或许正是您一直在寻找的解决方案。

无服务器计算(又称函数即服务)仍处于起步阶段。任何刚刚起步的技术通常都需要回答一个问题:“它究竟有什么用?”尤其是在这个几乎每天都有新进展或新技术争相吸引我们注意力的时代,更是如此。

无服务器计算的典型用例主要是利用云的强大能力来处理特定类型的工作负载,例如图像处理或数据挖掘。不过,如今也有一些组织将无服务器计算用于一些不那么“亮眼”的用途,例如实现运维自动化。

事实上,我甚至想说(而且以我的性格,肯定会这么说),无服务器技术或许是当今实现运维自动化的高效方式之一。以下4个理由说明,为什么我建议您认真考虑将无服务器技术用作运维自动化平台。

通用无服务器架构

1. 事件驱动

在事件驱动型系统中,操作会触发相应事件。事件(有时称为“操作”)可通过多种方式触发,但通常会通过命令行(例如“curl”)或简单的Web界面发起REST API调用来触发。这包括预置服务、更新配置或禁用防火墙规则等任务。简而言之,将应用部署到生产环境,以及随后部署其所需的网络和应用服务,会被分解为一系列“操作”。管道中的许多操作会在前一项操作完成后触发,这与OpenWhisk等无服务器环境中的“操作序列”概念非常契合。归根结底,部署编排就是将一个由许多较小的独立自动化任务组成的流程实现自动化。每项任务都可以通过对无服务器环境的一次API调用来表示,并由一个总控API调用启动整个序列。

2. 促进基础设施即代码和复用

模板和脚本符合基础设施即代码的理念,而基于无服务器架构的系统则从本质上满足这一标准。通过将部署工件和构造封装为代码并注入流程,还可进一步促进其复用。这意味着流程将变得可预测、可重复且一致,并可持续衡量和优化。“一项任务,一个函数”的方法可进一步增强可组合性,使流程创建更加灵活,并可根据动态生成的流水线,通过注入不同函数轻松驱动流程。

3. 采用“无服务器”架构

我们都知道,无服务器并不是真的没有服务器。但正是底层硬件(和软件)基础设施对使用者“不可见”这一理念,让无服务器对开发人员颇具吸引力;同样,它也应当能吸引基础设施和网络运维团队。请注意,一旦开始对部署流水线进行自动化和编排,就需要使用软件和系统来管理它。这意味着需要对服务器和软件进行许可、维护、管理、扩展和保护,想必您已经明白其中的工作量。管理面向消费者的应用有多费力,您已经深有体会;不妨想象一下,管理面向运维的应用也是如此。无服务器基础设施建成后,可提供一个一致的平台,让您无需担心底层基础设施,即可在其上构建任意数量的工作流。这意味着,吸引开发人员采用无服务器的种种优势,运维团队同样可以获得。

4. 一切皆可多元化

您可能会想,这到底有什么关系?且听我解释。没有哪个数据中心仅依靠单一基础设施运行。即使只看同一家供应商的产品,组织也会同时使用不同型号和版本的硬件与软件。组织面临的一项挑战,就是管理整个环境中种类繁多的设备和版本。大多数无服务器环境已经支持多种语言和工具集(例如,一个操作可以用Python编写,另一个则可以用node.js编写),也支持“基于镜像”的操作,即可以运行各种内容的容器。当您需要编排一个由多项任务组成的流程,以自动化如此多样的系统时,能够使用最合适(甚至可能是唯一可用)的工具,将为运维带来很大帮助。

与消费者和企业用户持续访问和使用的大多数应用不同,运维任务的执行频率较低,有时还会在几乎毫无预警的情况下执行(尽管我们不愿承认这一点),以应对整体环境中的安全或可用性事件。因此,无服务器这类事件驱动型系统似乎非常适合这种场景。它提供了一个“始终在线”的平台,可执行涵盖整个运维范围的各种任务。前一刻,它可能在执行安全相关任务,例如更新防火墙规则;下一刻,它可能会触发操作,将新的应用服务(例如WAF)注入应用的数据路径,以应对需要立即处置的零日漏洞利用。同一平台可以通过自动化且可扩展的方式,为执行几乎所有必要的运维任务提供机制。

甚至可以通过创建工单,或从Slack等支持ChatOps的系统发出机器人命令来触发事件,并自动从工单或命令中提取所需信息,在调用相应操作完成任务时使用。

无服务器架构主要面向开发人员,但其底层原理和机制使其成为一种颇具吸引力的替代方案,可避免自行构建运维编排系统,或依赖一组松散耦合且会带来集成和运维挑战的系统。

如果您刚刚开始推进运维自动化,不妨深入了解企业级无服务器平台,看看它是否适合您的需求。

分享
标签: 2017

关于作者

Lori Mac Vittie
Lori Mac Vittie杰出工程师兼首席技术布道师 | F5

Lori MacVittie是F5首席技术官办公室的杰出工程师兼首席技术布道师,在应用交付、自动化战略和基础设施领域拥有深厚的专业知识。无论是为AI智能体定义防护机制、剖析脆弱的多云架构,还是探索可扩展系统的极限,她都善于化繁为简。她在应用开发、IT架构以及网络和系统运维领域拥有30多年的行业经验。加入F5之前,她曾担任技术编辑,并因出色表现获得奖项。 MacVittie拥有计算机科学硕士学位,著述颇丰,出版作品涵盖安全、云和企业架构领域。她还热衷于桌面游戏和电子游戏,并且对奶酪有着毫不掩饰的鲜明见解。

Lori Mac Vittie 的更多博客文章

相关博客文章

F5纪念2021年世界艾滋病日
F5生态系统 | 2021/12/01

F5纪念2021年世界艾滋病日

值此世界艾滋病日,F5郑重承诺,将与员工、客户、社区和合作伙伴共同努力,消除社会对HIV感染者仍然存在的污名与偏见。

Thingbot正转变为攻击平台
F5生态系统 | 2018/11/29

Thingbot正转变为攻击平台

Lori MacVittie重点介绍了F5 Labs对2018年1月至6月全球物联网设备攻击的研究,并指出了其中令人警醒的影响。物联网设备不仅持续遭到利用,还被转变为攻击平台,这意味着攻击者可以更充分地利用这个必然增长的市场。

借助F5全新Quick Start,在AWS上快速开展业务
F5生态系统 | 2018/11/20

借助F5全新Quick Start,在AWS上快速开展业务

在AWS re:Invent开幕前,我们很高兴与大家分享F5与AWS之间全新的Quick Start集成。F5的Tom Atkins将介绍该服务如何启动、配置和运行在AWS上部署工作负载所需的计算、网络、存储及其他AWS服务。

为什么声明式模型对NetOps自动化至关重要?
F5生态系统 | 2018/04/30

为什么声明式模型对NetOps自动化至关重要?

为什么声明式模型对NetOps自动化至关重要?阅读F5博客,了解基础设施即代码如何简化网络扩展。

开源聚焦:F5基础设施即代码与多云可管理性
F5生态系统 | 2017/11/16

开源聚焦:F5基础设施即代码与多云可管理性

开源聚焦:基础设施即代码与多云。阅读博客,了解模板和Terraform如何简化F5应用服务的部署。

破解IT“无解困局”的答案:私有云
F5生态系统 | 2016/09/12

破解IT“无解困局”的答案:私有云

破解IT“无解困局”的答案:私有云。阅读F5博客,了解本地部署的敏捷性如何化解安全与速度难以兼顾的问题。