Istio_01_Istio初识

文章目录

  • Istio
    • [Service Mesh](#Service Mesh)

Istio

Istio: 以服务网格形态用于服务治理的开放平台和基础设施

  1. 本质: 以非侵入式治理服务之间的访问和调用
  2. 服务治理: 流量管理、可观测性、安全性
  3. 可同时管理多类基础设施(多种网络方案)

如: Istio和Kubernetes架构的结合

  1. Istio通过Kubernetes的域名访问机制实现服务发现
  2. Istio的所有组件都可以容器形态部署在Kubernetes集群中
  3. Istio管理Kubernetes时, 将SVC的定义转换为Istio的服务模型
  4. Istio的所有规则和策略配置均以Kubernetes的CRD实现(Kubernetes存储配置)

Istio对Kubernetes限制:

  1. Pod必须有app(用途)和version(版本)两个Label
  2. 服务不能在同一个端口上使用不同的协议
  3. 端口命名格式: protocol<-suffix>
    • Protocol可为: tcp、http、http2、https、grpc、tls等
    • 未命名或未按规范命名, 则Istio会进行协议探测(探测失败就TCP处理)

(PS: 以下介绍均默认以Kubernetes架构为基础做分析)

Service Mesh

服务网格 (Service Mesh): 管理、连接和调解分布式服务之间通信的架构

  1. 由于访问链路上多引入跳转, 所以代理务必轻量和高性能以降低时延影响
  2. 服务网格代理本身也需消耗额外的资源(用于执行治理动作)

服务网格的特点:

  1. 云原生: 适用于云原生场景
  2. 基础设施: 处理服务间通信的基础设施
  3. 网络代理: 轻量级网络代理执行治理逻辑
  4. 应用透明: 服务感知不到代理的存在(原方式工作)

服务网络不同形态之间对比:

形态 业务逻辑侵入 业务代码侵入 业务进程侵入
治理逻辑和业务代码耦合 Y Y Y
治理逻辑和业务代码解耦 N N Y
治理逻辑和业务进程解耦 N N N
相关推荐
阿里云云原生2 小时前
RUM 链路打通实战:打破移动端可观测性黑洞
阿里云·云原生·rum
久绊A2 小时前
K8s集群异常Pod高效排查命令(kube-system核心场景)
云原生·容器·kubernetes
小二·3 小时前
Go 语言系统编程与云原生开发实战(第3篇):企业级 RESTful API 开发 —— 中间件、验证、文档与权限控制
云原生·golang·restful
虫小宝3 小时前
从单体到微服务:淘客返利系统的演进路径与拆分边界划分原则
微服务·云原生·架构
ProgrammerPulse4 小时前
K8s 运维告别 “猜谜游戏”:青云云易捷v6.0对接 K8sGPT,AI 赋能一键解锁智能诊断
云原生
星图易码5 小时前
星图云开发者平台功能详解 | 微服务管理器:异构服务零门槛无缝集成
微服务·云原生·架构
小二·5 小时前
Go 语言系统编程与云原生开发实战(第4篇):数据持久化深度实战 —— PostgreSQL、GORM 与 Repository 模式
postgresql·云原生·golang
麦兜*5 小时前
深入解析云原生时代的高性能消息中间件:基于Apache Pulsar与Kafka架构对比的万亿级数据吞吐与低延迟实时处理实战
云原生·kafka·apache
KubeSphere 云原生5 小时前
在 KubeSphere 上运行 Moltbot(Clawdbot):自托管 AI 助手的云原生实践
docker·云原生·容器
Clarence Liu7 小时前
k8s 1.35 使用kubeadm部署高可用集群
云原生·容器·kubernetes