1.1 升级通知
此页面描述了从 Istio 1.0 升级到 1.1 时需要注意的事项。在这里,我们详细介绍了我们向后不兼容性的情况。我们还提到了保留向后兼容性但引入了新行为的情况,这对于熟悉 Istio 1.0 的使用和操作的人来说是令人惊讶的。
有关 Istio 1.1 引入的新功能的概述,请参阅 1.1 发行说明。
安装
- 我们增加了控制平面和 Envoy Sidecar 所需的 CPU 和内存。在更新之前,确保群集有足够的资源。
- Istio 的 CRD 已被放入他们自己的 Helm chart
istio-init
中。这可以防止丢失自定义资源数据,促进升级过程,使 Istio 能够基于 Helm 的安装形式也可以升级。 升级文档 提供了从 Istio 1.0.6 升级到 Istio 1.1 的正确过程。升级时请仔细遵循这些说明。如果需要certmanager
,在使用template
或tiller
安装模式安装istio-init
和 Istio chart 时,请使用--set certmanager=true
标志。 - 用于多集群 VPN 的 1.0
istio-remote
chart 和 多集群水平分割 远程集群安装已合并到 Istio chart 中。要生成等效的istio-remote
chart,请使用--set global.istioRemote=true
标志。 - 插件不再通过单独的负载均衡器暴露。现在可以选择通过 Ingress 网关公开插件。要通过 Ingress Gateway 公开插件,请按照远程访问遥测插件指南进行操作。
- 内置的 Istio Statsd 收集器已被删除。 Istio 使用
--set global.envoyStatsd.enabled=true
标志保留与您自己的 Statsd 收集器集成的功能。 - 用于配置 Kubernetes Ingress 的
ingress
系列选项已被删除。 Kubernetes Ingress 仍然可以使用--set global.k8sIngress.enabled=true
标志启用。查看使用 Cert-Manager 保护 Kubernetes Ingress,了解如何保护您的 Kubernetes 入口资源。
流量管理
- 出站流量策略现在默认为
ALLOW_ANY
。未知端口的流量将按原样转发。到已知端口(例如,端口 80 )的流量将与系统中的一个服务匹配并相应地转发。 - 在对服务的 Sidecar 路由期间,与 Sidecar 相同的命名空间中的目标服务的目标规则将优先,随后是服务命名空间中的目标规则,并且如果适用,最后在其他命名空间中跟随目标规则。
- 我们建议将网关资源存储在与网关工作负载相同的命名空间中(例如,在
istio-ingressgateway
的情况下为istio-system
)。在引用虚拟服务中的网关资源时,请使用命名空间/名称格式,而不是使用name.namespace.svc.cluster.local
。 - 现在,默认情况下禁用可选的出口网关。它在演示配置文件中启用,供用户浏览,但默认情况下禁用所有其他配置文件。如果您需要通过出口网关控制和保护出站流量,则需要在任何非演示配置文件中手动启用
gateways.istio-egressgateway.enabled=true
。
策略与遥测
istio-policy
检查现在默认禁用。它在演示配置文件中启用,供用户浏览但在所有其他配置文件中禁用。这种变化仅适用于istio-policy
而不适用于istio-telemetry
。要重新启用策略检查,请使用--set global.disablePolicyChecks=false
运行helm template
并重新应用配置。- 服务图组件现已弃用,推荐使用 Kiali。