Skip to main content
本产品推出了新版本。
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

手动部署Trident操作员(标准模式)

贡献者

您可以手动部署Trident操作员以安装Astra Trident。此过程将处理适用场景 安装、其中、Astra Trident所需的容器映像不会存储在专用注册表中。如果您有私有映像注册表,请使用"脱机部署过程"

有关Astra Trdent的重要信息24.06

您必须阅读以下有关Astra Trident的重要信息。

<strong> 中有关Astra </strong> 的信息
  • 现在、Asta三端磁盘支持Kubbernetes 1.31。在升级Kubernetes之前升级Trident。

  • Asta Trident严格强制在SAN环境中使用多路径配置、并在Multipath.conf文件中使用建议值 find_multipaths: no

    使用非多路径配置或在Multipath.conf文件中使用 find_multipaths: yes`或 `find_multipaths: smart`值将导致挂载失败。自21.07版本以来、Trident已建议使用 `find_multipaths: no

手动部署Trident操作员并安装Trident

查看"安装概述"以确保满足安装前提条件、并为您的环境选择了正确的安装选项。

开始之前

开始安装之前、请登录到Linux主机并验证它是否正在管理一个正常运行的、"支持的 Kubernetes 集群"以及您是否具有所需的Privileges。

备注 对于OpenShift,请在下面的所有示例中使用 oc`而不是 `kubectl,并首先通过运行或 oc login -u kube-admin`以*system:admin*身份登录 `oc login -u system:admin
Details
  1. 验证Kubernetes版本:

    kubectl version
  2. 验证集群管理员权限:

    kubectl auth can-i '*' '*' --all-namespaces
  3. 验证您是否可以从Docker Hub启动使用映像的POD并通过POD网络访问存储系统:

    kubectl run -i --tty ping --image=busybox --restart=Never --rm -- \
      ping <management IP>

第1步:下载Trident安装程序包

Astra Trident安装程序包包含部署Trident操作员和安装Astra Trident所需的所有内容。从下载并解压缩最新版本的Trident安装程序"GitHub上的_assets_部分"

wget https://github.com/NetApp/trident/releases/download/v24.06.0/trident-installer-24.06.0.tar.gz
tar -xf trident-installer-24.06.0.tar.gz
cd trident-installer

第2步:创建 `TridentOrchestrator`CRD

创建 TridentOrchestrator`自定义资源定义(CRD)。您将稍后创建 `TridentOrchestrator`自定义资源。在中使用适当的CRD YAML版本创建 `TridentOrchestrator`CRD `deploy/crds

kubectl create -f deploy/crds/trident.netapp.io_tridentorchestrators_crd_post1.16.yaml

第3步:部署TRIdent操作员

Astra Trident安装程序提供了一个包文件、可用于安装操作员和创建关联对象。使用此捆绑包文件可以轻松地部署操作员并使用默认配置安装Astra Trident。

  • 对于运行Kubbernetes 1.24的集群,请使用 bundle_pre_1_25.yaml

  • 对于运行Kubernetes 1.25或更高版本的集群,请使用 bundle_post_1_25.yaml

开始之前
  • 默认情况下、Trident安装程序会在命名空间中部署操作员 trident。如果此 `trident`命名空间不存在、请使用以下命令创建它:

    kubectl apply -f deploy/namespace.yaml
  • 要在命名空间以外的命名空间中部署运算符 trident,请 clusterrolebinding.yaml`使用更新 `serviceaccount.yaml`和 `operator.yaml`并生成捆绑包文件 `kustomization.yaml

    1. 使用以下命令创建 kustomization.yaml、其中_Kubornet_是或 `bundle_post_1_25.yaml`基于您的<bundle.yaml> `bundle_pre_1_25.yaml`版本。

      cp deploy/kustomization_<bundle.yaml> deploy/kustomization.yaml
    2. 使用以下命令编译捆绑包、其中_Kubornet_为或 `bundle_post_1_25.yaml`基于您的<bundle.yaml> `bundle_pre_1_25.yaml`版本。

      kubectl kustomize deploy/ > deploy/<bundle.yaml>
步骤
  1. 创建资源并部署操作员:

    kubectl create -f deploy/<bundle.yaml>
  2. 验证是否已创建操作员、部署和副本集。

    kubectl get all -n <operator-namespace>
重要说明 在 Kubernetes 集群中只能有 * 一个操作符实例 * 。请勿创建 Trident 操作员的多个部署。

第4步:创建 `TridentOrchestrator`并安装Trident

现在、您可以创建 TridentOrchestrator`并安装Astra Trident。您也可以选择"自定义Trident安装"使用规范中的属性 `TridentOrchestrator

kubectl create -f deploy/crds/tridentorchestrator_cr.yaml
tridentorchestrator.trident.netapp.io/trident created

kubectl describe torc trident

Name:        trident
Namespace:
Labels:      <none>
Annotations: <none>
API Version: trident.netapp.io/v1
Kind:        TridentOrchestrator
...
Spec:
  Debug:     true
  Namespace: trident
Status:
  Current Installation Params:
    IPv6:                      false
    Autosupport Hostname:
    Autosupport Image:         netapp/trident-autosupport:24.06
    Autosupport Proxy:
    Autosupport Serial Number:
    Debug:                     true
    Image Pull Secrets:
    Image Registry:
    k8sTimeout:           30
    Kubelet Dir:          /var/lib/kubelet
    Log Format:           text
    Silence Autosupport:  false
    Trident Image:        netapp/trident:24.06.0
  Message:                  Trident installed  Namespace:                trident
  Status:                   Installed
  Version:                  v24.06.0
Events:
    Type Reason Age From Message ---- ------ ---- ---- -------Normal
    Installing 74s trident-operator.netapp.io Installing Trident Normal
    Installed 67s trident-operator.netapp.io Trident installed

验证安装。

可以通过多种方法验证您的安装。

正在使用状态 TridentOrchestrator

的状态 TridentOrchestrator`指示安装是否成功、并显示已安装的Trident版本。在安装期间,的状态 `TridentOrchestrator`将从更 `Installing`改为 `Installed。如果您观察到 `Failed`状态,但操作员无法自行恢复,"检查日志"

状态 说明

安装

操作员正在使用此CR安装Astra Trident TridentOrchestrator

已安装

Astra Trident 已成功安装。

正在卸载

操作人员正在卸载Astra Trident,因为
spec.uninstall=true.

已卸载

Astra Trident 已卸载。

失败

操作员无法安装,修补,更新或卸载 Astra Trident ;操作员将自动尝试从此状态恢复。如果此状态仍然存在,则需要进行故障排除。

正在更新

操作员正在更新现有安装。

错误

`TridentOrchestrator`未使用。另一个已存在。

正在使用POD创建状态

您可以通过查看已创建Pod的状态来确认Astra Trident安装是否已完成:

kubectl get pods -n trident

NAME                                       READY   STATUS    RESTARTS   AGE
trident-controller-7d466bf5c7-v4cpw        6/6     Running   0           1m
trident-node-linux-mr6zc                   2/2     Running   0           1m
trident-node-linux-xrp7w                   2/2     Running   0           1m
trident-node-linux-zh2jt                   2/2     Running   0           1m
trident-operator-766f7b8658-ldzsv          1/1     Running   0           3m

使用 tridentctl

您可以使用 `tridentctl`检查安装的Astra Trident版本。

./tridentctl -n trident version

+----------------+----------------+
| SERVER VERSION | CLIENT VERSION |
+----------------+----------------+
| 24.06.0        | 24.06.0        |
+----------------+----------------+