DevilKing's blog

冷灯看剑,剑上几分功名?炉香无需计苍生,纵一穿烟逝,万丈云埋,孤阳还照古陵

0%

Service Mesh

原文链接

nginx mesh

service mesh 就是将一些公用的部分,抽象出来,作为control plane部分

Service Mesh可以定义为在微服务体系结构中处理服务间通信的基础结构层,它减少了与微服务体系结构相关的复杂性,并提供了许多治理功能,如 -

  • 负载均衡(Load Balancing)
  • 服务发现(Service Discovery)
  • 健康检查(Health Check)
  • 身份验证(Authentication)
  • 流量管理和路由(Traffic Management & Routing)
  • 断路和故障转移(Circuit Breaking and Failover Policy)
  • 安全(Security)
  • 监控(Metrics & Telemetry)
  • 故障注入(Fault Injection)

Sofa Mesh

sidecar的场景,

应用容器与日志同步工具在同一个Pod下,共享存储卷,应用程序生成的日志文件会由日志同步工具收集并发送到类似kafka,elasticsearch这样服务中。

在这样的架构下我们获得了什么呢?

  • 以容器作为基础打包单元,那么就可以分给不同的团队进行开发测试
  • Sidecar容器可重用,可以与不同的容器结合
  • 以容器作为错误边界,使服务能够独立开发和测试,比如应用服务在没有日志保存功能的情况下也可以独立运行
  • 独立回滚与更新(但需要考虑复杂的版本组合,建议使用语义版本管理对版本进行控制)

CSE Mesher架构

设计商业service mesh