使用 tridentctl 进行升级
您可以使用轻松升级现有的Astra Trident安装 tridentctl。
使用升级Astra三端到功能 tridentctl
卸载并重新安装 Astra Trident 可作为升级。卸载 Trident 时,不会删除 Astra Trident 部署所使用的永久性卷声明( PVC )和永久性卷( PV )。在 Astra Trident 脱机期间,已配置的 PV 仍可用,而 Astra Trident 将在恢复联机后为在此期间创建的任何 PVC 配置卷。
请查看 "选择升级方法" 升级之前 tridentctl。
-
在中运行卸载命令
tridentctl删除与Asta Trandent关联的所有资源(CRD和相关对象除外)。./tridentctl uninstall -n <namespace>
-
重新安装Asta Trdent。请参见 "使用 tridentctl 安装 Astra Trident"。
|
|
请勿中断升级过程。确保安装程序运行完毕。 |
使用升级卷 tridentctl
升级后、您可以利用较新的三元数据版本中提供的一组丰富功能(例如按需卷快照)、也可以使用升级卷 tridentctl upgrade 命令:
如果存在原有卷、则应将其从NFS或iSCSI类型升级到CSI类型、以使用Asta三元数据中的一整套新功能。Trident 配置的原有 PV 支持传统功能集。
在决定将卷升级到CSI类型之前、请考虑以下事项:
-
您可能不需要升级所有卷。以前创建的卷将继续可访问并正常运行。
-
升级时, PV 可以作为部署 / 状态集的一部分挂载。不需要关闭部署 / 状态集。
-
升级时,您 * 无法 * 将 PV 连接到独立 POD 。在升级卷之前,您应关闭 POD 。
-
您只能升级绑定到 PVC 的卷。升级前,应删除和导入未绑定到 PVC 的卷。
-
运行
kubectl get pv列出PV。kubectl get pv NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE default-pvc-1-a8475 1073741824 RWO Delete Bound default/pvc-1 standard 19h default-pvc-2-a8486 1073741824 RWO Delete Bound default/pvc-2 standard 19h default-pvc-3-a849e 1073741824 RWO Delete Bound default/pvc-3 standard 19h default-pvc-4-a84de 1073741824 RWO Delete Bound default/pvc-4 standard 19h trident 2Gi RWO Retain Bound trident/trident 19h
目前、Trident 20.07使用创建了四个PV
netapp.io/trident配置程序。 -
运行
kubectl describe pv以获取PV的详细信息。kubectl describe pv default-pvc-2-a8486 Name: default-pvc-2-a8486 Labels: <none> Annotations: pv.kubernetes.io/provisioned-by: netapp.io/trident volume.beta.kubernetes.io/storage-class: standard Finalizers: [kubernetes.io/pv-protection] StorageClass: standard Status: Bound Claim: default/pvc-2 Reclaim Policy: Delete Access Modes: RWO VolumeMode: Filesystem Capacity: 1073741824 Node Affinity: <none> Message: Source: Type: NFS (an NFS mount that lasts the lifetime of a pod) Server: 10.xx.xx.xx Path: /trid_1907_alpha_default_pvc_2_a8486 ReadOnly: falsePV是使用创建的
netapp.io/trident配置程序和类型为NFS。要支持 Astra Trident 提供的所有新功能,应将此 PV 升级到 CSI 类型。 -
运行
tridentctl upgrade volume <name-of-trident-volume>用于将原有Astra Trident卷升级到CSI规范的命令。./tridentctl get volumes -n trident +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+ | NAME | SIZE | STORAGE CLASS | PROTOCOL | BACKEND UUID | STATE | MANAGED | +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+ | default-pvc-2-a8486 | 1.0 GiB | standard | file | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | true | | default-pvc-3-a849e | 1.0 GiB | standard | file | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | true | | default-pvc-1-a8475 | 1.0 GiB | standard | file | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | true | | default-pvc-4-a84de | 1.0 GiB | standard | file | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | true | +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+ ./tridentctl upgrade volume default-pvc-2-a8486 -n trident +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+ | NAME | SIZE | STORAGE CLASS | PROTOCOL | BACKEND UUID | STATE | MANAGED | +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+ | default-pvc-2-a8486 | 1.0 GiB | standard | file | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | true | +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+
-
运行
kubectl describe pv验证此卷是否为CSI卷。kubectl describe pv default-pvc-2-a8486 Name: default-pvc-2-a8486 Labels: <none> Annotations: pv.kubernetes.io/provisioned-by: csi.trident.netapp.io volume.beta.kubernetes.io/storage-class: standard Finalizers: [kubernetes.io/pv-protection] StorageClass: standard Status: Bound Claim: default/pvc-2 Reclaim Policy: Delete Access Modes: RWO VolumeMode: Filesystem Capacity: 1073741824 Node Affinity: <none> Message: Source: Type: CSI (a Container Storage Interface (CSI) volume source) Driver: csi.trident.netapp.io VolumeHandle: default-pvc-2-a8486 ReadOnly: false VolumeAttributes: backendUUID=c5a6f6a4-b052-423b-80d4-8fb491a14a22 internalName=trid_1907_alpha_default_pvc_2_a8486 name=default-pvc-2-a8486 protocol=file Events: <none>