Istio基础知识

一、什么是Istio

Istio 提供⼀种简单的⽅式来为已部署的服务建⽴⽹络,该⽹络具有 负载均衡、服务间认证、监控等功能,只需要对服务的代码进⾏⼀点或不需要做任何改动。想要让服务⽀持 Istio,只需要在您的环境中部署⼀个特殊的 sidecar 代 理,使⽤ Istio 控制平⾯功能配置和管理代理,拦截微服务之间的所有⽹络通信:

HTTP、gRPC、WebSocket 和 TCP 流量的⾃动负载均衡。
通过丰富的路由规则、重试、故障转移和故障注⼊,可以对流量⾏为进⾏细粒度控制。
可插⼊的策略层和配置 API,⽀持访问控制、速率限制和配额。
对出⼊集群⼊⼝和出⼝中所有流量的⾃动度量指标、⽇志记录和追踪。
通过强⼤的基于身份的验证和授权,在集群中实现安全的服务间通信。

Istio 旨在实现可扩展性,满⾜各种部署需求 。

二、什么是service mesh

在从单体应⽤程序向分布式微服务架构的转型过程中,开发⼈员和运维⼈员⾯临诸多挑战,使⽤ Istio 可以解决这些问题。
服务⽹格(Service Mesh) 这个术语通常⽤于描述构成这些应⽤程序的微服务⽹络以及应⽤之间的交互。随着规模和复杂性的增⻓,服务⽹格越来越难以理解和管理。它的需求包括服务发现、负载均衡、故障恢复、指标收集和监控以及通常更加复杂的运维需求,例如 A/B 测试、⾦丝雀发布、限流、访问控制和端到端认证等。

Istio 提供了⼀个完整的解决⽅案,通过为整个服务⽹格提供⾏为洞察和操作控制来满⾜微服务应⽤程序的多样化需求。

三、架构原理

四、其他概念

4个配置资源

这4个配置资源,落地所有流量管控需求

VirtualService: 实现服务请求路由规则的动能

DestinationRule: 实现⽬标服务的负载均衡、服务发现、故障处理和故障注⼊的功能

Gateway: 让服务⽹格内的服务,可以被全世界看到

ServiceEntry: 让服务⽹格内的服务,

功能列表

以下是从官⽹各项示例中整理出来的Istio所⽀持的功能列表

相关推荐
§ꦿCFོ༉8 小时前
嵌入式八股文—C语言入门学习(四)
c语言·开发语言·学习
2603_9696948510 小时前
【JavaWeb学习记录】MyBatis核心知识点与实战笔记:从入门到动态SQL
笔记·sql·学习·mysql·mybatis·javaweb·学习方法
可乐ea10 小时前
智能体记忆该拆成几层:笔记、记忆表示与注入上下文
服务器·数据库·笔记·ai智能体·提示词工程·上下文工程·记忆系统
阿里云云原生11 小时前
阿里云智能体白皮书开源进展
云原生
阿里云云原生12 小时前
万联智策基于 AgentCore 构建数字员工团队,800+智能体规模化落地
云原生
Go Work13 小时前
两个等值条件摆着,MySQL 偏要全表扫
经验分享·笔记
Oll Correct14 小时前
Adobe illustrator 案例十四:花元素标志草图绘制
笔记·ui·adobe·illustrator
分布式存储与RustFS14 小时前
群晖 NAS 被 C3RB3R 锁了:本地备份一起被加密,RustFS 对象锁为什么删不掉
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
北京云帆互联科技15 小时前
云帆培训考试系统更新说明:v9.3.0
java·学习
sxlishaobin17 小时前
Maven Setting详解
java·学习·maven