关于受管 Istio 附加组件
Istio on IBM Cloud® Kubernetes Service 提供了 Istio 的无缝安装,可对 Istio 控制平面组件进行自动更新和生命周期管理,并可与平台日志记录和监视工具相集成。
只需点击一下,您就可以启动并运行所有 Istio 核心组件。 Istio IBM Cloud Kubernetes Service 上的该服务以托管附加组件的形式提供,因此 会自动将您的所有 组件保持最新状态。IBM Cloud Istio
什么是 Istio?
Istio 这是一个开源的服务网格平台,用于在 Kubernetes 等云平台上连接、保护、控制和监控微服务,详见 IBM Cloud Kubernetes Service。
将单一应用程序转换为分布式微服务体系结构时,会产生一系列新的挑战,例如如何控制微服务的流量,执行服务的灰度上线和金丝雀应用,处理故障,保护服务通信,观察服务以及在服务组中强制实施一致的访问策略。 为了解决这些难题,您可以利用服务网。 服务网提供了一个与语言无关的透明网络,用于连接、观察、保护和控制微服务之间的连接。 通过 Istio,可掌握服务网的情况并对其进行控制,从而可以管理网络流量,在微服务之间进行负载均衡,强制实施访问策略,验证服务身份等。
例如,在微服务网中使用 Istio 可帮助您:
- 更好地了解集群中运行的应用程序。
- 部署应用程序的金丝雀版本,并控制向其发送的流量。
- 对微服务之间传输的数据启用自动加密。
Istio 服务网格由两个主要组件构成:数据平面和控制平面。
- 数据平面
- 数据平面由应用程序,注入到应用程序 pod 中的侧柜,网关以及诸如
ServiceEntries,VirtualServices,Gateways,DestinationRules和EnvoyFilters等数据平面配置资源组成。 您负责配置服务网格,在补丁更新上更新侧柜和定制网关,并在发布更新版本时升级附加组件。 - 控制平面
- 控制平面由
Istiod组成,其中包含 Pilot、Mixer 遥测和策略以及 Citadel 组件。 有关其中每个组件的更多信息,请参阅istio附加组件描述。IBM Cloud 通过提供补丁更新,解决漏洞和协调受管资源来管理控制平面。
什么是 Istio on IBM Cloud Kubernetes Service?
Istio on IBM Cloud Kubernetes Service 作为受管附加组件提供,用于将 Istio 与 Kubernetes 集群直接集成。
在我的集群中,这会是什么样子?
安装 Istio 附加组件时,Istio 控制平面和数据平面会使用集群已连接到的网络接口。 配置流量在集群中的专用网络上流动,并且无需您在防火墙中打开任何其他端口或 IP 地址。 如果使用 Istio 网关公开了 Istio 管理的应用程序,那么对应用程序的外部流量请求会在公用网络接口上流动。
更新过程是怎样的?
受管附加组件形式的 Istio 版本由 IBM Cloud 进行测试,并核准在 IBM Cloud Kubernetes Service 中使用。 此外,Istio 附加组件简化了 Istio 控制平面的维护工作,这样您就可以专注于管理微服务。IBM Cloud 通过自动推出 IBM Cloud Kubernetes Service 所支持的 Istio 的最新版本的补丁更新,使 Istio 的所有组件保持最新。 要将 Istio 组件更新到 IBM Cloud Kubernetes Service 支持的 Istio 的最新次版本,如从 Istio 版本 1.6 更新到 1.7,可按照 更新 Istio 附加组件的次要版本 中的步骤操作。
每当管理的 Istio 附加组件更新时,请确保 更新您的 istioctl 客户端和应用程序的 Istio 侧卡,以匹配 Istio 版本的附加组件。 您可以通过运行 istioctl version 来检查 istioctl 客户端和
Istio 附加控制平面的版本是否匹配。
如果您需要使用 Istio 的最新版本,或者需要自定义您的 Istio 安装,可以按照 《 IBM Cloud 快速入门》教程中的步骤,安装 Istio 的开源版本。 不过,请注意不能在群集中同时运行社区 Istio 和托管 Istio 附加组件。
Istio 附加组件随附了哪些组件?
在 Kubernetes 集群中,您可以安装已正式发布的托管型 Istio 附加组件,该组件运行 Istio 版本 1.29.5。
Istio 附加组件会安装 Istio 的核心组件。 有关以下任何控制平面组件的更多信息,请参阅《 Istio 文档 》。
Envoy作为代理传递网中所有服务的入站和出站流量。 Envoy 在应用程序容器所在的 pod 中部署为侧柜容器。istiod统一了 Pilot,Galley,Citadel 和 sidecar 注射器先前在单个控制平面包中执行的功能。istio-ingressgateway和istio-egressgateway可控制 Istio 管理应用程序的入站流量和出站流量。
限制
查看受管 Istio 附加组件的以下限制。
- 如果在数据平面中创建额外的自定义 Istio 网关,则需要负责管理这些资源。
- 您不能修改在
istio-system命名空间中为您创建的任何 Istio 资源。 如果需要自定义 Istio 安装,可以 编辑managed-istio-customconfigmap 资源 或 修改默认 istio 网关的 value.yaml。 - 受管 Istio 附加组件中不支持以下功能: