service mesh

49 阅读1分钟

背景

传统微服务架构的缺点:基础设施层与业务代码耦合、第三方SDK语言相关性

关键词

Istio、Envoy、iptables、pod、sidecar、微服务通信与治理

解决痛点

1. 服务通信下沉到基础设施层,对微服务屏蔽掉服务通信的复杂度

2. 以一种更加通用和标准的方式提供通信和治理能力,屏蔽不同语言、平台的差异性

3. 服务治理标准化,减少服务治理标准不一致带来的转换成本,提升服务治理效率。

通信、安全、可观测性、流量控制

istio

DestinationRule定义服务子集

VirtualService定义流量分配到不同子集的规则。

http headers匹配请求头,fault delay和abort配置请求延迟和拒绝服务,routers配置路由指向的服务子集。

mirror 流量镜像

k8s

pod: 若干个联系紧密的容器的集合,它们共享网络和文件系统,是k8s调度的最小单位。

services: 是对一组提供相同功能的pod的抽象,借助services,实现服务发现和负载均衡。

node:是pod运行的物理机或者虚拟机。