Skip to main content
本产品推出了新版本。
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

新增功能

RSS

发行说明提供了有关最新版本 NetApp Trident 中新功能、增强功能和错误修复的信息。

警告 安装程序 zip 文件中提供的 Linux tridentctl 二进制文件是经过测试并受支持的版本。请注意,zip 文件中 macos 部分提供的 /extras 二进制文件未经测试且不受支持。

25.10 中的新增功能

了解 Trident 和 Trident Protect 中的新增功能,包括增强功能、修复和弃用。

Trident

增强功能

  • Kubernetes

    • 除了 ONTAP-SAN(iSCSI 和 FC)之外,还增加了对用于 ONTAP-NAS NFS 和 ONTAP-SAN-Economy 驱动程序的 v1beta1 Volume Group Snapshot Kubernetes API 的 CSI Volume Group Snapshots 的支持。请参阅"处理卷组快照"

    • 添加了对 ONTAP-NAS 和 ONTAP-NAS-Economy(两个 NAS 驱动程序中的 SMB 除外)以及 ONTAP-SAN 和 ONTAP-SAN-Economy 驱动程序的带强制卷分离的自动工作负载故障转移支持。请参阅 "使用 Trident 自动化有状态应用程序的故障转移"

    • 增强的 Trident 节点并发性,为 FCP 卷的节点操作提供更高的可扩展性。

    • 添加了对 ONTAP NAS 驱动程序的 ONTAP AFX 支持。请参阅 "ONTAP NAS 配置选项和示例"

    • 增加了对通过 TridentOrchestrator CR 和 Helm 图表值配置 Trident 容器的 CPU 和内存资源请求和限制的支持。("问题 #1000", "问题 #927", "问题 #853", "问题 #592", "问题 #110")。

    • 添加了对 ASAr2 个性的 FC 支持。请参阅 "ONTAP SAN 配置选项和示例"

    • 添加了使用 HTTPS 而不是 HTTP 提供 Prometheus 指标的选项。请参阅 "监控 Trident"

    • 在导入卷时添加了一个选项 `--no-rename`以保留原始名称,但让 Trident 管理卷的生命周期。请参阅"导入卷"

    • Trident 部署现在以系统集群关键优先级类运行。

  • 添加了 Trident 控制器通过 helm、operator 和 tridentctl ("问题 #858") 使用主机网络的选项。

  • 为 ANF 驱动程序添加了手动 QoS 支持,使其在 Trident 25.10 中可投入生产;此实验性增强在 Trident 25.06 中引入。

实验性增强功能

备注 不适用于生产环境。
  • [技术预览]:除了 ONTAP-SAN 驱动程序的现有技术预览(统一 ONTAP 9 中的 iSCSI 和 FCP 协议)之外,还添加了对 ONTAP-NAS(仅限 NFS)和 ONTAP-SAN(统一 ONTAP 9 的 NVMe)并发的支持。

修复

  • Kubernetes

    • 通过将 Linux DaemonSet 标准化为 node-driver-registrar 以匹配 Windows DaemonSet 和容器映像命名,修复了 CSI node-driver-registrar 容器名称不一致的问题。

    • 修复了未正确升级旧版 qtree 导出策略的问题。

  • Openshift

    • 修复了由于 SCC 将 allowHostDirVolumePlugin 设置为 false ("问题 #950"),Trident 节点 pod 在 Openshift 中的 Windows 节点上无法启动的问题。

  • 修复了未通过 Helm ("问题 #975") 设置 Kubernetes API QPS 的问题。

  • 修复了无法在同一 Kubernetes 节点上挂载基于 NVMe 的 XFS 文件系统 PVC 快照的持久卷声明 (PVC) 的问题。

  • 通过为每个后端添加唯一/共享子系统名称(例如,netappdvp_subsystem),修复了主机/Docker 在 NDVP 模式下重新启动后的 UUID 更改问题。

  • 修复了 Trident 从 23.10 之前的版本升级到 24.10 及更高版本期间 iSCSI 卷的挂载错误,解决了"invalid SANType"问题。

  • 修复了在未重新启动 Trident 控制器的情况下,Trident 后端状态未转换为在线/离线的问题。

  • 修复了导致 PVC 调整大小缓慢的间歇性竞争条件。

  • 修复了在卷克隆失败时快照未被清理的问题。

  • 修复了内核更改其设备路径时取消暂存卷的故障。

  • 修复了由于 LUKS 设备已关闭而无法取消暂存卷的问题。

  • 修复了存储操作缓慢导致 ContextDeadline 错误的问题。

  • Trident Operator 将等待可配置的 k8s-timeout 来检查 Trident 版本。

Trident Protect

NetApp Trident Protect 提供高级应用程序数据管理功能,增强由 NetApp ONTAP 存储系统和 NetApp Trident CSI 存储配置程序支持的有状态 Kubernetes 应用程序的功能和可用性。

增强功能

  • 添加了用于控制计划和备份 CR 的快照 CR 超时的注释:

    • protect.trident.netapp.io/snapshot-completion-timeout

    • protect.trident.netapp.io/volume-snapshots-ready-to-use-timeout

    • protect.trident.netapp.io/volume-snapshots-created-timeout

  • 向计划 CR 添加了注释以配置 PVC 绑定超时,该超时将由备份 CR 使用: protect.trident.netapp.io/pvc-bind-timeout-sec。请参阅 "支持的备份和计划注释"

  • 通过新字段改进 `tridentctl-protect`备份和快照列表,以指示执行挂钩失败。

25.06.2 中的变化

Trident

修复

  • Kubernetes:修复了从 Kubernetes 节点分离卷时发现不正确 iSCSI 设备的关键问题。

25.06.1 中的变化

Trident

重要说明 对于使用 SolidFire 的客户,请不要升级到 25.06.1,因为在取消发布卷时存在已知问题。25.06.2 将很快发布以解决此问题。

修复

  • Kubernetes

    • 修复了在从子系统取消映射之前未检查 NQN 的问题。

    • 修复了多次尝试关闭 LUKS 设备导致分离卷失败的问题。

    • 修复了设备路径自创建以来发生更改时 iSCSI 卷取消暂存的问题。

    • 阻止跨存储类克隆卷。

  • OpenShift:修复了 OCP 4.19 中 iSCSI 节点准备失败的问题。

  • 增加了使用 SolidFire 后端 ("问题 #1008") 克隆卷时的超时时间。

25.06 的变化

Trident

增强功能

  • Kubernetes

    • 为 ONTAP-SAN iSCSI 驱动程序添加了对带有 v1beta1 Volume Group Snapshot Kubernetes API 的 CSI Volume Group Snapshot 的支持。请参阅"处理卷组快照"

      备注 VolumeGroupSnapshot 是 Kubernetes 中带有 beta API 的 beta 功能。Kubernetes 1.32 是 VolumeGroupSnapshot 所需的最低版本。
    • 除了 iSCSI 之外,还增加了对 NVMe/TCP 的 ONTAP ASA r2 的支持。请参阅 "ONTAP SAN 配置选项和示例"

    • 增加了对 ONTAP-NAS 和 ONTAP-NAS-Economy 卷的安全 SMB 支持。Active Directory 用户和组现在可以与 SMB 卷一起使用,以增强安全性。请参阅 "启用安全 SMB"

    • 增强的 Trident 节点并发性,可在 iSCSI 卷的节点操作上实现更高的可扩展性。

    • 打开 LUKS 卷时添加 --allow-discards,以允许丢弃/TRIM 命令进行空间回收。

    • 增强了格式化 LUKS 加密卷时的性能。

    • 针对失败但部分格式化的 LUKS 设备的增强型 LUKS 清理。

    • 增强了 NVMe 卷连接和分离的 Trident 节点幂等性。

    • 为 ONTAP-SAN-Economy 驱动程序的 Trident 卷配置添加了 `internalID`字段。

    • 添加了对 NVMe 后端使用 SnapMirror 进行卷复制的支持。请参阅 "使用 SnapMirror 复制卷"

实验性增强功能

备注 不适用于生产环境。
  • [Tech Preview] 通过 --enable-concurrency 功能标志启用并发 Trident 控制器操作。这允许控制器操作并行运行,从而提高繁忙或大型环境的性能。

    备注 此功能是实验性的,目前支持使用 ONTAP-SAN 驱动程序(iSCSI 和 FCP 协议)的有限并行工作流。
  • [Tech Preview] 添加了 ANF 驱动程序的手动 QOS 支持。

修复

  • Kubernetes

    • 已修复 CSI NodeExpandVolume 中的一个问题,即当底层 SCSI 磁盘不可用时,多路径设备的大小可能会不一致。

    • 修复了无法清除 ONTAP-NAS 和 ONTAP-NAS-Economy 驱动程序的重复导出策略的问题。

    • 修复了未设置 nfsMountOptions`时 GCNV 卷默认为 NFSv3 的问题;现在支持 NFSv3 和 NFSv4 协议。如果未提供 `nfsMountOptions,将使用主机的默认 NFS 版本(NFSv3 或 NFSv4)。

    • 修复了使用 Kustomize ("问题 #831") 安装 Trident 时的部署问题。

    • 修复了从快照创建的 PVC 丢失的导出策略("问题 #1016")。

    • 修复了 ANF 卷大小未自动对齐为 1 GiB 增量的问题。

    • 修复了将 NFSv3 与 Bottlerocket 配合使用时的问题。

  • 修复了 ONTAP-NAS-Economy 卷在调整大小失败的情况下扩展到 300 TB 的问题。

  • 修复了使用 ONTAP REST API 时克隆拆分操作同步执行的问题。

弃用:

  • Kubernetes:将最低支持的 Kubernetes 更新为 v1.27。

Trident Protect

NetApp Trident Protect 提供高级应用程序数据管理功能,增强由 NetApp ONTAP 存储系统和 NetApp Trident CSI 存储配置程序支持的有状态 Kubernetes 应用程序的功能和可用性。

增强功能

  • 改进了还原时间,提供了更频繁的完整备份选项。

  • 使用 Group-Version-Kind (GVK) 过滤提高了应用程序定义和选择性恢复的粒度。

  • 使用 AppMirrorRelationship (AMR) 与 NetApp SnapMirror 时的高效重新同步和反向复制,以避免完整的 PVC 复制。

  • 添加了使用 EKS Pod Identity 创建 AppVault 存储桶的功能,无需为 EKS 集群的存储桶凭据指定密钥。

  • 如果需要,添加了跳过还原命名空间中的标签和注释的功能。

  • AppMirrorRelationship (AMR) 现在将检查源 PVC 扩展,并根据需要在目标 PVC 上执行适当的扩展。

修复

  • 修复了将先前快照中的快照注释值应用于较新快照的错误。所有快照注释现在都已正确应用。

  • 默认情况下,定义了数据移动器加密(Kopia / Restic)的密钥(如果未定义)。

  • 为 S3 appvault 创建添加了改进的验证和错误消息。

  • AppMirrorRelationship (AMR) 现在仅复制处于 Bound 状态的 PV,以避免尝试失败。

  • 修复了在具有大量备份的 AppVault 上获取 AppVaultContent 时显示错误的问题。

  • KubeVirt VMSnapshots 被排除在还原和故障转移操作之外,以避免故障。

  • 修复了 Kopia 的问题,由于 Kopia 默认保留计划覆盖了用户在计划中设置的内容,因此提前删除了快照。

25.02.1 中的变更

Trident

修复

  • Kubernetes

    • 修复了 trident-operator 中使用非默认映像注册表时错误填充 sidecar 映像名称和版本的问题("问题 #983")。

    • 修复了在 ONTAP 故障转移回馈期间多路径会话无法恢复的问题("问题 #961")。

25.02 的变化

从 Trident 25.02 开始,What's New 摘要提供了有关 Trident 和 Trident Protect 版本的增强、修复和弃用的详细信息。

Trident

增强功能

  • Kubernetes

    • 增加了对 iSCSI 的 ONTAP ASA r2 支持。

    • 添加了对非优雅节点关闭场景期间 ONTAP-NAS 卷的强制分离的支持。新的 ONTAP-NAS 卷现在将利用由 Trident 管理的每卷导出策略。为现有卷提供升级路径,以便在取消发布时过渡到新的导出策略模型,而不会影响活动工作负载。

    • 已添加 cloneFromSnapshot 标注。

    • 添加了对跨命名空间卷克隆的支持。

    • 增强的 iSCSI 自我修复扫描修正,可按确切的主机、通道、目标和 LUN ID 启动重新扫描。

    • 增加了对 Kubernetes 1.32 的支持。

  • OpenShift

    • 增加了对 ROSA 集群上 RHCOS 的自动 iSCSI 节点准备的支持。

    • 增加了对 ONTAP 驱动程序 OpenShift 虚拟化的支持。

  • 在 ONTAP-SAN 驱动程序上添加了光纤通道支持。

  • 添加了 NVMe LUKS 支持。

  • 已切换到所有基础镜像的 scratch 镜像。

  • 添加了 iSCSI 连接状态发现和日志记录,用于 iSCSI 会话应登录但未登录的情况("问题 #961")。

  • 使用 google-cloud-netapp-volumes 驱动程序添加了对 SMB 卷的支持。

  • 添加了允许 ONTAP 卷在删除时跳过恢复队列的支持。

  • 添加了使用 SHA 而不是 tag 覆盖默认镜像的支持。

  • 向 tridentctl 安装程序添加了 image-pull-secrets 标志。

修复

  • Kubernetes

    • 修复了自动导出策略中缺少的节点 IP 地址("问题 #965")。

    • 修复了 ONTAP-NAS-Economy 的自动导出策略过早切换到每个卷策略的问题。

    • 修复了后端配置凭据,以支持所有可用的 AWS ARN 分区("问题 #913")。

    • 在 Trident 运算符中添加了禁用自动配置器对账的选项("问题 #924")。

    • 为 csi-resizer 容器添加了 securityContext ("问题 #976")。

Trident Protect

NetApp Trident Protect 提供高级应用程序数据管理功能,增强由 NetApp ONTAP 存储系统和 NetApp Trident CSI 存储配置程序支持的有状态 Kubernetes 应用程序的功能和可用性。

增强功能

  • 为 KubeVirt / OpenShift Virtualization VM 添加了备份和还原支持,支持 volumeMode: File 和 volumeMode: Block(原始设备)存储。此支持与所有 Trident 驱动程序兼容,并增强了使用 NetApp SnapMirror 和 Trident Protect 复制存储时的现有保护功能。

  • 添加了为 Kubevirt 环境在应用程序级别控制冻结行为的功能。

  • 添加了对配置 AutoSupport 代理连接的支持。

  • 添加了为数据移动器加密(Kopia / Restic)定义密钥的功能。

  • 添加了手动运行执行挂钩的功能。

  • 添加了在 Trident Protect 安装期间配置安全上下文约束 (SCC) 的功能。

  • 添加了对在 Trident Protect 安装期间配置 nodeSelector 的支持。

  • 添加了对 AppVault 对象的 HTTP / HTTPS 出口代理的支持。

  • 扩展 ResourceFilter 以启用排除集群范围内的资源。

  • 在 S3 AppVault 凭据中添加了对 AWS 会话令牌的支持。

  • 增加了对快照前执行挂钩后资源收集的支持。

修复

  • 改进了临时卷的管理以跳过 ONTAP 卷恢复队列。

  • SCC 注释现已还原为原始值。

  • 通过支持并行操作提高还原效率。

  • 增强了对大型应用程序执行挂钩超时的支持。

24.10.1 中的变更

增强功能

  • Kubernetes:增加了对 Kubernetes 1.32 的支持。

  • 添加了 iSCSI 连接状态发现和日志记录,用于 iSCSI 会话应登录但未登录的情况("问题 #961")。

修复

  • 修复了自动导出策略中缺少的节点 IP 地址("问题 #965")。

  • 修复了 ONTAP-NAS-Economy 的自动导出策略过早切换到每个卷策略的问题。

  • 更新了 Trident 和 Trident-ASUP 依赖项,以解决 CVE-2024-45337 和 CVE-2024-45310。

  • 删除了 iSCSI 自我修复期间间歇性不健康的非 CHAP 门户的注销("问题 #961")。

24.10 中的变化

增强功能

  • Google Cloud NetApp Volumes 驱动程序现已正式可用于 NFS 卷,并支持区域感知配置。

  • GCP Workload Identity 将用作使用 GKE 的 Google Cloud NetApp Volumes 的云标识。

  • 向 ONTAP-SAN 和 ONTAP-SAN-Economy 驱动程序添加了 `formatOptions`配置参数,以允许用户指定 LUN 格式选项。

  • 将 Azure NetApp Files 最小卷大小减少到 50 GiB。Azure 新的最小尺寸预计将于 11 月正式推出。

  • 添加了 denyNewVolumePools 配置参数,以将 ONTAP-NAS-Economy 和 ONTAP-SAN-Economy 驱动程序限制为预先存在的 FlexVol 池。

  • 添加了对所有 ONTAP 驱动程序中从 SVM 添加、删除或重命名聚合的检测。

  • 为 LUKS LUN 增加了 18 MiB 的开销,以确保报告的 PVC 尺寸可用。

  • 改进了 ONTAP-SAN 和 ONTAP-SAN-Economy 节点阶段和取消阶段错误处理,以允许取消阶段在阶段失败后删除设备。

  • 添加了一个自定义角色生成器,允许客户在 ONTAP 中为 Trident 创建最小化角色。

  • 添加了用于故障排除的额外日志记录 lsscsi"问题 #792")。

Kubernetes

  • 为 Kubernetes 原生工作流添加了新的 Trident 功能:

  • 向安装程序添加了一个新标志 --k8s-api-qps,以设置 Trident 与 Kubernetes API 服务器通信时使用的 QPS 值。

  • 为安装程序添加了 `--node-prep`标记,用于自动管理 Kubernetes 集群节点上的存储协议依赖关系。与 Amazon Linux 2023 iSCSI 存储协议的兼容性经过测试和验证

  • 添加了对非优雅节点关闭场景期间 ONTAP-NAS-Economy 卷的强制分离的支持。

  • 使用 autoExportPolicy 后端选项时,新的 ONTAP-NAS-Economy NFS 卷将使用每 qtree 导出策略。Qtree 仅在发布时映射到节点限制导出策略,以提高访问控制和安全性。当 Trident 从所有节点取消发布卷时,现有的 qtree 将切换到新的导出策略模型,而不会影响活动的工作负载。

  • 增加了对 Kubernetes 1.31 的支持。

实验性增强功能

  • 为 ONTAP-SAN 驱动程序上的光纤通道支持添加了技术预览。

修复

  • Kubernetes

    • 修复了阻止 Trident Helm 安装的 Rancher 准入 webhook("问题 #839")。

    • 修复了 helm chart values ("问题 #898") 中的 Affinity 键。

    • 已修复 tridentControllerPluginNodeSelector/tridentNodePluginNodeSelector 无法使用 "true" 值 ("问题 #899")。

    • 已删除在克隆期间创建的短暂快照 ("问题 #901")。

  • 添加了对 Windows Server 2019 的支持。

  • 修复了 Trident repo ("问题 #767") 中的 go mod tidy 问题。

弃用

  • Kubernetes:

    • 将最低支持的 Kubernetes 更新为 1.25。

    • 已删除对 POD Security Policy 的支持。

产品品牌重塑

从 24.10 版本开始,Astra Trident 更名为 Trident (Netapp Trident)。此次品牌重塑不会影响 Trident 的任何功能、支持的平台或互操作性。

24.06 的变化

增强功能

  • 重要提示limitVolumeSize 参数现在限制了 ONTAP 经济驱动程序中的 qtree/LUN 大小。使用新的 limitVolumePoolSize 参数来控制这些驱动程序中的 FlexVol 大小。("问题 #341")。

  • 添加了 iSCSI 自我修复功能,以便在使用已弃用的 igroup 时根据确切的 LUN ID 启动 SCSI 扫描("问题 #883")。

  • 添加了对卷克隆和调整大小操作的支持,即使在后端处于挂起模式时也允许。

  • 添加了将 Trident 控制器的用户配置日志设置传播到 Trident 节点 Pod 的功能。

  • 在 Trident 中添加了对 ONTAP 版本 9.15.1 及更高版本默认使用 REST 而不是 ONTAPI (ZAPI) 的支持。

  • 为新的永久卷在 ONTAP 存储后端上添加了对自定义卷名和元数据的支持。

  • 增强了 azure-netapp-files (ANF) 驱动程序,以便在 NFS 挂载选项设置为使用 NFS 版本 4.x 时,默认情况下自动启用快照目录。

  • 已添加对 NFS 卷的 Bottlerocket 支持。

  • 添加了对 Google Cloud NetApp Volumes 的技术预览支持。

Kubernetes

  • 增加了对 Kubernetes 1.30 的支持。

  • 添加了 Trident DaemonSet 在启动时清理僵尸挂载和残留跟踪文件的功能("问题 #883")。

  • 添加了 PVC 注释 `trident.netapp.io/luksEncryption`用于动态导入 LUKS 卷("问题 #849")。

  • 为 ANF 驱动程序添加了拓扑感知。

  • 添加了对 Windows Server 2022 节点的支持。

修复

  • 修复了由于事务过时而导致 Trident 安装失败的问题。

  • 修复了 tridentctl 忽略来自 Kubernetes ("问题 #892") 的警告消息。

  • 将 Trident 控制器 SecurityContextConstraint`优先级更改为 `0"问题 #887")。

  • ONTAP 驱动程序现在接受低于 20 MiB 的卷大小("问题[#885")。

  • 修复了 Trident 以防止 ONTAP-SAN 驱动程序在调整大小操作期间缩小 FlexVol 卷。

  • 已修复 NFS v4.1 的 ANF 卷导入失败。

24.02 的变化

增强功能

  • 添加了对 Cloud Identity 的支持。

    • 带有 ANF 的 AKS - Azure Workload Identity 将用作云标识。

    • 具有 FSxN 的 EKS - AWS IAM 角色将用作云身份。

  • 添加了从 EKS 控制台将 Trident 作为附加组件安装在 EKS 集群上的支持。

  • 添加了配置和禁用 iSCSI 自我修复的功能("问题 #864")。

  • 向 ONTAP 驱动程序添加了 Amazon FSx 个性,以启用与 AWS IAM 和 SecretsManager 的集成,并启用 Trident 删除带有备份的 FSx 卷("问题 #453")。

Kubernetes

  • 增加了对 Kubernetes 1.29 的支持。

修复

  • 修复了未启用 ACP 时的 ACP 警告消息("问题 #866")。

  • 当克隆与快照关联时,在为 ONTAP 驱动程序删除快照期间执行克隆拆分之前添加了 10 秒的延迟。

弃用

  • 从多平台图像清单中删除了 in-toto 证明框架。

23.10 中的变更

修复

  • 如果新请求的大小小于 ontap-nas 和 ontap-nas-flexgroup 存储驱动程序的总卷大小,则修复卷扩展("问题 #834")。

  • 修复了卷大小显示,在导入 ontap-nas 和 ontap-nas-flexgroup 存储驱动程序时仅显示卷的可用大小("问题 #722")。

  • 修复了 ONTAP-NAS-Economy 的 FlexVol 名称转换。

  • 修复了节点重新启动时 Windows 节点上的 Trident 初始化问题。

增强功能

Kubernetes

增加了对 Kubernetes 1.28 的支持。

Trident

  • 添加了对将 Azure Managed Identities (AMI) 与 azure-netapp-files 存储驱动程序一起使用的支持。

  • 为 ONTAP-SAN 驱动程序添加了对 NVMe over TCP 的支持。

  • 添加了在后端由 user ("问题 #558") 设置为挂起状态时暂停配置卷的功能。

23.07.1 中的变化

Kubernetes: 修复了 daemonset 删除问题,以支持零停机升级("问题 #740")。

23.07 的变化

修复

Kubernetes

  • 修复了 Trident 升级,以忽略停留在终止状态("问题 #740")的旧 pod。

  • 向"transient-trident-version-pod"定义("问题 #795")添加了容忍。

Trident

  • 修复了 ONTAPI (ZAPI) 请求,以确保在获取 LUN 属性时查询 LUN 序列号,从而在 Node Staging 操作期间识别并修复虚拟 iSCSI 设备。

  • 修复了存储驱动程序代码中的错误处理 ("问题 #816")。

  • 修复了在 use-rest=true 的情况下使用 ONTAP 驱动程序时调整配额的问题。

  • 修复了在 ontap-san-economy 中创建 LUN 克隆的问题。

  • 将发布信息字段从 rawDevicePath 恢复到 devicePath;添加逻辑以填充和恢复(在某些情况下) devicePath 字段。

增强功能

Kubernetes

  • 添加了对导入预配置快照的支持。

  • 最小化部署和 daemonset linux 权限("问题 #817")。

Trident

  • 不再报告"在线"卷和快照的状态字段。

  • 如果 ONTAP 后端处于离线状态,则更新后端状态("问题 #801""#543")。

  • 在 ControllerVolumePublish 工作流程中始终检索和发布 LUN 序列号。

  • 添加了额外的逻辑来验证 iSCSI 多路径设备序列号和大小。

  • 对 iSCSI 卷的额外验证,以确保正确的多路径设备未暂存。

实验增强

为 ONTAP-SAN 驱动程序添加了对 NVMe over TCP 的技术预览支持。

文档

对组织和格式进行了许多改进。

弃用

Kubernetes

  • 已删除对 v1beta1 快照的支持。

  • 已删除对 pre-CSI 卷和存储类的支持。

  • 将支持的最小 Kubernetes 更新为 1.22。

23.04 的变化

重要说明 只有启用了非优雅节点关闭功能门的 Kubernetes 版本才支持 ONTAP-SAN-* 卷的强制卷分离。安装时必须使用 --enable-force-detach Trident 安装程序标志启用强制分离。

修复

  • 修复了 Trident Operator 在规范中指定时使用 IPv6 localhost 进行安装的问题。

  • 修复了 Trident Operator 集群角色权限与捆绑包权限("问题 #799")同步的问题。

  • 修复了在 RWX 模式下在多个节点上附加原始块卷的问题。

  • 修复了 SMB 卷的 FlexGroup 克隆支持和卷导入。

  • 修复了 Trident 控制器无法立即关闭的问题("问题 #811")。

  • 添加了修复,以列出与使用 ontap-san-* 驱动程序配置的指定 LUN 关联的所有 igroup 名称。

  • 添加了一个修复,以允许外部进程运行到完成。

  • 修复了 s390 架构("问题 #537")的编译错误。

  • 修复了卷挂载操作期间不正确的日志记录级别("问题 #781")。

  • 已修复潜在类型断言错误 ("问题 #802")。

增强功能

  • Kubernetes:

    • 增加了对 Kubernetes 1.27 的支持。

    • 添加了对导入 LUKS 卷的支持。

    • 添加了对 ReadWriteOncePod PVC 访问模式的支持。

    • 在非优雅节点关闭场景中,增加了对 ONTAP-SAN-* 卷的强制分离支持。

    • 所有 ONTAP-SAN-* 卷现在将使用每个节点 igroup。LUN 将仅映射到 igroup,同时主动发布到这些节点以改善我们的安全态势。当 Trident 确定在不影响活动工作负载的情况下这样做是安全的时,现有卷将被机会性地切换到新的 igroup 方案("问题 #758")。

    • 通过从 ONTAP-SAN-* 后端清理未使用的 Trident 管理的 igroup,提高了 Trident 安全性。

  • 在 ontap-nas-economy 和 ontap-nas-flexgroup 存储驱动程序中添加了对使用 Amazon FSx 的 SMB 卷的支持。

  • 通过 ontap-nas、ontap-nas-economy 和 ontap-nas-flexgroup 存储驱动程序添加了对 SMB 共享的支持。

  • 添加了对 arm64 节点("问题 #732")的支持。

  • 通过首先停用 API 服务器来改进 Trident 关闭程序("问题 #811")。

  • 向 Makefile 添加了对 Windows 和 arm64 主机的跨平台构建支持;请参阅 BUILD.md。

弃用

Kubernetes: 配置 ontap-san 和 ontap-san-economy 驱动程序("问题 #758")时,将不再创建后端范围的 igroup。

23.01.1 中的变化

修复

  • 修复了 Trident Operator 在规范中指定时使用 IPv6 localhost 进行安装的问题。

  • 修复了 Trident Operator 集群角色权限与捆绑包权限同步的问题"问题 #799"

  • 添加了一个修复,以允许外部进程运行到完成。

  • 修复了在 RWX 模式下在多个节点上附加原始块卷的问题。

  • 修复了 SMB 卷的 FlexGroup 克隆支持和卷导入。

23.01 的变化

重要说明 Trident 现在支持 Kubernetes 1.27。请在升级 Kubernetes 之前升级 Trident。

修复

  • Kubernetes:添加了排除 Pod Security Policy 创建的选项,以通过 Helm ("问题 #783,#794") 修复 Trident 安装。

增强功能

Kubernetes
  • 增加了对 Kubernetes 1.26 的支持。

  • 提高了 Trident RBAC 资源的整体利用率("问题 #757")。

  • 添加了检测和修复主机节点上损坏或过时的 iSCSI 会话的自动化功能。

  • 添加了对扩展 LUKS 加密卷的支持。

  • Kubernetes:添加了对 LUKS 加密卷的凭据轮换支持。

Trident
  • 在 ontap-nas 存储驱动程序中添加了对使用 Amazon FSx for NetApp ONTAP 的 SMB 卷的支持。

  • 使用 SMB 卷时添加了对 NTFS 权限的支持。

  • 增加了对具有 CVS 服务级别的 GCP 卷的存储池的支持。

  • 在使用 ontap-nas-flexgroup 存储驱动创建 FlexGroups 时,新增了对可选使用 flexgroupAggregateList 的支持。

  • 改进了管理多个 FlexVol 卷时 ontap-nas-economy 存储驱动程序的性能

  • 已为所有 ONTAP NAS 存储驱动程序启用 dataLIF 更新。

  • 更新了 Trident 部署和 DaemonSet 命名约定,以反映主机节点操作系统。

弃用

  • Kubernetes:将最低支持的 Kubernetes 更新为 1.21。

  • 配置 `ontap-san`或 `ontap-san-economy`驱动程序时不应再指定 DataLIF。

22.10 中的变化

在升级到 Trident 22.10 之前,您必须阅读以下重要信息。

警告
<strong>有关 Trident 22.10 的重要信息</strong>
  • Trident 现在支持 Kubernetes 1.25。在升级到 Kubernetes 1.25 之前,必须将 Trident 升级到 22.10。

  • Trident 现在严格强制在 SAN 环境中使用多路径配置,推荐值为 multipath.conf 文件中的 find_multipaths: no

    使用非多路径配置或在 multipath.conf 文件中使用 find_multipaths: yes`或 `find_multipaths: smart`值将导致挂载失败。自 21.07 版本发布以来,Trident 建议使用 `find_multipaths: no

修复

  • 修复了在 22.07.0 升级期间使用 `credentials`字段创建的 ONTAP 后端无法联机的特定问题("问题 #759")。

  • Docker:修复了导致 Docker 卷插件在某些环境("问题 #548""问题 #760")中无法启动的问题。

  • 修复了特定于 ONTAP SAN 后端的 SLM 问题,以确保仅发布属于报告节点的 dataLIF 子集。

  • 修复了连接卷时发生不必要的 iSCSI LUN 扫描的性能问题。

  • 删除了 Trident iSCSI 工作流程中的粒度重试,以快速失败并减少外部重试间隔。

  • 修复了在对应的多路径设备已刷新时刷新 iSCSI 设备时返回错误的问题。

增强功能

  • Kubernetes:

    • 添加了对 Kubernetes 1.25 的支持。在升级到 Kubernetes 1.25 之前,您必须将 Trident 升级到 22.10。

    • 为 Trident Deployment 和 DaemonSet 添加了单独的 ServiceAccount、ClusterRole 和 ClusterRoleBinding,以便将来增强权限。

    • 已添加对 "跨命名空间卷共享" 的支持。

  • 所有 Trident ontap-* 存储驱动程序现在都与 ONTAP REST API 配合使用。

  • 添加了新的运算符 yaml (bundle_post_1_25.yaml)without a PodSecurityPolicy 以支持 Kubernetes 1.25。

  • 已为"支持 LUKS 加密卷"和 `ontap-san`以及 `ontap-san-economy`存储驱动程序添加了支持。

  • 添加了对 Windows Server 2019 节点的支持。

  • 通过 `azure-netapp-files`存储驱动程序添加了"在 Windows 节点上支持 SMB 卷"

  • ONTAP 驱动程序的自动 MetroCluster 切换检测现已正式推出。

弃用

  • Kubernetes:将最低支持的 Kubernetes 更新为 1.20。

  • 删除了 Astra Data Store (ADS) 驱动程序。

  • 删除了为 iSCSI 配置工作节点多路径时对 yes`和 `smart`选项的支持 `find_multipaths

22.07 的变化

修复

Kubernetes

  • 修复了使用 Helm 或 Trident Operator 配置 Trident 时处理节点选择器的布尔值和数字值的问题。("GitHub 问题 #700")

  • 修复了处理来自非 CHAP 路径的错误的问题,以便 kubelet 在失败时重试。"GitHub 问题 #736")

增强功能

  • 从 k8s.gcr.io 过渡到 registry.k8s.io 作为 CSI 映像的默认注册表

  • ONTAP-SAN 卷现在将使用每个节点的 igroup,并且仅将 LUN 映射到 igroup,同时主动发布到这些节点,以改善我们的安全状况。当 Trident 确定在不影响活动工作负载的情况下这样做是安全的时,现有卷将被机会性地切换到新的 igroup 方案。

  • 在 Trident 安装中包含了 ResourceQuota,以确保当默认情况下 PriorityClass 消耗受限时,Trident DaemonSet 能被调度。

  • 向 Azure NetApp Files 驱动程序添加了对网络功能的支持。("GitHub 问题 #717")

  • 向 ONTAP 驱动程序添加了技术预览自动 MetroCluster 切换检测。("GitHub 问题 #228")

弃用

  • Kubernetes:将最低支持的 Kubernetes 更新为 1.19。

  • 后端配置不再允许在单个配置中使用多种身份验证类型。

移除

  • 已删除 AWS CVS 驱动程序(自 22.04 起已弃用)。

  • Kubernetes

    • 已从节点 Pod 中删除不必要的 SYS_ADMIN 功能。

    • 将 nodeprep 减少到简单的主机信息和主动服务发现,以尽最大努力确认 NFS/iSCSI 服务在工作节点上可用。

文档

已添加一个新的"Pod 安全标准" (PSS) 部分,详细说明 Trident 在安装时启用的权限。

22.04 的变化

NetApp 不断改进和增强其产品和服务。以下是 Trident 中的一些最新功能。有关早期版本,请参阅早期版本的文档。

重要说明 如果要从任何先前的 Trident 版本升级并使用 Azure NetApp Files,则 location 配置参数现在是必需的单例字段。

修复

增强功能

  • 到 Trident 安全端点的入站连接现在至少需要 TLS 1.3。("GitHub 问题 #698")

  • Trident 现在将 HSTS 标头添加到其安全端点的响应中。

  • Trident 现在尝试自动启用 Azure NetApp Files unix 权限功能。

  • Kubernetes:Trident daemonset 现在以 system-node-critical 优先级类运行。("GitHub 问题 #694")

移除

已删除 E-Series 驱动程序(自 20.07 起禁用)。

22.01.1 中的变化

修复

  • 已修复在已删除节点上取消发布卷的问题。("GitHub 问题 #691")

  • 修复了访问 ONTAP API 响应中聚合空间的 nil 字段时的死机问题。

22.01.0 中的变化

修复

  • *Kubernetes:*增加大型集群的节点注册回退重试时间。

  • 已修复 azure-netapp-files 驱动程序可能被多个同名资源混淆的问题。

  • 如果使用括号指定,ONTAP SAN IPv6 DataLIF 现在可以工作。

  • 修复了尝试导入已导入卷返回 EOF 使 PVC 处于待定状态的问题。("GitHub 问题 #489")

  • 修复了在 SolidFire 卷上创建 > 32 个快照时 Trident 性能减慢的问题。

  • 在 SSL 证书创建中用 SHA-256 替换了 SHA-1。

  • 修复了 Azure NetApp Files 驱动程序,以允许重复的资源名称并将操作限制在单个位置。

  • 修复了 Azure NetApp Files 驱动程序,以允许重复的资源名称并将操作限制在单个位置。

增强功能

  • Kubernetes 增强功能:

    • 增加了对 Kubernetes 1.23 的支持。

    • 通过 Trident Operator 或 Helm 安装时,为 Trident pod 添加调度选项。("GitHub 问题 #651")

  • 允许 GCP 驱动程序中的跨区域卷。("GitHub 问题 #633")

  • 新增对 Azure NetApp Files 卷的 'unixPermissions' 选项的支持。("GitHub 问题 #666")

弃用

Trident REST 接口只能在 127.0.0.1 或 [::1] 地址进行侦听和服务

21.10.1 中的变更

警告 v21.10.0 版本存在一个问题,当节点被删除然后添加回 Kubernetes 集群时,可以将 Trident 控制器置于 CrashLoopBackOff 状态。此问题已在 v21.10.1(GitHub 问题 669)中修复。

修复

  • 修复了在 GCP CVS 后端导入卷时导致导入失败的潜在竞争条件。

  • 修复了当节点被删除然后添加回 Kubernetes 集群时,Trident 控制器可能进入 CrashLoopBackOff 状态的问题(GitHub 问题 669)。

  • 修复了在未指定 SVM 名称的情况下不再发现 SVM 的问题(GitHub 问题 612)。

21.10.0 中的变更

修复

  • 修复了无法在与源卷相同的节点上挂载 XFS 卷克隆的问题(GitHub 问题 514)。

  • 修复了 Trident 在关闭时记录致命错误的问题(GitHub 问题 597)。

  • Kubernetes 相关修补程序:

    • 使用 ontap-nasontap-nas-flexgroup 驱动程序创建快照时,返回卷的已用空间作为最小 restoreSize(GitHub 问题 645)。

    • 修复了在调整卷大小后记录 `Failed to expand filesystem`错误的问题(GitHub 问题 560)。

    • 修复了 Pod 可能陷入 `Terminating`状态的问题(GitHub 问题 572)。

    • 修复了 ontap-san-economy FlexVol 可能充满快照 LUN 的情况(GitHub 问题 533)。

    • 修复了不同映像的自定义 YAML 安装程序问题(GitHub 问题 613)。

    • 修复了快照大小计算(GitHub 问题 611)。

    • 修复了所有 Trident 安装程序可以将普通 Kubernetes 识别为 OpenShift 的问题(GitHub 问题 639)。

    • 修复了 Trident 运算符在 Kubernetes API 服务器无法访问时停止协调的问题(GitHub 问题 599)。

增强功能

  • 增加了对 GCP-CVS Performance 卷 `unixPermissions`选项的支持。

  • 增加了对 GCP 中规模优化的 CVS 卷的支持,范围为 600 GiB 至 1 TiB。

  • Kubernetes 相关增强功能:

    • 增加了对 Kubernetes 1.22 的支持。

    • 使 Trident 运算符和 Helm chart 能够与 Kubernetes 1.22 (GitHub 问题 628)配合使用。

    • 将操作员映像添加到 `tridentctl`映像命令(GitHub 问题 570)。

实验性增强功能

  • ontap-san 驱动程序中添加了对卷复制的支持。

  • ontap-nas-flexgroupontap-sanontap-nas-economy 驱动程序添加了 技术预览 REST 支持。

已知问题

已知问题可识别可能妨碍您成功使用产品的问题。

  • 在将安装了 Trident 的 Kubernetes 集群从 1.24 升级到 1.25 或更高版本时,必须更新 values.yaml 以将 `excludePodSecurityPolicy`设置为 `true`或将 `--set excludePodSecurityPolicy=true`添加到 `helm upgrade`命令中,然后才能升级集群。

  • Trident 现在会对没有在其 StorageClass 中指定 fsType 的卷强制使用空白 fsType (fsType=""。在使用 Kubernetes 1.17 或更高版本时,Trident 支持为 NFS 卷提供空白 fsType。对于 iSCSI 卷,当使用 Security Context 强制 fsGroup 时,您需要在 StorageClass 上设置 fsType

  • 当跨多个 Trident 实例使用后端时,每个后端配置文件应具有不同的 `storagePrefix`值用于 ONTAP 后端或使用不同的 `TenantName`用于 SolidFire 后端。Trident 无法检测到其他 Trident 实例创建的卷。尝试在 ONTAP 或 SolidFire 后端上创建现有卷会成功,因为 Trident 将卷创建视为幂等操作。如果 `storagePrefix`或 `TenantName`没有差异,则可能存在在同一后端上创建的卷的名称冲突。

  • 安装 Trident(使用 `tridentctl`或 Trident Operator)并使用 `tridentctl`来管理 Trident 时,应确保设置 `KUBECONFIG`环境变量。这对于指示 `tridentctl`应该针对的 Kubernetes 集群是必要的。使用多个 Kubernetes 环境时,应确保 `KUBECONFIG`文件来源准确。

  • 要对 iSCSI PV 执行在线空间回收,工作节点上的底层操作系统可能需要将装载选项传递到卷。对于 RHEL/Red Hat Enterprise Linux CoreOS (RHCOS) 实例,需要 discard "挂载选项";请确保在[StorageClass] 中包含 discard mountOption 以支持在线块丢弃。

  • 如果每个 Kubernetes 集群有多个 Trident 实例,Trident 无法与其他实例通信,也无法发现它们创建的其他卷,如果在一个集群中运行多个实例,则会导致意外和不正确的行为。每个 Kubernetes 集群只能有一个 Trident 实例。

  • 如果在 Trident 离线时从 Kubernetes 中删除了基于 Trident 的 `StorageClass`对象,Trident 在重新上线时不会从其数据库中删除相应的存储类。您应该使用 `tridentctl`或 REST API 删除这些存储类。

  • 如果用户在删除对应的 PVC 之前删除了 Trident 配置的 PV,Trident 不会自动删除后备卷。您应该通过 `tridentctl`或 REST API 删除卷。

  • 除非聚合集对于每个配置请求是唯一的,否则 ONTAP 不能一次同时配置多个 FlexGroup。

  • 在 IPv6 上使用 Trident 时,您应该在后端定义中的方括号内指定 managementLIF`和 `dataLIF。例如,[fd20:8b1e:b258:2000:f816:3eff:feec:0]

    备注 您无法在 ONTAP SAN 后端上指定 dataLIF。Trident 发现所有可用的 iSCSI LIF 并使用它们建立多路径会话。
  • 如果将 solidfire-san 驱动程序与 OpenShift 4.5 一起使用,请确保底层工作节点使用 MD5 作为 CHAP 身份验证算法。Element 12.7 提供了安全的符合 FIPS 的 CHAP 算法 SHA1、SHA-256 和 SHA3-256。

查找更多信息