容器扩展的艺术:监控

F5生态系统 | 2018年1月25日

要实现容器扩展,不能只是在服务前面加个代理就万事大吉。扩展也不只是分发。在快速发展的容器领域,要确保可扩展性,需要具备五项不同的能力:重试、熔断器、服务发现、分发和监控。

在这篇探讨容器扩展之道的文章中,我们将深入了解监控。

监控

监控。在这个万物似乎都在监听和监视的时代,从我们的车速到冰箱里有什么,一切都在被关注,因此很多人对“监控”一词心存反感。我们可以,而且经常会改用“可见性”一词,但这种文字游戏并不能改变我们实际在做的事:密切监视。

与扩展相关的一切都依赖于监控,也就是掌握承载请求分发的各项资源的状态。如果资源已崩溃或刚刚关闭,却仍将请求发送到这样的“盲区”,就如同驶入一条无路可出的死胡同,只会浪费时间。

监控有多种形式。网络层的ping监控检查“能否访问”;TCP连接监控检查“是否在线”;HTTP请求监控检查“是否响应”;还有一种“是否已准备就绪”的监控,用于确定服务能否正确响应。

除了检查服务的运行状况和执行情况外,还需要监控性能。如果根据响应时间分配请求,服务的响应速度至关重要。性能突然变化可能表明存在问题,因此还需要监控这些具有历史意义的数据。

监控方式包括主动监控(让我发送一个真实请求!)、合成监控(让我发送一个模拟请求)和被动监控(我就坐在这里,看看真实请求会发生什么)。每种方式各有优缺点,都是有效的监控方法。关键在于,代理能够判断状态:服务是否正常运行?是否已停止运行?还是已经和猫王一起离开了大楼?

可达性、可用性和性能都是监控的不同方面,也是确保可扩展性的必要条件。这意味着,重点不只是监控,还要确保负载均衡代理掌握可能接收其所转发请求的每项资源的最新状态信息。

考虑到容器的特性,以及容器通常与基于微服务的架构搭配使用,不难发现,监控很快就会变得极其复杂。这是因为,在容器环境中,常见的负载均衡模式是使用正向代理(和边车代理)。这两种代理都要求每个节点了解其可能需要向其发送请求的每项资源的运行状况。这意味着几乎需要监控所有资源。

正向代理健康状态

不难想象,如果某个资源需要耗费自身有限的资源,向15至20个正向代理响应其状态,效率并不高。在这种模式下,监控会对性能和容量产生显著的负面影响,进一步增加扩展难度。

监控对扩展能力的影响从未像在容器环境中这样显著。

但正如上文所述,监控至关重要,因为我们希望尽可能避免在“死胡同”资源上浪费时间。

必要监控所面临的挑战,是服务网格作为容器环境未来扩展模式持续获得认可并得到广泛采用的原因之一。

因为监控必不可少,但也不应成为负担。

分享
标签: 2018

关于作者

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博客,了解本地部署的敏捷性如何化解安全与速度难以兼顾的问题。