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

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

贡献者

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

有关Astra Trdent 23.04的重要信息

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

<strong> 中有关Astra </strong> 的信息
  • 现在、在Trident中支持Kubnetes 1.27。在升级Kubernetes之前升级Trident。

  • Astra Trident会严格强制在SAN环境中使用多路径配置、建议值为 find_multipaths: no 在multipath.conf文件中。

    使用非多路径配置或 find_multipaths: yesfind_multipaths: smart multipath.conf文件中的值将导致挂载失败。Trident已建议使用 find_multipaths: no 自21.07版起。

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

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

开始之前

开始安装之前、请登录到Linux主机并验证它是否正在管理一个正常运行的、 "支持的 Kubernetes 集群" 并且您拥有必要的特权。

备注 使用OpenShift oc 而不是 kubectl 在下面的所有示例中、运行以*系统:admin*身份登录 oc login -u system:adminoc login -u kube-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/v23.04.0/trident-installer-23.04.0.tar.gz
tar -xf trident-installer-23.04.0.tar.gz
cd trident-installer

第2步:创建 TridentOrchestrator CRD

创建 TridentOrchestrator 自定义资源定义(CRD)。您将创建 TridentOrchestrator 稍后自定义资源。使用中相应的CRD YAML版本 deploy/crds 以创建 TridentOrchestrator CRD。

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

第3步:部署Trident操作员

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

  • 对于运行Kubornetes 1.24或更早版本的集群、请使用 bundle_pre_1_25.yaml

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

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

    kubectl apply -f deploy/namespace.yaml
  • 在非命名空间中部署操作员 trident 命名空间、更新 serviceaccount.yamlclusterrolebinding.yamloperator.yaml 并使用生成捆绑包文件 kustomization.yaml

    1. 创建 kustomization.yaml 使用以下命令、其中_<bundle>_为 bundle_pre_1_25bundle_post_1_25 根据您的Kubbernetes版本。

      cp kustomization_<bundle>.yaml kustomization.yaml
    2. 使用以下命令编译分发包、其中_Data <bundle>是 bundle_pre_1_25bundle_post_1_25 根据您的Kubbernetes版本。

      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:23.04
    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:23.04.0
  Message:                  Trident installed  Namespace:                trident
  Status:                   Installed
  Version:                  v23.04.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 status

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

Status Description

安装

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

已安装

Astra Trident 已成功安装。

正在卸载

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

已卸载

Astra Trident 已卸载。

失败

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

正在更新

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

error

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 |
+----------------+----------------+
| 23.04.0        | 23.04.0        |
+----------------+----------------+