自定义Trident操作员安装
Trident运算符允许您使用规范中的属性自定义Astra Trident安装 TridentOrchestrator
。如果要在允许的参数之外自定义安装 TridentOrchestrator
、请考虑使用生成自定义YAML清单、 `tridentctl`以便根据需要进行修改。
了解控制器Pod和节点Pod
配置选项
spec.namespace`在中指定 `TridentOrchestrator`以表示安装了Astra Trident的命名空间。此参数 * 安装 Astra Trident 后无法更新 * 。尝试执行此操作会导致 `TridentOrchestrator`状态更改为 `Failed 。Astra Trident不能跨命名空间迁移。
|
此表详细介绍了 `TridentOrchestrator`属性。
参数 | 说明 | 默认 |
---|---|---|
|
用于安装 Astra Trident 的命名空间 |
|
|
为 Astra Trident 启用调试 |
|
|
`ontap-san`和。 `ontap-san-economy`可与Kubnetes非正常节点关闭(NGN)结合使用、使集群管理员能够在节点运行状况不正常时将已挂载卷的工作负载安全地迁移到新节点。 |
|
|
设置为 `true`在Windows工作节点上启用安装。 |
|
|
如果在AKS集群上使用托管身份或云身份、请设置为 |
|
|
在AKS集群上使用云标识时、设置为工作负载标识("azure.Workload .Identity /client-id:XXXXXX-xxxx-xxxx-xxxx-xxxxxxxxxxx")。在EKS集群上使用云身份时、设置为AWS IAM角色("' eks.amazonaws.com/role-arn: arn:aws:iam::::12356:roe/astratriident-roe")。 |
|
|
安装基于 IPv6 的 Astra Trident |
false |
|
Kubernetes 操作超时 |
|
|
不要自动向 NetApp 发送 AutoSupport 捆绑包 |
|
|
AutoSupport 遥测的容器映像 |
|
|
用于发送 AutoSupport 遥测的代理的地址 / 端口 |
|
|
用于卸载 Astra Trident 的标志 |
|
|
要使用的 Astra Trident 日志记录格式 [text , json] |
|
|
要安装的 Astra Trident 映像 |
|
|
内部注册表的路径、格式 |
|
|
主机上的 kubelet 目录的路径 |
|
|
要删除以执行 Astra Trident 完全删除的资源列表 |
|
|
从内部注册表中提取映像的机密信息 |
|
|
设置Trident运算符的映像提取策略。有效值为: |
|
|
Pod的其他节点选择器。遵循与相同的格式 |
无默认值;可选 |
|
覆盖Kubernetes对Pod的容错。遵循与相同的格式 |
无默认值;可选 |
|
Pod的其他节点选择器。遵循与相同的格式 |
无默认值;可选 |
|
覆盖Kubernetes对Pod的容错。遵循与相同的格式 |
无默认值;可选 |
有关格式化POD参数的详细信息,请参阅"将 Pod 分配给节点"。 |
有关强制断开的详细信息
强制分离仅适用于 ontap-san`和 `ontap-san-economy
。在启用强制断开之前、必须在Kubbernetes集群上启用非正常节点关闭(NGN)。有关详细信息,请参阅 "Kubnetes:节点非正常关闭"。
由于Asta Trident依赖于Kubbernetes NGN、因此在重新计划所有不可允许的工作负载之前、请勿从运行状况不正常的节点中删除 `out-of-service`污点。不负责任地应用或删除该问题可能会危及后端数据保护。 |
当Kubenetes集群管理员已将此标记应用 `node.kubernetes.io/out-of-service=nodeshutdown:NoExecute`于节点并 `enableForceDetach`设置为 `true`时,Asta Trident将确定节点状态并:
-
停止挂载到该节点的卷的后端I/O访问。
-
将Astra Trident节点对象标记为
dirty
(对于新出版物不安全)。Trident控制器将拒绝新的发布卷请求,直到节点被Trident节点POD重新认定(标记为后)为止 dirty
。只有在Astra Trident能够验证使用已挂载PVC计划的任何工作负载(即使在集群节点运行状况良好且已准备就绪之后)(对于新发布的产品来说是安全的)后、此类工作负载才会被接受clean
。
在恢复节点运行状况并删除此污染后、Asta Trident将:
-
确定并清除节点上陈旧的已发布路径。
-
如果此节点处于某个 `cleanable`状态(已删除服务中断、并且此节点处于 `Ready`状态)、并且所有过时的已发布路径均已清理、则Asta Trident会将此节点重新提交为、并允许新的已发布卷访问此 `clean`节点。
配置示例
定义时、您可以使用中的属性配置选项来自定义 `TridentOrchestrator`安装。
基本自定义配置
这是一个基本自定义安装示例。
cat deploy/crds/tridentorchestrator_cr_imagepullsecrets.yaml apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullSecrets: - thisisasecret
节点选择器
此示例将安装具有节点选择器的Asta Trdent。
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident controllerPluginNodeSelector: nodetype: master nodePluginNodeSelector: storage: netapp
Windows工作节点
此示例将A作用 于Windows工作节点上。
cat deploy/crds/tridentorchestrator_cr.yaml apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident windows: true
AKS集群上的受管身份
此示例将安装A作用 于在AKS集群上启用受管身份。
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident cloudProvider: "Azure"
AKS集群上的云身份
此示例将在AKS集群上安装用于云身份的Asta Dent。
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集群上的云身份
此示例将在AKS集群上安装用于云身份的Asta Dent。
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/astratrident-role'"