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

使用tridentct利 管理Astra三端

贡献者
https://github.com/NetApp/trident/releases["Trident 安装程序包"^]包含 `tridentctl`命令行实用程序、可用于轻松访问Astra Trident。具有足够权限的Kubornetes用户可以使用它来安装Astra Dent或管理包含Astra Dent Pod的命名空间。

命令和全局标志

您可以运行 tridentctl help`以获取可用命令的列表 `tridentctl、或者将标志附加 `--help`到任何命令以获取该特定命令的选项和标志列表。

tridentctl [command] [--optional-flag]

Astra Trident `tridentctl`实用程序支持以下命令和全局标志。

命令
create

将资源添加到Asta Trdent。

delete

从Asta Trdent中删除一个或多个资源。

get

从Asta三端获取一个或多个资源。

help

有关任何命令的帮助。

images

打印一个表格、其中包含Asta Trident所需的容器图像。

import

将现有资源导入到Asta Trident中。

install

安装 Astra Trident 。

logs

从Asta Trdent打印日志。

send

从Asta Trendent发送资源。

uninstall

卸载Astra trident。

update

在Asta Dent中修改资源。

update backend state

暂时暂停后端操作。

upgrade

升级Asta Trdent中的资源。

version

打印Asta Trdent的版本。

全局标志
-d--debug

调试输出。

-h--help

帮助 tridentctl

-k--kubeconfig string

指定 `KUBECONFIG`在本地或从一个Kubornetes集群到另一个集群运行命令的路径。

备注 或者、您也可以导出此 `KUBECONFIG`变量以指向特定Kubnetes集群、然后向该集群发出 `tridentctl`命令。
-n--namespace string

Astra三端部署的命名空间。

-o--output string

输出格式。json_yaml_name_wide|ps 之一(默认)。

-s--server string

Asta三端REST接口的地址/端口。

警告 可以将 Trident REST 接口配置为仅以 127.0.0.1 (对于 IPv4 )或(:: 1 )(对于 IPv6 )侦听和提供服务。

命令选项和标志

创建

使用 `create`命令将资源添加到Asta Trident。

tridentctl create [option]

选项

backend:将后端添加到Astra Trident。

删除

使用 `delete`命令从Astra Trident中删除一个或多个资源。

tridentctl delete [option]

选项

backend:从Asta Trident中删除一个或多个存储后端。
snapshot:从Astra Trident中删除一个或多个卷快照。
storageclass:从Asta Trident中删除一个或多个存储类。
volume:从Asta Trident中删除一个或多个存储卷。

获取

使用 `get`命令从Asta Trident获取一个或多个资源。

tridentctl get [option]

选项

backend:从Asta Trident获取一个或多个存储后端。
snapshot:从Asta Trident获取一个或多个快照。
storageclass:从Asta Trident获取一个或多个存储类。
volume:从Asta Trident获取一个或多个卷。

标志

-h --help:卷的帮助。
--parentOfSubordinate string:将查询限制为从属源卷。
--subordinateOf string:将查询限制为卷的子卷。

映像

使用 `images`标志打印Astra Trident所需容器映像的表。

tridentctl images [flags]

标志

-h --help:图像帮助。
-v --k8s-version string:Kubornetes集群的语义版本。

导入卷

使用 `import volume`命令将现有卷导入到Astra Trident。

tridentctl import volume <backendName> <volumeName> [flags]

别名

volumev

标志

-f --filename string:YAML或JSON PVC文件的路径。
-h --help:卷的帮助。
--no-manage:仅创建PV/PVC。不要假定卷生命周期管理。

安装

使用 `install`标志安装Astra Trident。

tridentctl install [flags]

标志

--autosupport-image string:AutoSupport遥测的容器图像(默认为“NetApp / Trident AutoSupport:<current-version>”)。
--autosupport-proxy string:用于发送AutoSupport遥测的代理的地址/端口。
--enable-node-prep:尝试在节点上安装所需的软件包。
--generate-custom-yaml:生成YAML文件而不安装任何内容。
-h --help:安装帮助。
--http-request-timeout:覆盖Trident控制器REST API的HTTP请求超时(默认值为1m30s)。
--image-registry string:内部映像注册表的地址/端口。
--k8s-timeout duration:所有KubeNet操作的超时(默认值为3m0)。
--kubelet-dir string:kubelet内部状态的主机位置(默认为"/var/lib/kubelet")。
--log-format string:Astra Trident日志记录格式(文本、json)(默认为“文本”)。
--pv string:Astra Trident使用的原有PV的名称,确保不存在(默认为“Trident”)。
--pvc string:Asta Trident使用的原有PVC的名称,确保不存在(默认为“Trident”)。
--silence-autosupport:不自动向NetApp发送AutoSupport分发包(默认为true)。
--silent:在安装期间禁用大多数输出。
--trident-image string:要安装的Astra Trident映像。
--use-custom-yaml:使用安装目录中的任何现有YAML文件。
--use-ipv6:使用IPv6进行Asta Trident的通信。

日志

使用 `logs`标志从Astra Trident打印日志。

tridentctl logs [flags]

标志

-a --archive:创建包含所有日志的支持归档文件,除非另有说明。
-h --help:日志帮助。
-l --log string:要显示的Asta Trident日志。Trident |自动|Auto-operator|all之一Trident (默认值为"auto")。
--node string:要从中收集节点Pod日志的Kubbernetes节点名称。
-p --previous:获取上一个容器实例(如果存在)的日志。
--sidecars:获取此容器的日志。

发送

使用 `send`命令从Asta Trident发送资源。

tridentctl send [option]

选项

autosupport:将AutoSupport归档发送到NetApp。

卸载

使用 `uninstall`标志卸载Astra Trident。

tridentctl uninstall [flags]

标志

-h, --help:卸载帮助。
--silent:卸载期间禁用大多数输出。

更新

使用 `update`命令修改Asta Trident中的资源。

tridentctl update [option]

选项

backend:在Astra Trident中更新后端。

更新后端状态

使用 `update backend state`命令暂停或恢复后端操作。

tridentctl update backend state <backend-name> [flag]

需要考虑的要点
  • 如果使用TridentBackendConfig (tbc)创建后端、则无法使用文件更新后端 backend.json

  • 如果 userState 已在tbc中设置、则无法使用命令修改 tridentctl update backend state <backend-name> --user-state suspended/normal

  • 通过tbc设置后、要重新获得通过tldentctt设置的功能 userState 、必须从tbc中删除该 userState 字段。可以使用命令来完成此操作 kubectl edit tbc 。删除此字段后 userState 、您可以使用 tridentctl update backend state 命令更改 userState 后端的。

  • 使用 tridentctl update backend state 更改 userState。您还可以使用或文件更新 userState TridentBackendConfig backend.json ;这会触发后端的完全重新初始化、并且可能会非常耗时。

    标志

    -h --help:后端状态帮助。
    --user-state:设置为 suspended`可暂停后端操作。设置为 `normal`可恢复后端操作。当设置为时 `suspended

  • AddVolumeImport Volume 已暂停。

  • CloneVolumeResizeVolume PublishVolume、、 UnPublishVolumeCreateSnapshot GetSnapshot RestoreSnapshotDeleteSnapshot、、 RemoveVolumeGetVolumeExternal ReconcileNodeAccess 保持可用。

您也可以使用后端配置文件或中的字段更新后端状态 userState TridentBackendConfig backend.json。有关详细信息,请参阅 "用于管理后端的选项""使用 kubectl 执行后端管理"

  • 示例: *

JSON

按照以下步骤使用文件更新 userState backend.json

  1. 编辑 backend.json 文件以包含 userState 字段、并将其值设置为"已附加"。

  2. 使用命令和更新后的文件的路径更新后端 tridentctl backend update backend.json

    示例tridentctl backend update -f /<path to backend JSON file>/backend.json

{
    "version": 1,
    "storageDriverName": "ontap-nas",
    "managementLIF": "<redacted>",
    "svm": "nas-svm",
    "backendName": "customBackend",
    "username": "<redacted>",
    "password": "<redacted>",
    "userState": "suspended",
}
YAML

您可以在使用命令应用tbc后对其进行编辑 kubectl edit <tbc-name> -n <namespace> 。以下示例使用选项将后端状态更新为暂停 userState: suspended

apiVersion: trident.netapp.io/v1
kind: TridentBackendConfig
metadata:
  name: backend-ontap-nas
spec:
  version: 1
  backendName: customBackend
  storageDriverName: ontap-nas
  managementLIF: <redacted>
  svm: nas-svm
userState: suspended
  credentials:
    name: backend-tbc-ontap-nas-secret

version

使用 `version`标志可打印的版本 `tridentctl`以及正在运行的Trident服务。

tridentctl version [flags]

标志

--client:仅限客户端版本(不需要服务器)。
-h, --help:版本帮助。