服务网格入门:概念、需求与价值
1. 什么是服务网格
服务网格通过在不断变化的条件和拓扑结构下,强制网络实现预期行为,为网络连接的工作负载提供基于策略的网络服务。这些变化的条件包括负载、配置、资源(包括影响集群内和集群间资源的基础设施和应用拓扑的资源进出情况)以及正在部署的工作负载。
1.1 基础概念
服务网格是一个可寻址的基础设施层,可用于管理现有单体(或其他类型)工作负载的现代化,以及应对微服务的扩散。虽然在单体环境中也有益处,但微服务和容器运动(即设计可扩展、独立交付服务的云原生方法)促使了服务网格的迅速兴起。微服务将原本的内部应用通信扩展为通过网络传输的服务间远程过程调用(RPC)网络。微服务的诸多好处之一是,它使独立服务团队能够在语言和技术选择上实现民主化,这些团队可以通过迭代和持续交付软件(通常作为服务)快速创建新功能。
从核心来看,服务网格提供了一个以开发者为驱动、以服务为先的网络。它主要关注消除应用开发者在代码中构建网络相关问题(如弹性)的需求,并且使运维人员能够通过策略声明性地定义网络行为、节点身份和流量流向。这看似与软件定义网络(SDN)类似,但服务网格的显著不同在于它强调以开发者为中心的方法,而非以网络管理员为中心。目前,大多数服务网格完全基于软件(尽管可能会出现基于硬件的实现)。鉴于服务网格提供的声明性基于策略的控制,将其比作云原生SDN是合理的。
服务网格使用服务代理构建。数据平面的服务代理负责承载流量,通过在Pod命名空间中使用iptable规则透明地拦截流量。这种统一的基础设施层与服务部署相结合,通常被称为服务网格。Istio通过在所有网络路径中系统地注入代理,使每个代理相互感知并进行集中控制,从而将分散的
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



