Skip to main content
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

tridentctl을 사용하여 Trident를 관리합니다

기여자

에는 "Trident 설치 프로그램 번들" Trident에 간단하게 액세스할 수 있는 명령줄 유틸리티가 포함되어 tridentctl 있습니다. 충분한 Privileges를 가진 Kubernetes 사용자는 이 툴을 사용하여 Trident를 설치하거나 Trident Pod가 포함된 네임스페이스를 관리할 수 있습니다.

명령 및 글로벌 플래그

실행할 수 있습니다 tridentctl help 에 사용할 수 있는 명령 목록을 가져옵니다 tridentctl 또는 를 추가합니다 --help 특정 명령에 대한 옵션 및 플래그 목록을 가져오려면 임의의 명령에 플래그를 지정합니다.

tridentctl [command] [--optional-flag]

Trident tridentctl 유틸리티는 다음 명령 및 글로벌 플래그를 지원합니다.

명령
create

Trident에 리소스를 추가합니다.

delete

Trident에서 하나 이상의 리소스를 제거합니다.

get

Trident에서 하나 이상의 리소스를 얻습니다.

help

모든 명령에 대한 도움말.

images

Trident에 필요한 컨테이너 이미지 표를 인쇄합니다.

import

기존 리소스를 Trident로 가져옵니다.

install

Trident를 설치합니다.

logs

Trident에서 로그를 인쇄합니다.

send

Trident에서 리소스를 보냅니다.

"제거"를 선택합니다

Trident를 제거합니다.

update

Trident에서 리소스를 수정합니다.

update backend state

백엔드 작업을 일시적으로 중단합니다.

upgrade

Trident에서 리소스를 업그레이드합니다.

'내전'

Trident 버전을 인쇄합니다.

글로벌 플래그
-d, --debug

디버그 출력.

-h, --help

도움말 tridentctl.

-k, --kubeconfig string

를 지정합니다 KUBECONFIG 로컬로 또는 Kubernetes 클러스터 간에 명령을 실행할 수 있는 경로입니다.

참고 또는 를 내보낼 수 있습니다 KUBECONFIG 특정 Kubernetes 클러스터 및 문제를 가리키는 변수 tridentctl 명령을 제공할 수 있습니다.
-n, --namespace string

Trident 배포의 네임스페이스입니다.

-o, --output string

출력 형식. json|YAML|name|wide|ps(기본값) 중 하나.

-s, --server string

Trident REST 인터페이스의 주소/포트입니다.

경고 Trident REST 인터페이스는 127.0.0.1(IPv4의 경우) 또는 [::1](IPv6의 경우)에서만 수신 및 서비스하도록 구성할 수 있습니다.

명령 옵션 및 플래그

생성

명령을 사용하여 create Trident에 리소스를 추가할 수 있습니다.

tridentctl create [option]

옵션

backend: Trident에 백엔드를 추가합니다.

삭제

명령을 사용하여 delete Trident에서 하나 이상의 리소스를 제거할 수 있습니다.

tridentctl delete [option]

옵션

backend: Trident에서 하나 이상의 저장소 백엔드를 삭제합니다.
snapshot: Trident에서 하나 이상의 볼륨 스냅샷을 삭제합니다.
storageclass: Trident에서 하나 이상의 저장소 클래스를 삭제합니다.
volume: Trident에서 하나 이상의 저장소 볼륨을 삭제합니다.

가져오기

명령을 사용하여 get Trident에서 하나 이상의 리소스를 가져옵니다.

tridentctl get [option]

옵션

backend: Trident에서 하나 이상의 스토리지 백엔드를 가져옵니다.
snapshot: Trident에서 하나 이상의 스냅샷을 가져옵니다.
storageclass: Trident에서 하나 이상의 스토리지 클래스를 가져옵니다.
volume: Trident에서 하나 이상의 볼륨을 가져옵니다.

깃발

-h, --help: 볼륨에 대한 도움말입니다.
--parentOfSubordinate string: 하위 원본 볼륨으로 쿼리를 제한합니다.
--subordinateOf string: 볼륨 부하로 쿼리 제한.

이미지

`images`플래그를 사용하여 Trident에 필요한 컨테이너 이미지 테이블을 인쇄합니다.

tridentctl images [flags]

깃발

-h, --help`이미지 도움말.
`-v
, --k8s-version string: Kubernetes 클러스터의 시맨틱 버전입니다.

볼륨 가져오기

명령을 사용하여 import volume 기존 볼륨을 Trident로 가져옵니다.

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

별칭

volume, v

깃발

-f, --filename string`YAML 또는 JSON PVC 파일로 이동합니다.
`-h
, --help: 볼륨에 대한 도움말입니다.
--no-manage:PV/PVC만 생성 볼륨 라이프사이클 관리를 가정하지 마십시오.

설치합니다

`install`플래그를 사용하여 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: 모든 Kubernetes 작업에 대한 시간 초과(기본값 3m0s)
--kubelet-dir string: kubelet의 내부 상태의 호스트 위치(기본값 "/var/lib/kubelet").
--log-format string: Trident logging format (text, json) (default "text").
--node-prep: Trident가 지정된 데이터 스토리지 프로토콜을 사용하여 볼륨을 관리할 Kubernetes 클러스터의 노드를 준비할 수 있도록 합니다. 현재 iscsi 지원되는 유일한 값입니다.
--pv string: Trident에서 사용하는 레거시 PV의 이름으로 이 이름이 존재하지 않는지 확인합니다(기본값 "Trident").
--pvc string: Trident에서 사용하는 레거시 PVC의 이름으로, 이것이 존재하지 않는지 확인합니다 (기본값 "Trident").
--silence-autosupport: AutoSupport 번들을 NetApp에 자동으로 보내지 않습니다(기본값 true).
--silent: 설치하는 동안 MOST 출력을 비활성화합니다.
--trident-image string: 설치할 Trident 이미지입니다.
--use-custom-yaml: 설치 디렉토리에 있는 기존 YAML 파일을 사용합니다.
--use-ipv6: Trident 통신에 IPv6를 사용합니다.

로그

`logs`플래그를 사용하여 Trident에서 로그를 인쇄합니다.

tridentctl logs [flags]

깃발

-a, --archive: 별도로 지정하지 않는 한 모든 로그를 사용하여 지원 아카이브를 생성합니다.
-h, --help:로그에 대한 도움말입니다.
-l, --log string:표시할 Trident 로그. Trident|auto|Trident-operator|all 중 하나(기본값 "auto").
--node string: 노드 Pod 로그를 수집할 Kubernetes 노드 이름입니다.
-p, --previous: 이전 컨테이너 인스턴스가 있는 경우 로그를 가져옵니다.
--sidecars: 사이드카 컨테이너에 대한 로그를 가져옵니다.

전송

명령을 사용하여 send Trident에서 리소스를 보냅니다.

tridentctl send [option]

옵션

`autosupport`AutoSupport 아카이브를 NetApp으로 전송합니다.

설치 제거

`uninstall`플래그를 사용하여 Trident를 제거합니다.

tridentctl uninstall [flags]

깃발

-h, --help: 제거 도움말입니다.
--silent: 제거 중 대부분의 출력을 비활성화합니다.

업데이트

명령을 사용하여 update Trident에서 리소스를 수정합니다.

tridentctl update [option]

옵션

backend: Trident에서 백엔드를 업데이트합니다.

백엔드 상태를 업데이트합니다

를 사용합니다 update backend state 백엔드 작업을 일시 중지하거나 재개하는 명령입니다.

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

고려해야 할 사항
  • TridentBackendConfig(tbc)를 사용하여 백엔드를 생성한 경우 파일을 사용하여 백엔드를 업데이트할 수 backend.json 없습니다.

  • 가 tbc에 설정된 경우 userState 명령을 사용하여 수정할 수 없습니다 tridentctl update backend state <backend-name> --user-state suspended/normal .

  • tbc를 통해 설정한 후 via tridentctl을 userState 다시 설정하려면 userState tbc에서 필드를 제거해야 합니다. 이 작업은 명령을 사용하여 수행할 수 kubectl edit tbc 있습니다. 필드가 제거된 후 userState 명령을 사용하여 백엔드의 을 변경할 userState 수 있습니다 tridentctl update backend state.

  • 를 사용하여 tridentctl update backend stateuserState`변경합니다. 또는 파일을 사용하여 업데이트할 수도 `userState TridentBackendConfig backend.json 있습니다. 이렇게 하면 백엔드의 완전한 재초기화가 트리거되고 시간이 오래 걸릴 수 있습니다.

    깃발

    -h, --help: 백엔드 상태에 대한 도움말입니다.
    --user-state: 로 설정합니다 suspended 백엔드 작업을 일시 중지합니다. 를 로 설정합니다 normal 백엔드 작업을 재개합니다. 를 로 설정한 경우 suspended:

  • AddVolume 그리고 Import Volume 일시 중지되었습니다.

  • CloneVolume ResizeVolume, , PublishVolume, , , , UnPublishVolume CreateSnapshot GetSnapshot RestoreSnapshot, , DeleteSnapshot, , , , RemoveVolume GetVolumeExternal ReconcileNodeAccess 사용 가능 상태를 유지합니다.

백엔드 구성 파일 또는 의 필드를 사용하여 백엔드 상태를 업데이트할 수도 userState TridentBackendConfig `backend.json`있습니다. 자세한 내용은 및 을 "백엔드 관리 옵션" "kubeck을 사용하여 백엔드 관리 수행"참조하십시오.

  • 예: *

JSON을 참조하십시오

파일을 사용하여 를 업데이트하려면 다음 단계를 userState backend.json 수행하십시오.

  1. backend.json`값이 'uspended'로 설정된 필드를 포함하도록 파일을 `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 플래그를 사용하여 의 버전을 인쇄합니다 tridentctl 및 실행 중인 Trident 서비스를 제공합니다.

tridentctl version [flags]

깃발

--client: 클라이언트 버전만(서버가 필요하지 않음).
-h, --help: 버전에 대한 도움말입니다.

플러그인 지원

Tridentctl은 kubectl과 유사한 플러그인을 지원합니다. Tridentctl은 플러그인 바이너리 파일 이름이 "tridentctl-<plugin>" 체계를 따르고 바이너리가 경로 환경 변수를 나열한 폴더에 있는 경우 플러그인을 감지합니다. 검색된 모든 플러그인은 tridentctl 도움말의 플러그인 섹션에 나열됩니다. 필요한 경우 환경 변수 TRIDENTCTL_PLUGIN_PATH에 플러그인 폴더를 지정하여 검색을 제한할 수도 있습니다(예: TRIDENTCTL_PLUGIN_PATH=~/tridentctl-plugins/). 변수가 사용되는 경우, tridenctl 은 지정된 폴더에서만 검색합니다.