云原生要素介绍之抽象端点

云原生要素介绍之抽象端点

译文
作者:李睿 2021-11-15 08:00:00

云计算

云原生 分布式计算最基本的概念之一是端点。可以通过输入和输出来了解每一个软件片段——对象、微服务、应用程序,而这些都被称之为交互端点。

[[434881]]

【51CTO.com快译】分布式计算最基本的概念之一是端点。可以通过输入和输出来了解每一个软件片段——对象、微服务、应用程序,而这些都被称之为交互端点。

在分布式计算的历史上,端点有多种形式:套接字、IP地址、接口、Web服务和入口等。无论它们的性质如何,其他软件必须能够找到合适的端点,连接或绑定它们,并与它们交互。

端点也代表攻击面中的漏洞,因此保护它们也是至关重要的。在最基本的情况下,端点是物理分布式计算架构的一部分。但是,如果只是处理物理端点,就几乎没有灵活性,因此,如果可编程性有限,并且它们的可用性受到严重限制。由于这些原因,很多企业多年来就采用了许多抽象端点的方法,如今在构建云原生基础设施时延续了这一趋势。

然而,在新的云原生计算模式中,抽象的端点具有新的含义。

抽象端点层

事实上,抽象端点既平凡又普通。DNS服务器抽象IP地址,其分配可以根据需要重新分配域名。负载均衡器可以将请求定向到不同的服务或应用程序端点,而请求者并不知道。

表述性状态传递(REST)的核心是使用URL来抽象端点和它们支持的操作。底层基础设施可能会利用Web服务器、负载平衡器或API网关(或某些组合)来解析URL,并将流量定向到适当的物理端点。

REST场景强调了抽象端点的一个重要原则:通常情况下,一条消息可能会遍历几种不同的技术,每个技术都将不同的抽象端点层添加到组合中。虽然这些层增加了架构的复杂性,但为端点消费者增加灵活性和简单性的好处通常会超过这种复杂性的成本。

云原生计算中的抽象端点

云原生计算需要其他形式的分布式计算不需要的额外抽象端点。

这种额外复杂性的原因是Kubernetes本身目标的基础:在容器、Pod和集群级别提供快速而无限的水平可扩展性。

服务网格使用代理在特定微服务实例之间路由“东西向”流量,即使请求的微服务通常也不知道在特定时间点有多少实例可用或它们的IP地址是什么。

换句话说,服务网格在入口点提供抽象端点,这对于使用在Kubernetes上运行的微服务至关重要。

当请求者位于相关微服务域之外时,同样的原则适用于“南北向”流量。在这些情况下,API网关处理抽象端点。

实现这些抽象端点的底层技术是不同的:东西向流量的Sidecar和代理以及南北向流量策略驱动的安全API网关。

云原生零信任

为抽象端点提供足够和适当的安全性给基础设施和安全团队带来了新的挑战。考虑到Kubernetes部署的动态特性及其对混合IT场景的支持,零信任方法将所有端点视为不可信,除非证明是可信的。

只有一个问题:“传统的”零信任方法无法胜任这项任务。这种零信任的原始方法将端点与人类用户相关联,因此传统的身份和访问管理技术仅适用于管理与端点关联的人类身份。

相比之下,在云原生世界中,端点可能是微服务、API、智能手机、物联网传感器或任何数量的其他类型的技术。因此,不再可能利用人类身份来访问大多数抽象端点。云原生零信任需要不同的方法。

连接与集成

云原生计算中的抽象端点使任何其他端点(消费者/请求者、消息源或接收者等)能够在给定基础设施的场景中找到并绑定到该端点。该基础设施可能包括Kubernetes、服务目录或其他支持技术。

这种能力称之为端点连接。事实上,“连接性”这个术语本身就代表一种抽象,利用现有的端点抽象使这些端点能够根据定义抽象的策略相互交互。

然而,连接性并不等同于集成。集成端点当然需要连接性,但也需要在端点之间移动消息的机制。在Kubernetes之前的世界中,集成技术还提供了各种“智能”功能,包括数据转换、安全性、流程逻辑执行等。

依赖于这种集成中间件来完成这项繁重工作的架构就是所谓的“智能管道、哑端点”架构。企业不仅在大部分工作中利用集成技术,而且除了遵守各自的契约(例如,Web服务的WSDL契约或RESTful端点的互联网媒体类型)之外,不必依赖端点来完成更多的工作。

面向服务架构(SOA)时代最重要的教训之一是智能管道方法过于集中,因此不是特别适合云计算。随着分布式计算架构转向云计算,现在转向云原生,人们将繁重的工作从中间件移出,转而依赖轻量级排队技术和其他开源集成方法。

如果管道以这种方式从智能变为非智能,那么端点只会从非智能变为智能。在某种程度上,只要所说的智能端点是抽象端点,它们就必须如此。毕竟,物理端点可能仍然是IP地址、API或URL。人们不希望此类协议和技术比以往更智能。

与其相反,人们依赖于抽象的端点基础设施来了解如何处理数据转换、安全性、策略实施,以从企业服务总线(ESB)和其他传统中间件所需的所有其他功能——现在才抽象出Kubernetes的可扩展性和临时性环境。

也可以抽象集成吗?

假设一个端点是物联网传感器,另一个是基于云的API。如果充分抽象了这些端点,那么就为它们提供了连接性。

但是仍然必须物理地将消息从一个传输到另一个——例如,这项任务可能包括5G、专用MPLS链路、某种中间件以及进入选择的云平台。

在理想的云原生世界中,人们将根据既定策略自动处理此类集成的配置、管理和安全性,使人们能够抽象集成以及端点本身,从而能够出于性能或成本原因,在最终用户不知情的情况下,将一项技术转换为另一项技术。

其结果就是基于意图的集成。利益相关者将表达端点之间交互的业务意图(延迟、数据主权、可靠性和其他要求),基础设施将自动、动态地选择最佳路由拓扑和集成技术,以持续地符合该意图。

SD-WAN等技术提供了部分解决方案,但这种基于意图的集成的全部范围仍主要在绘图板上(尽管开源NATS项目正在顺利实现这一愿景)。然而,没有理由进行等待。抽象端点在今天已成为现实,因此了解如何在云原生场景中实现它们对于兑现Kubernetes的承诺至关重要。

请求/回复

这篇文章中使用了请求/回复示例,因为它们比异步交互更易于解释和理解。事情的真相是,异步、实时的流交互更像是云原生计算的规范,而请求/回复模式则是一个特例。

因此,重要的是要指出,抽象端点对于异步流用例也同样重要。事实上,有一类新的“事件网格”技术概括了当今服务网格处理异步流数据流的能力——既适用于东西向流量,也适用于南北向流量。

当然,处理流数据流的策略执行、安全性和可靠性会带来一系列挑战,例如提高抽象端点重要性的标准。

随着边缘计算的成熟和流数据越来越成为企业计算的规范,而抽象集成以及端点对于保持云原生计算所承诺的可扩展性、灵活性和弹性将变得越来越重要。

原文标题:Cloud-Native Essentials: Abstracted Endpoints,作者:Jason Bloomberg

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

 

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/245891.html<

(0)
运维的头像运维
上一篇2025-04-26 09:46
下一篇 2025-04-26 09:47

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注