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
相关推荐
Wang's Blog2 小时前
Nestjs框架: 微服务事件驱动通信与超时处理机制优化基于Event-Based 通信及异常捕获实践
微服务·云原生·架构·nestjs
YXWik62 小时前
新版若依微服务增强swagger增强集成knife4j
微服务·云原生·架构
马达加斯加D2 小时前
k8s --- Intro
云原生·容器·kubernetes
!chen7 小时前
k8s-应用部署和组件及常用命令
云原生·容器·kubernetes
Solar20258 小时前
微服务调用超时:从问题分析到全链路优化实践
微服务·云原生·架构
hkNaruto12 小时前
【k8s】Kubernetes 资源限制设置规范手册 MB与MiB的概念混淆问题
云原生·容器·kubernetes
不爱笑的良田20 小时前
从零开始的云原生之旅(十一):压测实战:验证弹性伸缩效果
云原生·容器·kubernetes·go·压力测试·k6
Wang's Blog1 天前
Nestjs框架: 微服务容器化部署与网络通信解决方案
docker·微服务·云原生·架构·nestjs
Serverless社区1 天前
为什么别人用 DevPod 秒启 DeepSeek-OCR,你还在装环境?
阿里云·云原生·serverless
一枚正在学习的小白1 天前
k8s的包管理工具helm3--流程控制语句和变量(3)
linux·运维·服务器·云原生·kubernetes