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 state
를userState`변경합니다. 또는 파일을 사용하여 업데이트할 수도 `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을 사용하여 백엔드 관리 수행"참조하십시오.
-
예: *
파일을 사용하여 를 업데이트하려면 다음 단계를 userState
backend.json
수행하십시오.
-
backend.json`값이 'uspended'로 설정된 필드를 포함하도록 파일을 `userState
편집합니다. -
업데이트된 파일의 경로와 명령을 사용하여 백엔드를
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", }
명령을 사용하여 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 은 지정된 폴더에서만 검색합니다.