原地升级
istioctl upgrade
命令执行 Istio 的升级。
升级命令还可以执行 Istio 的降级。
查看 istioctl
升级参考,了解 istioctl upgrade
命令提供的全部选项。
升级先决条件
在开始升级过程之前,请检查以下先决条件
已安装的 Istio 版本不低于升级版本的次要版本。例如,在开始升级到 1.7.x 的过程之前,需要 1.6.0 或更高版本。
您的 Istio 安装是 使用 istioctl 安装的。
升级步骤
本节中的命令应使用新版本的 istioctl
运行,该版本位于下载的软件包的 bin/
子目录中。
下载新的 Istio 版本 并更改到新版本目录。
确保您的 Kubernetes 配置指向要升级的集群
$ kubectl config view
确保升级与您的环境兼容。
$ istioctl x precheck ✔ No issues found when checking the cluster. Istio is safe to install or upgrade! To get started, check out https://istio.ac.cn/latest/docs/setup/getting-started/
运行以下命令开始升级
$ istioctl upgrade
如果您使用
--set
标志安装了 Istio,请确保您将相同的--set
标志传递给升级,否则使用--set
完成的自定义项将被还原。在生产环境中,建议使用配置文件而不是--set
。如果您省略了
-f
标志,Istio 将使用默认配置文件进行升级。在执行了几项检查后,
istioctl
将要求您确认是否继续。istioctl
将就地升级 Istio 控制平面和网关到新版本,并指示完成状态。istioctl
完成升级后,您必须手动更新 Istio 数据平面,方法是重新启动所有具有 Istio sidecar 的 pod$ kubectl rollout restart deployment
降级先决条件
在开始降级过程之前,请检查以下先决条件
您的 Istio 安装是 使用 istioctl 安装的。
您打算降级的 Istio 版本不低于已安装的 Istio 版本的次要版本。例如,您可以从 Istio 1.7.x 降级到不低于 1.6.0。
降级必须使用与您打算降级的 Istio 版本相对应的
istioctl
二进制版本。例如,如果您要从 Istio 1.7 降级到 1.6.5,请使用istioctl
版本 1.6.5。
降级到较低 Istio 版本的步骤
您可以使用 istioctl upgrade
将 Istio 降级到较低版本。步骤与上一节中描述的升级过程相同,只是使用与较低版本(例如 1.6.5)相对应的 istioctl
二进制文件。完成后,Istio 将恢复到以前安装的版本。
或者,可以使用 istioctl install
安装旧版本的 Istio 控制平面。