Customize Trident operator deployment
The Trident operator enables you to customize the manner in which Astra Trident is installed by using the attributes in the TridentOrchestrator
spec.
See the following table for the list of attributes:
Parameter | Description | Default |
---|---|---|
|
Namespace to install Astra Trident in |
"default" |
|
Enable debugging for Astra Trident |
false |
|
Install Astra Trident over IPv6 |
false |
|
Timeout for Kubernetes operations |
30sec |
|
Don't send autosupport bundles to NetApp |
false |
|
Manage worker node dependencies automatically (BETA) |
false |
|
The container image for Autosupport Telemetry |
"netapp/trident-autosupport:21.04.0" |
|
The address/port of a proxy for sending Autosupport |
"http://proxy.example.com:8888" |
|
A flag used to uninstall Astra Trident |
false |
|
Astra Trident logging format to be used [text,json] |
"text" |
|
Astra Trident image to install |
"netapp/trident:21.04" |
|
Path to internal registry, of the format |
"k8s.gcr.io/sig-storage (k8s 1.19+) |
|
Path to the kubelet directory on the host |
“/var/lib/kubelet” |
|
A list of resources to delete to perform a complete removal of |
|
|
Secrets to pull images from an internal registry |
|
|
Additional node selectors for pods running the Trident Controller CSI Plugin. Follows same format as pod.spec.nodeSelector. |
No default; optional |
|
Overrides tolerations for pods running the Trident Controller CSI Plugin. Follows the same format as pod.spec.Tolerations. |
No default; optional |
|
Additional node selectors for pods running the Trident Node CSI Plugin. Follows same format as pod.spec.nodeSelector. |
No default; optional |
|
Overrides tolerations for pods running the Trident Node CSI Plugin. Follows the same format as pod.spec.Tolerations. |
No default; optional |
spec.namespace is specified in TridentOrchestrator to signify which namespace Astra Trident is installed in. This parameter cannot be updated after Astra Trident is installed. Attempting to do so causes the status of TridentOrchestrator to change to Failed . Astra Trident is not meant to be migrated across namespaces.
|
For more information on formatting pod parameters, see Assigning Pods to Nodes. |
You can use the attributes mentioned above when defining TridentOrchestrator
to customize your installation. Here's an example:
cat deploy/crds/tridentorchestrator_cr_imagepullsecrets.yaml apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullSecrets: - thisisasecret
Here is another example that shows how Trident can be deployed with node selectors:
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident controllerPluginNodeSelector: nodetype: master nodePluginNodeSelector: storage: netapp
If you are looking to customize the installation beyond what TridentOrchestrator
arguments allow, you should consider using tridentctl
to generate custom YAML manifests that you can modify as needed.