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

配置存储后端

贡献者

ONTAP SAN和NAS驱动程序集成

您可以使用存储在AWS机密管理器中的SVM凭据(用户名和密码)创建后端文件、如以下示例所示:

YAML
apiVersion: trident.netapp.io/v1
kind: TridentBackendConfig
metadata:
  name: backend-tbc-ontap-nas
spec:
  version: 1
  storageDriverName: ontap-nas
  backendName: tbc-ontap-nas
  svm: svm-name
  aws:
    fsxFilesystemID: fs-xxxxxxxxxx
  credentials:
    name: "arn:aws:secretsmanager:us-west-2:xxxxxxxx:secret:secret-name"
    type: awsarn
JSON
{
  "apiVersion": "trident.netapp.io/v1",
  "kind": "TridentBackendConfig",
  "metadata": {
    "name": "backend-tbc-ontap-nas"
  },
  "spec": {
    "version": 1,
    "storageDriverName": "ontap-nas",
    "backendName": "tbc-ontap-nas",
    "svm": "svm-name",
    "aws": {
      "fsxFilesystemID": "fs-xxxxxxxxxx"
    },
    "managementLIF": null,
    "credentials": {
      "name": "arn:aws:secretsmanager:us-west-2:xxxxxxxx:secret:secret-name",
      "type": "awsarn"
    }
  }
}

有关创建后端的信息、请参见以下页面:

FSx for ONTAP驱动程序详细信息

您可以使用以下驱动程序将Astra Trident与适用于NetApp ONTAP 的Amazon FSx集成:

  • ontap-san:配置的每个PV都是其自身Amazon FSx for NetApp ONTAP卷中的一个LUN。建议用于块存储。

  • ontap-nas:配置的每个PV都是一个完整的Amazon FSx for NetApp ONTAP卷。建议用于NFS和SMB。

  • ontap-san-economy:配置的每个PV都是一个LUN,每个Amazon FSx for NetApp ONTAP卷具有可配置数量的LUN。

  • ontap-nas-economy:配置的每个PV都是一个qtree、每个Amazon FSx for NetApp ONTAP卷具有一个可配置数量的qtree。

  • ontap-nas-flexgroup:配置的每个PV都是一个完整的Amazon FSx for NetApp ONTAP FlexGroup卷。

有关驱动程序的详细信息,请参阅"NAS驱动程序""SAN驱动程序"

示例配置

使用密钥管理器配置AWS FSx for ONTAP
apiVersion: trident.netapp.io/v1
kind: TridentBackendConfig
metadata:
  name: backend-tbc-ontap-nas
spec:
  version: 1
  storageDriverName: ontap-nas
  backendName: tbc-ontap-nas
  svm: svm-name
  aws:
    fsxFilesystemID: fs-xxxxxxxxxx
  managementLIF:
  credentials:
    name: "arn:aws:secretsmanager:us-west-2:xxxxxxxx:secret:secret-name"
    type: awsarn
配置SMB卷的存储类

使用 nasTypenode-stage-secret-name`和 `node-stage-secret-namespace,您可以指定SMB卷并提供所需的Active Directory凭据。仅使用驱动程序支持SMB卷 ontap-nas

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: nas-smb-sc
provisioner: csi.trident.netapp.io
parameters:
  backendType: "ontap-nas"
  trident.netapp.io/nasType: "smb"
  csi.storage.k8s.io/node-stage-secret-name: "smbcreds"
  csi.storage.k8s.io/node-stage-secret-namespace: "default"

后端高级配置和示例

有关后端配置选项,请参见下表:

参数 说明 示例

version

始终为 1

storageDriverName

存储驱动程序的名称

ontap-nas、、 ontap-nas-economy ontap-nas-flexgroupontap-san ontap-san-economy

backendName

自定义名称或存储后端

驱动程序名称 + "_" + dataLIF

managementLIF

集群或SVM管理LIF的IP地址可以指定完全限定域名(FQDN)。如果使用IPv6标志安装了Asta三元组、则可以设置为使用IPv6地址。IPv6地址必须用方括号定义、例如:[28e8:d9fb:a825:b7bf:69a8:d02f:9e7b:3555]。如果在字段下提供 fsxFilesystemID aws 、则无需提供、 managementLIF 因为Astra Trident会从AWS检索SVM managementLIF 信息。因此、您必须提供SVM下某个用户的凭据(例如vsadmin)、并且该用户必须具有此 vsadmin 角色。

"10.0.0.1 " , "2001 : 1234 : abcd ::: fefe] "

dataLIF

协议 LIF 的 IP 地址。* ONTAP NAS驱动程序*:建议指定dataLIF。如果未提供此参数、则Astra Trident会从SVM提取数据LIF。您可以指定用于NFS挂载操作的完全限定域名(FQDN)、从而可以创建循环DNS、以便在多个数据LIF之间实现负载平衡。可以在初始设置后更改。请参阅 。* ONTAP SAN驱动程序*:不为iSCSI指定。Astra Trident使用ONTAP 选择性LUN映射来发现建立多路径会话所需的iSCI LIF。如果明确定义了dataLIF、则会生成警告。如果使用IPv6标志安装了Asta三元组、则可以设置为使用IPv6地址。IPv6地址必须用方括号定义、例如:[28e8:d9fb:a825:b7bf:69a8:d02f:9e7b:3555]。

autoExportPolicy

启用自动创建和更新导出策略[布尔值]。使用 `autoExportPolicy`和 `autoExportCIDRs`选项、Astra Trident可以自动管理导出策略。

false

autoExportCIDRs

用于筛选KubeNet节点IP的CIDR列表(启用时)。 `autoExportPolicy`使用 `autoExportPolicy`和 `autoExportCIDRs`选项、Astra Trident可以自动管理导出策略。

"["0.0.0.0/0 "、"::/0 "]"

labels

要应用于卷的一组任意 JSON 格式的标签

""

clientCertificate

客户端证书的 Base64 编码值。用于基于证书的身份验证

""

clientPrivateKey

客户端专用密钥的 Base64 编码值。用于基于证书的身份验证

""

trustedCACertificate

受信任 CA 证书的 Base64 编码值。可选。用于基于证书的身份验证。

""

username

用于连接到集群或SVM的用户名。用于基于凭据的身份验证。例如、vsadmin。

password

用于连接到集群或SVM的密码。用于基于凭据的身份验证。

svm

要使用的 Storage Virtual Machine

如果指定SVM管理LIF则派生。

storagePrefix

在 SVM 中配置新卷时使用的前缀。创建后无法修改。要更新此参数、您需要创建一个新的后端。

trident

limitAggregateUsage

*请勿指定Amazon FSx for NetApp ONTAP。*提供的和 `vsadmin`不包含使用Astra Trident检索聚合使用情况并对其进行限制所需的 `fsxadmin`权限。

请勿使用。

limitVolumeSize

如果请求的卷大小超过此值、则配置失败。此外、还会限制它为qtrees和FlexVol管理的卷的大小上限、并且此选项允许自定义每个LUN `qtreesPerFlexvol`的qtrees的最大数量。

" (默认情况下不强制实施)

lunsPerFlexvol

每个FlexVol 的最大LUN数必须在50、200范围内。仅SAN。

“100”

debugTraceFlags

故障排除时要使用的调试标志。例如、除非您正在进行故障排除并需要详细的日志转储、否则不会使用{"ap1":false、"METHOU":true} debugTraceFlags

nfsMountOptions

NFS挂载选项的逗号分隔列表。Kubernetes持久卷的挂载选项通常在存储类中指定、但如果在存储类中未指定挂载选项、则Astra Trident将回退到使用存储后端配置文件中指定的挂载选项。如果在存储类或配置文件中未指定挂载选项、则Astra Trident不会在关联的永久性卷上设置任何挂载选项。

""

nasType

配置NFS或SMB卷创建。选项包括 nfssmb`或null。*对于SMB卷,必须设置为 `smb。*默认情况下、将设置为空会将NFS卷设置为空。

nfs

qtreesPerFlexvol

每个 FlexVol 的最大 qtree 数,必须在 50 , 300 范围内

"200"

smbShare

您可以指定以下选项之一:使用Microsoft管理控制台或ONTAP命令行界面创建的SMB共享的名称、或者允许Asta三端到功能创建SMB共享的名称。对于Amazon FSx for ONTAP后端、此参数是必需的。

smb-share

useREST

用于使用 ONTAP REST API 的布尔参数。技术预览
useREST技术预览的形式提供,建议用于测试环境,而不用于生产工作负载。如果设置为 true,Asta Trident将使用ONTAP REST API与后端进行通信。此功能需要使用ONTAP 9.11.1及更高版本。此外、使用的ONTAP登录角色必须有权访问 ontap 应用程序。预定义的和角色可以满足这一 vsadmin 要求 cluster-admin

false

aws

您可以在AWS FSx for ONTAP的配置文件中指定以下内容:- fsxFilesystemID:指定AWS FSx文件系统的ID。- apiRegion:AWS API区域名称。- apikey:AWS API密钥。- secretKey:AWS密钥。



""
""
""

credentials

指定要存储在AWS机密管理器中的FSx SVM凭据。- name:密钥的Amazon资源名称(ARN)、其中包含SVM的凭据。- type:设置为 awsarn。有关详细信息、请参见 "创建AWS机密管理器密钥"

用于配置卷的后端配置选项

您可以在配置部分使用这些选项控制默认配置 defaults。有关示例,请参见以下配置示例。

参数 说明 默认

spaceAllocation

LUN 的空间分配

true

spaceReserve

空间预留模式; " 无 " (精简)或 " 卷 " (厚)

none

snapshotPolicy

要使用的 Snapshot 策略

none

qosPolicy

要为创建的卷分配的 QoS 策略组。选择每个存储池或后端的qosPolicy或adaptiveQosPolicy之一。在 Astra Trident 中使用 QoS 策略组需要 ONTAP 9.8 或更高版本。建议使用非共享QoS策略组、并确保策略组分别应用于每个成分卷。共享 QoS 策略组将对所有工作负载的总吞吐量实施上限。

"

adaptiveQosPolicy

要为创建的卷分配的自适应 QoS 策略组。选择每个存储池或后端的qosPolicy或adaptiveQosPolicy之一。不受 ontap-nas-economy.

"

snapshotReserve

为快照预留的卷百分比为 "0"

如果 snapshotPolicy`为 `none、 `else`""

splitOnClone

创建克隆时,从其父级拆分该克隆

false

encryption

在新卷上启用NetApp卷加密(NVE);默认为 false。要使用此选项,必须在集群上获得 NVE 的许可并启用 NVE 。如果在后端启用了NAE、则在Astra Trident中配置的任何卷都将启用NAE。有关详细信息,请参阅:"Astra Trident如何与NVE和NAE配合使用"

false

luksEncryption

启用LUKS加密。请参阅 "使用Linux统一密钥设置(LUKS)"。仅SAN。

""

tieringPolicy

要使用的层策略 none

`snapshot-only`对于ONTAP 9 5之前的SVM-DR配置

unixPermissions

新卷的模式。对于SMB卷保留为空。

""

securityStyle

新卷的安全模式。NFS支持 `mixed`和 `unix`安全模式。SMB支持 `mixed`和 `ntfs`安全模式。

NFS默认值为 unix。SMB默认值为 ntfs

准备配置SMB卷

您可以使用驱动程序配置SMB卷 ontap-nas。完成以下步骤之前。ONTAP SAN和NAS驱动程序集成

开始之前

在使用驱动程序配置SMB卷之前、 `ontap-nas`您必须满足以下条件。

  • 一个Kubernetes集群、其中包含一个Linux控制器节点以及至少一个运行Windows Server 2019的Windows工作节点。Astra Trident仅支持将SMB卷挂载到Windows节点上运行的Pod。

  • 至少一个包含Active Directory凭据的Astra Trident密钥。生成密钥 smbcreds

    kubectl create secret generic smbcreds --from-literal username=user --from-literal password='password'
  • 配置为Windows服务的CSI代理。要配置 csi-proxy,请参阅"GitHub:CSI代理"或了解在Windows上运行的Kubornetes"GitHub:适用于Windows的CSI代理"节点。

步骤
  1. 创建SMB共享。您可以通过以下两种方式之一创建SMB管理员共享:使用"Microsoft管理控制台"共享文件夹管理单元或使用ONTAP命令行界面。要使用ONTAP 命令行界面创建SMB共享、请执行以下操作:

    1. 如有必要,为共享创建目录路径结构。

      `vserver cifs share create`命令会在创建共享期间检查-path选项中指定的路径。如果指定路径不存在,则命令将失败。
    2. 创建与指定SVM关联的SMB共享:

      vserver cifs share create -vserver vserver_name -share-name share_name -path path [-share-properties share_properties,...] [other_attributes] [-comment text]
    3. 验证是否已创建共享:

      vserver cifs share show -share-name share_name
      备注 有关完整详细信息、请参见"创建 SMB 共享"
  2. 创建后端时、必须配置以下内容以指定SMB卷。有关所有FSx for ONTAP后端配置选项的信息,请参阅"适用于ONTAP 的FSX配置选项和示例"

    参数 说明 示例

    smbShare

    您可以指定以下选项之一:使用Microsoft管理控制台或ONTAP命令行界面创建的SMB共享的名称、或者允许Asta三端到功能创建SMB共享的名称。对于Amazon FSx for ONTAP后端、此参数是必需的。

    smb-share

    nasType

    *必须设置为 smb.*如果为空,则默认为 nfs

    smb

    securityStyle

    新卷的安全模式。对于SMB卷,必须设置为 ntfs`或 `mixed

    `ntfs`或 `mixed`SMB卷

    unixPermissions

    新卷的模式。对于SMB卷、必须留空。

    ""