Install using tridentctl
You can install Trident using tridentctl
. This process applies to installations where the container images required by Trident are stored either in a private registry or not. To customize your tridentctl
deployment, refer to Customize tridentctl deployment.
Critical information about Trident 24.10
You must read the following critical information about Trident.
Critical information about Trident
-
Kubernetes 1.27 is now supported in Trident. Upgrade Trident prior to upgrading Kubernetes.
-
Trident strictly enforces the use of multipathing configuration in SAN environments, with a recommended value of
find_multipaths: no
in multipath.conf file.Use of non-multipathing configuration or use of
find_multipaths: yes
orfind_multipaths: smart
value in multipath.conf file will result in mount failures. Trident has recommended the use offind_multipaths: no
since the 21.07 release.
Install Trident using tridentctl
Review the installation overview to ensure you've met installation prerequisites and selected the correct installation option for your environment.
Before you begin installation, log in to the Linux host and verify it is managing a working, supported Kubernetes cluster and that you have the necessary privileges.
With OpenShift, use oc instead of kubectl in all of the examples that follow, and log in as system:admin first by running oc login -u system:admin or oc login -u kube-admin .
|
Details
-
Verify your Kubernetes version:
kubectl version
-
Verify cluster administrator privileges:
kubectl auth can-i '*' '*' --all-namespaces
-
Verify you can launch a pod that uses an image from Docker Hub and reach your storage system over the pod network:
kubectl run -i --tty ping --image=busybox --restart=Never --rm -- \ ping <management IP>
Step 1: Download the Trident installer package
The Trident installer package creates a Trident pod, configures the CRD objects that are used to maintain its state, and initializes the CSI sidecars to perform actions such as provisioning and attaching volumes to the cluster hosts. Download and extract the latest version of the Trident installer from the Assets section on GitHub. Update <trident-installer-XX.XX.X.tar.gz> in the example with your selected Trident version.
wget https://github.com/NetApp/trident/releases/download/v24.10.0/trident-installer-24.10.0.tar.gz tar -xf trident-installer-24.10.0.tar.gz cd trident-installer
Step 2: Install Trident
Install Trident in the desired namespace by executing the tridentctl install
command. You can add additional arguments to specify image registry location.
./tridentctl install -n trident
./tridentctl install -n trident --image-registry <your-registry> --autosupport-image <your-registry>/trident-autosupport:24.10 --trident-image <your-registry>/trident:24.10.0
./tridentctl install -n trident --image-registry <your-registry> --autosupport-image <your-registry>/trident-autosupport:24.10 --trident-image <your-registry>/trident:24.10.0
Your installation status should look something like this.
.... INFO Starting Trident installation. namespace=trident INFO Created service account. INFO Created cluster role. INFO Created cluster role binding. INFO Added finalizers to custom resource definitions. INFO Created Trident service. INFO Created Trident secret. INFO Created Trident deployment. INFO Created Trident daemonset. INFO Waiting for Trident pod to start. INFO Trident pod started. namespace=trident pod=trident-controller-679648bd45-cv2mx INFO Waiting for Trident REST interface. INFO Trident REST interface is up. version=24.10.0 INFO Trident installation succeeded. ....
Verify the installation
You can verify your installation using pod creation status or tridentctl
.
Using pod creation status
You can confirm if the Trident installation completed by reviewing the status of the created pods:
kubectl get pods -n trident NAME READY STATUS RESTARTS AGE trident-controller-679648bd45-cv2mx 6/6 Running 0 5m29s trident-node-linux-vgc8n 2/2 Running 0 5m29s
If the installer does not complete successfully or trident-controller-<generated id> (trident-csi-<generated id> in versions prior to 23.01) does not have a Running status, the platform was not installed. Use -d to turn on debug mode and troubleshoot the issue.
|
Using tridentctl
You can use tridentctl
to check the version of Trident installed.
./tridentctl -n trident version +----------------+----------------+ | SERVER VERSION | CLIENT VERSION | +----------------+----------------+ | 24.10.0 | 24.10.0 | +----------------+----------------+
Sample configurations
The following examples provide sample configurations for installing Trident using tridentctl
.
Windows nodes
To enable Trident to run on Windows nodes:
tridentctl install --windows -n trident
Force detach
For more information about force detach, refer to Customize Trident operator installation.
tridentctl install --enable-force-detach=true -n trident