回滚
使用 Rancher 2.6.4+ 进行回滚的其他步骤
Rancher v2.6.4 将 cluster-api 模块从 v0.4.4 升级到 v1.0.2。反过来,cluster-api 的 v1.0.2 版本将集群 API 的自定义资源定义 (CRD) 从 cluster.x-k8s.io/v1alpha4
升级到 cluster.x-k8s.io/v1beta1
。当你尝试将 Rancher v2.6.4 回滚到以前版本的 Rancher v2.6.x 时,CRD 升级到 v1beta1 会导致回滚失败。这是因为使用旧 apiVersion (v1alpha4) 的 CRD 与 v1beta1 不兼容。
要避免回滚失败,你需要在尝试恢复操作或回滚之前运行以下 Rancher 脚本:
-
verify.sh
:检查集群中是否有任何与 Rancher 相关的资源。 -
cleanup.sh
:清理集群。
有关详细信息和源代码,请参阅 rancher/rancher-cleanup repo。
|
回滚到 Rancher 2.5.0+
要回滚到 Rancher 2.5.0+,使用 Rancher 备份应用并通过备份来恢复 Rancher。
回滚后,Rancher 必须以较低/较早的版本启动。
还原是通过创建 Restore 自定义资源实现的。
重要提示:
|
创建 Restore 自定义资源
-
点击 ☰ > 集群管理。
-
找到你的本地集群,并点击 Explore。
-
在左侧导航栏中,点击
。
如果 Rancher Backups 应用不可见,你需要到 Apps 的 Charts 页面中安装应用。详情请参见此处。 |
-
单击创建。
-
使用表单或 YAML 创建 Restore。如需获取使用表单创建 Restore 资源的更多信息,请参见配置参考和示例。
-
如需使用 YAML 编辑器,点击
。然后输入 Restore YAML。以下是 Restore 自定义资源示例:apiVersion: resources.cattle.io/v1 kind: Restore metadata: name: restore-migration spec: backupFilename: backup-b0450532-cee1-4aa1-a881-f5f48a007b1c-2020-09-15T07-27-09Z.tar.gz encryptionConfigSecretName: encryptionconfig storageLocation: s3: credentialSecretName: s3-creds credentialSecretNamespace: default bucketName: rancher-backups folder: rancher region: us-west-2 endpoint: s3.us-west-2.amazonaws.com
-
单击创建。
结果:已创建备份文件并更新到目标存储位置。资源还原顺序如下:
-
自定义资源定义(CRD)
-
集群范围资源
-
命名空间资源
如需查看还原的处理方式,请检查 Operator 的日志。按照如下步骤获取日志:
kubectl get pods -n cattle-resources-system
kubectl logs -n cattle-resources-system -f