Istio是一个服务网格

栏目: 后端 · 发布时间: 6年前

内容简介:微服务并不像过去那样新鲜和热,这绝对是一件好事。因为我们已经发展到基于Kubernetes,Openshift和其他各种集装箱管理系统的稳定可靠的领先地步,而不是生活在前沿集装箱平台的时代。现在,基于这些容器编排提供了很多核心功能,如负载平衡,服务发现和安全性,这就是在基础架构上创建所谓的服务网格。服务网格使分布式系统的核心功能(如服务之间的通信)更易于配置和管理。所有应用程序所需的通用网络功能集(例如处理超时,重试,速率限制,路由和负载平衡)都可以集中处理,因此每个应用程序无需单独处理这些难题。

微服务并不像过去那样新鲜和热,这绝对是一件好事。因为我们已经发展到基于Kubernetes,Openshift和其他各种集装箱管理系统的稳定可靠的领先地步,而不是生活在前沿集装箱平台的时代。现在,基于这些容器编排提供了很多核心功能,如负载平衡,服务发现和安全性,这就是在基础架构上创建所谓的服务网格。

Istio 就是这样的一个服务网络产品,它是仅次于谷歌Kubernetes的开源贡献。将Istio称为热门话题是轻描淡写的。

Istio是控制面板,Envoy是数据面板

服务网格使分布式系统的核心功能(如服务之间的通信)更易于配置和管理。所有应用程序所需的通用网络功能集(例如处理超时,重试,速率限制,路由和负载平衡)都可以集中处理,因此每个应用程序无需单独处理这些难题。

Istio是一个服务网格

这有助于保持业务逻辑分离,因此开发人员可以专注于使用户满意,而不必担心堆栈的较低层。Istio通过Envoy提供这套解决方案,数据面板处理服务网格中的所有流量,以及构成管理策略和配置的控制面板的少数应用程序,即:

  • Pilot  - 流量管制 俗称飞行员
  • Mixer  - 后端集成
  • Citadel - 身份验证和授权
  • Galley  - 配置验证

Envoy微服务代理

Envoy是一个代理,类似于HAProxy和Nginx,但专为微服务架构而设计。具有以下功能:

  • 动态重新配置/热重启
  • 分阶段/金丝雀部署
  • 高级负载平衡
  • 请求路由
  • 健康检查
  • 分布式跟踪

Istio是一个服务网格

Envoy管理内部和外部服务通信的所有路由要求,外部服务连接受益于故障恢复功能,例如超时,重试和断路器。Envoy被部署为应用程序pod中的sidecar容器,并通过gRPC从Istio控制面板接收其所有配置。

进出应用程序的数据包被Envoy使用iptables拦截,这允许强大的路由控制和流量可见性,提供详细的指标。Envoy旨在简化高度分布式,面向服务架构中的网络和可观察性的困难。高性能和低延迟是任何有价值的代理的基本特征,因此使用C ++编写Envoy是完全合理的。

通过Pilot和Mixer进行流量控制和遥测

Mixer和Pilot是利用Istio服务网格最重要特征所不可或缺的,即:流量管理和遥测处理。

Pilot

Envoy侧面车从Pilot接收策略以执行规则,例如允许服务A与服务B通话,但不允许服务A与服务C通话.Pilot提供请求路由和负载平衡的配置设置,以支持分阶段发布,蓝/绿部署和A / B测试。

Istio是一个服务网格

由Pilot管理的路由规则允许Envoy根据分配给每个版本的HTTP标头和权重等条件选择指定的APP版本。

Istio是一个服务网格

来自底层集群基础设施比如k8s的服务注册表通过Pilot 发送到 Envoy 边车共享给整个服务网格,用于动态服务发现。也就是说,Istio不负责服务注册,服务注册到K8s中,这样避免了服务注册的单点风险。

Istio是一个服务网格

Mixer

Mixer有一组支持的适配器,它与Prometheus和Stackdriver等基础设施后端对话,以处理和存储指标,跟踪和记录。Envoy将遥测数据发送到Mixer,然后Mixer将这些值发送到配置的后端。

总结

在没有像Istio这样的服务网格的情况下管理分阶段部署和应用程序版本并非易事。Envoy和Istio控制面板组件通过编码请求路由配置,并将该控制权交给开发人员来支持组织的DevOps计划。

Istio网格的另一个重要特性是您无需安装或使用所有组件。我们建议利用Istio的跟踪功能来可视化流量在您的服务和网络之间流动的方式。这是开始使用Istio的完美方式,因为它可以快速轻松地进行配置,并且无需更改您的微服务即可开始受益于此遥测。

#服务网格#Istio Devops 分布式系统 无服务器架构


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

R语言实战(第2版)

R语言实战(第2版)

[美] Robert I. Kabacoff / 王小宁、刘撷芯、黄俊文等 / 人民邮电出版社 / 2016-5 / 99.00元

本书注重实用性,是一本全面而细致的R指南,高度概括了该软件和它的强大功能,展示了使用的统计示例,且对于难以用传统方法处理的凌乱、不完整和非正态的数据给出了优雅的处理方法。作者不仅仅探讨统计分析,还阐述了大量探索和展示数据的图形功能。新版做了大量更新和修正,新增了近200页内容,介绍数据挖掘、预测性分析和高级编程。一起来看看 《R语言实战(第2版)》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

随机密码生成器
随机密码生成器

多种字符组合密码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换