4.3. 使用基于修订的更新策略更新 istio-csr 代理
如果您使用基于修订的更新策略部署 Istio 资源,每次更新 control plane 时都必须传递所有修订版本。您必须按照以下顺序执行更新:
-
使用新修订版本更新
istio-csr
部署。 -
更新
Istio.spec.version
参数的值。
RevisionBased control plane 更新示例
在本例中,controlplane
从 v1.23.0
更新至 1.23.1。
运行以下命令,使用新修订版本更新
istio-csr
部署:$ helm upgrade cert-manager-istio-csr jetstack/cert-manager-istio-csr \ --wait \ --reuse-values \ --set "app.istio.revisions={<old_revision>,<new_revision>}"
其中:
old_revision
-
以 <
istio-name>-v<major_version>-<minor_version>-<patch_version> 格式指定
旧的修订版本。例如:default-v1-23-0
。 new_revision
-
Specfies 新修订版本采用 <
istio-name>-v<major_version>-<minor_version>-<patch_version>
格式。例如:default-v1-23-1
。
更新
Istio
对象中的istio.spec.version
,如下例所示:istio.yaml
文件示例apiVersion: sailoperator.io/v1alpha1 kind: Istio metadata: name: default spec: version: <new_revision> 1
- 1
- 更新至以字母 v 为前缀的新修订版本,如
v1.23.1
运行以下命令,从
istio-csr
部署中删除旧修订版本:helm upgrade cert-manager-istio-csr jetstack/cert-manager-istio-csr \ --install \ --namespace cert-manager \ --wait \ --reuse-values \ --set "app.istio.revisions={default-v1-23-1}"