Skip to main content

Install Trident

Contributors netapp-aruldeepa netapp-mwallis

Trident streamlines Amazon FSx for NetApp ONTAP storage management in Kubernetes to enable your developers and administrators focus on application deployment.

You can install Trident using one of the following methods:

  • Helm

  • EKS add-on

If you want to make use of the snapshot functionality, install the CSI snapshot controller add-on. Refer to Enable snapshot functionality for CSI volumes for more information.

Install Trident via helm

Pod Identity
  1. Add the Trident Helm repository:

    helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
  2. Install Trident using the following example:

    helm install trident-operator netapp-trident/trident-operator --version 100.2502.1 --namespace trident --create-namespace

    You can use the helm list command to review installation details such as name, namespace, chart, status, app version, and revision number.

    helm list -n trident
    NAME                NAMESPACE   REVISION    UPDATED                                 STATUS       CHART                          APP VERSION
    
    trident-operator    trident     1           2024-10-14 14:31:22.463122 +0300 IDT    deployed     trident-operator-100.2502.0    25.02.0
Service account association (IRSA)
  1. Add the Trident Helm repository:

    helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
  2. Set the values for cloud provider and cloud identity:

    helm install trident-operator netapp-trident/trident-operator --version 100.2502.1  \
    --set cloudProvider="AWS" \
    --set cloudIdentity="'eks.amazonaws.com/role-arn: arn:aws:iam::<accountID>:role/<AmazonEKS_FSxN_CSI_DriverRole>'" \
    --namespace trident \
    --create-namespace

    You can use the helm list command to review installation details such as name, namespace, chart, status, app version, and revision number.

    helm list -n trident
    NAME                NAMESPACE   REVISION    UPDATED                                 STATUS       CHART                          APP VERSION
    
    trident-operator    trident     1           2024-10-14 14:31:22.463122 +0300 IDT    deployed     trident-operator-100.2506.0    25.06.0
Note

If you're planning to use iSCSI, make sure iSCSI is enabled on your client machine. If you're using AL2023 Worker node OS, you can automate the installation of the iSCSI client by adding the node prep parameter in the helm installation:

helm install trident-operator netapp-trident/trident-operator --version 100.2502.1 --namespace trident --create-namespace –-set nodePrep={iscsi}

Install Trident via the EKS add-on

The Trident EKS add-on includes the latest security patches, bug fixes, and is validated by AWS to work with Amazon EKS. The EKS add-on enables you to consistently ensure that your Amazon EKS clusters are secure and stable and reduce the amount of work that you need to do in order to install, configure, and update add-ons.

Prerequisites

Ensure that you have the following before configuring the Trident add-on for AWS EKS:

  • An Amazon EKS cluster account with add-on subscription

  • AWS permissions to the AWS marketplace:
    "aws-marketplace:ViewSubscriptions",
    "aws-marketplace:Subscribe",
    "aws-marketplace:Unsubscribe

  • AMI type: Amazon Linux 2 (AL2_x86_64) or Amazon Linux 2 Arm(AL2_ARM_64)

  • Node type: AMD or ARM

  • An existing Amazon FSx for NetApp ONTAP file system

Enable the Trident add-on for AWS

Management console
  1. Open the Amazon EKS console at https://console.aws.amazon.com/eks/home#/clusters.

  2. On the left navigation pane, select Clusters.

  3. Select the name of the cluster that you want to configure the NetApp Trident CSI add-on for.

  4. Select Add-ons and then select Get more add-ons.

  5. Follow these steps to select the add-on:

    1. Scroll down to the AWS Marketplace add-ons section and type "Trident” in the search box.

    2. Select the check box at the top right corner of the Trident by NetApp box.

    3. Select Next.

  6. On the Configure selected add-ons settings page, do the following:

    Note Skip these steps if you are using Pod Identity association.
    1. Select the Version you would like to use.

    2. If you're using IRSA authentication, make sure to set configuration values available in the Optional configuration settings:

      • Select the Version you would like to use.

      • Follow the Add-on configuration schema and set the configurationValues parameter on the Configuration values section to the role-arn you created on the previous step ( Value should be in the following format):

    {
    
      "cloudIdentity": "'eks.amazonaws.com/role-arn: <role ARN>'",
      "cloudProvider": "AWS"
    
    }

    If you select Override for the Conflict resolution method, one or more of the settings for the existing add-on can be overwritten with the Amazon EKS add-on settings. If you don't enable this option and there's a conflict with your existing settings, the operation fails. You can use the resulting error message to troubleshoot the conflict. Before selecting this option, make sure that the Amazon EKS add-on doesn't manage settings that you need to self-manage.

  7. Choose Next.

  8. On the Review and add page, choose Create.

    After the add-on installation is complete, you see your installed add-on.

AWS CLI

1. Create the add-on.json file:

For Pod Identity, use the following format:

{
  "clusterName": "<eks-cluster>",
  "addonName": "netapp_trident-operator",
  "addonVersion": "v25.6.0-eksbuild.1",
}

For IRSA authentication, use the following format:

{
  "clusterName": "<eks-cluster>",
  "addonName": "netapp_trident-operator",
  "addonVersion": "v25.6.0-eksbuild.1",
  "serviceAccountRoleArn": "<role ARN>",
  "configurationValues": {
    "cloudIdentity": "'eks.amazonaws.com/role-arn: <role ARN>'",
    "cloudProvider": "AWS"
  }
}
Note Replace <role ARN> with the ARN of the role that was created in the previous step.

2. Install the Trident EKS add-on.

aws eks create-addon --cli-input-json file://add-on.json
eksctl

The following example command installs the Trident EKS add-on:

eksctl create addon --name netapp_trident-operator --cluster <cluster_name> --force

Update the Trident EKS add-on

Management console
  1. Open the Amazon EKS console https://console.aws.amazon.com/eks/home#/clusters.

  2. On the left navigation pane, select Clusters.

  3. Select the name of the cluster that you want to update the NetApp Trident CSI add-on for.

  4. Select the Add-ons tab.

  5. Select Trident by NetApp and then select Edit.

  6. On the Configure Trident by NetApp page, do the following:

    1. Select the Version you would like to use.

    2. Expand the Optional configuration settings and modify as needed.

    3. Select Save changes.

AWS CLI

The following example updates the EKS add-on:

aws eks update-addon --cluster-name <eks_cluster_name> --addon-name netapp_trident-operator --addon-version v25.6.0-eksbuild.1 \
  --service-account-role-arn <role-ARN> --resolve-conflict preserve \
  --configuration-values “{\"cloudIdentity\": \"'eks.amazonaws.com/role-arn: <role ARN>'\"}"
eksctl
  • Check the current version of your FSxN Trident CSI add-on. Replace my-cluster with your cluster name.

    eksctl get addon --name netapp_trident-operator --cluster my-cluster

    Example output:

NAME                        VERSION             STATUS    ISSUES    IAMROLE    UPDATE AVAILABLE    CONFIGURATION VALUES
netapp_trident-operator    v25.6.0-eksbuild.1    ACTIVE    0       {"cloudIdentity":"'eks.amazonaws.com/role-arn: arn:aws:iam::139763910815:role/AmazonEKS_FSXN_CSI_DriverRole'"}
  • Update the add-on to the version returned under UPDATE AVAILABLE in the output of the previous step.

    eksctl update addon --name netapp_trident-operator --version v25.6.0-eksbuild.1 --cluster my-cluster --force

If you remove the --force option and any of the Amazon EKS add-on settings conflict with your existing settings, then updating the Amazon EKS add-on fails; you receive an error message to help you resolve the conflict. Before specifying this option, make sure that the Amazon EKS add-on does not manage settings that you need to manage, because those settings are overwritten with this option.
For more information about other options for this setting, see Addons.
For more information about Amazon EKS Kubernetes field management, see Kubernetes field management.

Uninstall/remove the Trident EKS add-on

You have two options for removing an Amazon EKS add-on:

  • Preserve add-on software on your cluster – This option removes Amazon EKS management of any settings. It also removes the ability for Amazon EKS to notify you of updates and automatically update the Amazon EKS add-on after you initiate an update. However, it preserves the add-on software on your cluster. This option makes the add-on a self-managed installation, rather than an Amazon EKS add-on. With this option, there's no downtime for the add-on. Retain the --preserve option in the command to preserve the add-on.

  • Remove add-on software entirely from your cluster – NetApp recommends that you remove the Amazon EKS add-on from your cluster only if there are no resources on your cluster that are dependent on it. Remove the --preserve option from the delete command to remove the add-on.

Note If the add-on has an IAM account associated with it, the IAM account is not removed.
Management console
  1. Open the Amazon EKS console at https://console.aws.amazon.com/eks/home#/clusters.

  2. In the left navigation pane, select Clusters.

  3. Select the name of the cluster that you want to remove the NetApp Trident CSI add-on for.

  4. Select the Add-ons tab and then select Trident by NetApp.*

  5. Select Remove.

  6. In the Remove netapp_trident-operator confirmation dialog, do the following:

    1. If you want Amazon EKS to stop managing settings for the add-on, select Preserve on cluster. Do this if you want to retain the add-on software on your cluster so that you can manage all of the settings of the add-on on your own.

    2. Enter netapp_trident-operator.

    3. Select Remove.

AWS CLI

Replace my-cluster with the name of your cluster, and then run the following command.

aws eks delete-addon --cluster-name my-cluster --addon-name netapp_trident-operator --preserve
eksctl

The following command uninstalls the Trident EKS add-on:

eksctl delete addon --cluster K8s-arm --name netapp_trident-operator