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
相关推荐
江畔柳前堤6 小时前
GO01-Go 语言与主流编程语言深度对比
开发语言·人工智能·后端·微服务·云原生·golang·go
探索云原生11 小时前
终于搞懂 Kueue:5 个核心对象一次讲透
linux·docker·ai·云原生·kubernetes
月落星还在13 小时前
Spring MVC 与 Spring Boot:从“手动挡”到“自动驾驶”的进化论,兼谈前后端分离的哲学
spring boot·spring·云原生·mvc
Database_Cool_15 小时前
数据库性能不够用,升级到什么方案好?阿里云 PolarDB(云原生数据库领导者,兼容 MySQL/PostgreSQL/Oracle)平滑升级与百倍弹性
数据库·阿里云·云原生
霸道流氓气质15 小时前
微服务架构核心概念业务示例
微服务·云原生·架构
ai_coder_ai17 小时前
编写自动化脚本,在自己后端服务中使用云原生Baas服务进行数据库相关操作
数据库·云原生·自动化
AOwhisky17 小时前
Python 学习笔记(第六期)——函数:定义、参数传递与作用域
笔记·python·学习·云原生·运维开发·函数·参数传递
小小龙学IT17 小时前
Tigris:下一代无服务器数据库
数据库·云原生·serverless
ai_coder_ai19 小时前
论模型驱动分析方法及应用
微服务·云原生·架构
Hiyajo pray20 小时前
云原生场景下:sdn 访问控制优化方案
云原生