Istio的组件升级可以分为三个方面:Istio自定义资源CRD的升级、控制平面组件的升级,以及数据平面Sidecar代理的升级。
升级过程可能涉及新的二进制文件以及配置和API schemas等其他更改。注意,升级过程可能导致一些服务宕机。为了最大限度地减少宕机时间,请使用多副本以保证Istio控制平面组件和应用程序具有高可用性。
此外,1.0之前的版本,原则上不支持升级。Istio v1alpha3路由API具有更多的功能,但不向后兼容,旧的模型升级需要一次手动转换。Istio 1.0以后将不再支持RouteRule、DesintationPolicy和EgressRule这些以前的配置资源。
Kubernetes用户可以继续使用Ingress配置边缘负载均衡器来实现基本的路由。但是,高级路由功能(例如,跨两个版本的流量分割)则需要使用Gateway(Istio推荐的Ingress替代品)。
Istio 1.0之后的路由配置相比于0.8有以下变化:
·RouteRule->VirtualService
·DestinationPolicy->DestinationRule
·EgressRule->ServiceEntry
·Ingress->Gateway
apiVersion也变更为:
apiVersion:conf ig.istio.io/v1alpha2->apiVersion:networking.istio.io/v1alpha3
以下执行是在假设Istio组件在istio-system namespace中安装和升级的,如果不是的话,请针对命名空间做相应的替换。