自定义Trident操作员安装
Trident操作员允许您使用规范中的属性自定义Trident安装 TridentOrchestrator。如果要在允许的参数之外自定义安装 TridentOrchestrator、请考虑使用生成自定义YAML清单、 `tridentctl`以便根据需要进行修改。
了解控制器Pod和节点Pod
配置选项
|
|
spec.namespace`在中指定 `TridentOrchestrator`以表示安装Trident的命名空间。安装Trident后无法更新此参数*。尝试执行此操作会导致 `TridentOrchestrator`状态更改为 `Failed。Trident不应跨多个名称卷进行迁移。
|
此表详细介绍了相关信息 TridentOrchestrator 属性。
| 参数 | Description | Default | ||
|---|---|---|---|---|
|
要安装Trident的命名空间 |
|
||
|
为Trident启用调试 |
|
||
|
|
|
||
|
设置为 |
|
||
|
如果在AKS集群上使用托管身份或云身份、请设置为 |
|
||
|
在AKS集群上使用云标识时、设置为工作负载标识("azure.Workload .Identity /client-id:XXXXXX-xxxx-xxxx-xxxx-xxxxxxxxxxx")。在Trident集群上使用云身份时、设置为eks.amazonaws.com/role-arn: AWS IAM角色("eks arn:aws:iam:::12356:roe/EAM-roe"")。在GKE集群上使用云标识时、请设置为云标识("iam.GKE.IO/GCP-service-account:xxxx@mygcpproject.iam.gserviceaccount.com ")。 |
|
||
|
安装基于IPv6的Trident |
false |
||
|
Kubernetes 操作超时。
|
|
||
|
不要向NetApp发送AutoSupport捆绑包 |
|
||
|
AutoSupport 遥测的容器映像 |
|
||
|
用于发送AutoSupport的代理的地址/端口 |
|
||
|
用于卸载Trident的标志 |
|
||
|
要使用的Trident日志记录格式[text,json] |
|
||
|
要安装的Trident映像 |
|
||
|
内部注册表的路径、格式 |
|
||
|
主机上的 kubelet 目录的路径 |
|
||
|
要删除以执行Trident完全删除的资源列表 |
|||
|
从内部注册表中提取映像的机密信息 |
|||
|
设置Trident运算符的映像提取策略。有效值为: |
|
||
|
Pod的其他节点选择器。 遵循与相同的格式 |
无默认值;可选 |
||
|
覆盖Kubernetes对Pod的容错。遵循与相同的格式 |
无默认值;可选 |
||
|
Pod的其他节点选择器。遵循与相同的格式 |
无默认值;可选 |
||
|
覆盖Kubernetes对Pod的容错。遵循与相同的格式 |
无默认值;可选 |
||
|
使Trident能够使Kubbernetes集群的节点做好准备、以便使用指定的数据存储协议管理卷。目前, `iscsi`是唯一支持的值。
|
|||
|
控制器与 Kubernetes API 服务器通信时使用的每秒查询数 (QPS) 限制。 Burst 值根据 QPS 值自动设置。 |
|
||
|
支持并发Trident控制器操作以提高吞吐量。
|
false |
|
|
有关格式化POD参数的详细信息、请参阅 "将 Pod 分配给节点"。 |
|
|
|
|
|
|
a|
resources:
controller:
trident-main:
requests:
cpu: 10m
memory: 80Mi
limits:
cpu:
memory:
csi-provisioner:
requests:
cpu: 2m
memory: 20Mi
limits:
cpu:
memory:
csi-attacher:
requests:
cpu: 2m
memory: 20Mi
limits:
cpu:
memory:
csi-resizer:
requests:
cpu: 3m
memory: 20Mi
limits:
cpu:
memory:
csi-snapshotter:
requests:
cpu: 2m
memory: 20Mi
limits:
cpu:
memory:
trident-autosupport:
requests:
cpu: 1m
memory: 30Mi
limits:
cpu:
memory:
node:
linux:
trident-main:
requests:
cpu: 10m
memory: 60Mi
limits:
cpu:
memory:
node-driver-registrar:
requests:
cpu: 1m
memory: 10Mi
limits:
cpu:
memory:
windows:
trident-main:
requests:
cpu: 6m
memory: 40Mi
limits:
cpu:
memory:
node-driver-registrar:
requests:
cpu: 6m
memory: 40Mi
limits:
cpu:
memory:
liveness-probe:
requests:
cpu: 2m
memory: 40Mi
limits:
cpu:
memory:
|httpsMetrics|为 Prometheus 指标端点启用 HTTPS。|false|hostNetwork a|为Trident控制器启用主机联网。在多宿主网络中,当需要分离前端和后端流量时,这非常有用。|false
[注] 有关格式化 pod 参数的更多信息,请参阅"将 Pod 分配给节点"。== 示例配置 您可以使用以下属性配置选项在定义时 `TridentOrchestrator`自定义您的安装。.基本自定义配置 [%collapsible%closed] ==== 此示例是在运行后创建的 `cat deploy/crds/tridentorchestrator_cr_imagepullsecrets.yaml`命令,表示一个基本的自定义安装:[source,yaml] ---- apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullSecrets: - thisisasecret ---- ==== .Node selectors [%collapsible%closed] ==== 此示例使用节点选择器安装Trident 。[source,yaml] ---- apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident controllerPluginNodeSelector: nodetype: master nodePluginNodeSelector: storage: netapp ---- ==== .Windows 工作节点 [%collapsible%closed] ==== 此示例是在运行后创建的 `cat deploy/crds/tridentorchestrator_cr.yaml`该命令在 Windows 工作节点上安装Trident 。[source,yaml] ---- apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident windows: true ---- ==== .在 AKS 集群上托管身份 [%collapsible%closed] ==== 此示例安装Trident以在 AKS 集群上启用托管身份。[source,yaml] ---- apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident cloudProvider: "Azure" ---- ==== .在 AKS 集群上使用云身份 [%collapsible%closed] ==== 此示例安装Trident以便在 AKS 集群上使用云身份。[source,yaml] ---- apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident cloudProvider: "Azure" cloudIdentity: 'azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx' ---- ==== .在 EKS 集群上使用云身份 [%collapsible%closed] ==== 此示例安装Trident以便在 AKS 集群上使用云身份。[source,yaml] ---- apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident cloudProvider: "AWS" cloudIdentity: "'eks.amazonaws.com/role-arn: arn:aws:iam::123456:role/trident-role'" ---- ==== .GKE 云身份 [%collapsible%closed] ==== 此示例安装Trident以便在 GKE 集群上使用云身份。[source,yaml] ---- apiVersion: trident.netapp.io/v1 kind: TridentBackendConfig metadata: name: backend-tbc-gcp-gcnv spec: version: 1 storageDriverName: google-cloud-netapp-volumes projectNumber: '012345678901' network: gcnv-network location: us-west2 serviceLevel: Premium storagePool: pool-premium1 ---- ==== .Trident 控制器和Trident Linux 节点 Pod 的 Kubernetes 资源请求和限制配置 [%collapsible%closed] ==== 此示例TridentTrident控制器和Trident Linux 节点 Pod 的 Kubernetes 资源请求和限制。警告:免责声明:本示例中提供的请求和限制值仅用于演示目的。请根据您的环境和工作负载需求调整这些值。[source,yaml] ---- apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullSecrets: - thisisasecret resources: controller: trident-main: requests: cpu: 10m memory: 80Mi limits: cpu: 200m memory: 256Mi # sidecar csi-provisioner: requests: cpu: 2m memory: 20Mi limits: cpu: 100m memory: 64Mi csi-attacher: requests: cpu: 2m memory: 20Mi limits: cpu: 100m memory: 64Mi csi-resizer: requests: cpu: 3m memory: 20Mi limits: cpu: 100m memory: 64Mi csi-snapshotter: requests: cpu: 2m memory: 20Mi limits: cpu: 100m 内存:64Mi trident-autosupport:请求:CPU:1m 内存:30Mi 限制:CPU:50m 内存:128Mi 节点:linux:trident-main:请求:CPU:10m 内存:60Mi 限制:CPU:200m 内存:256Mi # sidecar node-driver-registrar:请求:CPU:1m 内存:10Mi 限制:CPU:50m 内存:32Mi ---- ==== .Trident 控制器以及Trident Windows 和 Linux 节点 pod 的Trident资源请求和限制配置 [%collapsible%closed] ==== 此示例配置Trident控制器以及Trident Windows 和 Linux 节点 pod 的 Kubernetes 资源请求和限制。警告:免责声明:本示例中提供的请求和限制值仅用于演示目的。请根据您的环境和工作负载需求调整这些值。[source,yaml] ---- apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullSecrets: - thisisasecret windows: true resources: controller: trident-main: requests: cpu: 10m memory: 80Mi limits: cpu: 200m 内存:256Mi # sidecar csi-provisioner:请求:CPU:2M 内存:20Mi 限制:CPU:100M 内存:64Mi csi-attacher:请求:CPU:2M 内存:20Mi 限制:CPU:100M 内存:64Mi csi-resizer:请求:CPU:3M 内存:20Mi 限制:CPU:100M 内存:64Mi csi-snapshotter:请求:CPU:2M 内存:20Mi 限制:CPU:100M 内存:64Mi trident-autosupport:请求:CPU:1M 内存:30Mi 限制:CPU:50M 内存:128Mi 节点:linux:trident-main:请求:CPU:10M 内存:60Mi 限制:CPU:200M 内存:256Mi # sidecars node-driver-registrar:请求:CPU:1m 内存:10Mi 限制:CPU:50m 内存:32Mi windows:trident-main:请求:CPU:6m 内存:40Mi 限制:CPU:200m 内存:128Mi # sidecar node-driver-registrar:请求:CPU:6m 内存:40Mi 限制:CPU:100m 内存:128Mi liveness-probe:请求:CPU:2m 内存:40Mi 限制:CPU:50m 内存:64Mi ---- ==== |