apigeectl

apigeectl은 Kubernetes 클러스터에서 Apigee Hybrid를 설치하고 관리할 수 있는 명령줄 인터페이스(CLI)입니다. apigeectl 다운로드 및 설치에 대한 자세한 내용은 apigeectl 다운로드 및 설치를 참조하세요.

apigeectl 적용 범위

apigeectl 플래그를 사용하면 명령어가 구성 변경사항을 적용할 범위를 제어할 수 있습니다. Apigee Hybrid 런타임 내 범위 개요는 런타임 서비스 구성 개요를 참조하세요.

범위구성요소apigeectl 플래그
스토리지 Cassandra ‑‑datastore
인메모리 스토리지 Redis ‑‑redis
환경 런타임
동기화 담당자
UDCA
‑‑all‑envs
‑‑env
Organization Apigee Connect 에이전트
MART
Watcher
‑‑org
보고 Logger
측정항목
‑‑telemetry

apigeectl 구문

apigeectl [command] [flags]

각 항목의 의미는 다음과 같습니다.

  • command: 수행할 작업을 지정합니다. 전체 명령어 목록은 apigeectl 명령어를 참조하세요.

  • flags: 명령어 매개변수를 지정합니다. 전체 플래그 목록은 apigeectl 플래그를 참조하세요.

apigeectl 명령어

다음 표에는 apigeectl 명령어가 나와 있습니다.

명령어 설명
apply

Apigee Hybrid 런타임 구성요소 구성을 Kubernetes 클러스터에 적용합니다.

플래그가 없는 apigeectl apply은 클러스터의 모든 구성요소에 변경사항을 적용합니다.

apigeectl 플래그: ‑‑all‑envs, ‑‑datastore, ‑‑dry‑run, ‑‑env, ‑f, ‑‑file‑override‑config, ‑‑help, ‑‑org, ‑‑print‑yaml, ‑‑redis, ‑‑settings virtualhosts, ‑‑telemetry,‑‑v

check‑ready

하이브리드 구성요소 포드의 상태를 확인합니다. 모든 구성요소 포드가 준비되면 '모든 컨테이너 준비됨' 메시지가 출력됩니다. 자동 스크립팅의 경우 컨테이너가 모두 준비되면 명령어가 상태 0으로 종료됩니다. 하나 이상의 포드가 준비되지 않은 경우 명령어가 상태 1로 종료됩니다.

apigeectl 플래그: ‑f, ‑‑file‑override‑config, ‑‑help, ‑‑v

delete

클러스터에서 하이브리드 구성요소를 삭제합니다. ‑‑all 플래그를 사용하여 모든 구성요소를 삭제합니다. ‑‑all을 생략하면 Apigee 관련 구성요소만 삭제됩니다(apigeectl init로 설치된 구성요소는 삭제되지 않음). Apigee 관련 구성요소는 apply 명령어로 설치되는 구성요소입니다.

선택적인 플래그가 없는 apigeectl deletedelete 명령어를 클러스터에 배포된 모든 구성요소에 적용합니다.

apigeectl diagnostic delete ‑f OVERRIDES_FILEapigeectl diagnostic으로 생성된 apigee‑diagnostic 네임스페이스를 삭제합니다. ‑f/‑‑file‑override‑config 플래그가 apigeectl diagnostic delete와 함께 필요합니다.

apigeectl 플래그: ‑‑all, ‑‑all‑envs, ‑‑datastore, ‑‑env, ‑f, ‑‑file‑override‑config, ‑‑help, ‑‑org, ‑‑redis, ‑‑telemetry, ‑‑v

diagnostic

필요에 따라 Apigee Hybrid 인스턴스의 Kubernetes 구성요소에서 진단 데이터를 캡처하고 이를 Google Cloud Storage 버킷에 저장하는 진단 수집기를 호출합니다.

진단 수집기에는 이름 지정된 Google Cloud Storage 버킷, 스토리지 관리자 역할이 있는 서비스 계정, overrides 파일에 추가된 diagnostic: 스탠자가 필요합니다. 다음을 참조하세요.

진단 수집기를 호출하면 'apigee‑diagnostic' Kubernetes 네임스페이스가 생성됩니다. 진단 수집기를 다시 호출하려면 먼저 apigeectl diagnostic delete로 이를 삭제해야 합니다.

진단 수집기를 호출합니다.

apigeectl diagnostic ‑f OVERRIDES_FILE

진단 수집기를 삭제합니다.

apigeectl diagnostic delete ‑f OVERRIDES_FILE

apigeectl 플래그: ‑‑file‑override‑config

encode

지정된 조직 또는 지정된 조직 내 지정된 환경의 모든 ApigeeDeployment의 인코딩된 이름 목록을 반환합니다. 인코딩된 이름에는 조직의 해시된 이름이 있는 구성요소 이름이 포함되며, ‑‑env 플래그를 사용하면 환경의 해시된 이름이 포함됩니다. Apigee Hybrid는 네임스페이스 충돌을 방지하기 위해 조직 및 환경의 해시된 이름을 만듭니다.

‑‑org org‑name 하나 또는 ‑‑env env‑name 플래그와 ‑‑org org‑name 모두를 encode로 사용해야 합니다. 예를 들면 다음과 같습니다.

./apigeectl encode ‑‑org hybrid‑example
List of ApigeeDeployments are:
  apigee‑connect‑agent‑hybrid‑example‑6a82f8a
  apigee‑mart‑hybrid‑example‑6a82f8a
  apigee‑watcher‑hybrid‑example‑6a82f8a
./apigeectl encode ‑‑org hybrid‑example ‑‑env example‑env
List of ApigeeDeployments are:
  apigee‑runtime‑hybrid‑example‑example‑env‑9e87e2d
  apigee‑synchronizer‑hybrid‑example‑example‑env‑9e87e2d
  apigee‑udca‑hybrid‑example‑example‑env‑9e87e2d

apigeectl 플래그: ‑‑env, ‑‑org

help 온라인 도움말을 인쇄합니다.
init

apigee-system 네임스페이스에 Apigee Operator와 CRD를 설치합니다.

apigeectl apply을 실행하기 전에 신규 설치 또는 업그레이드 후 apigeectl init를 실행합니다.

apigeectl 플래그: ‑f, ‑‑file‑override‑config, ‑‑help, ‑‑v

version CLI 버전 정보를 출력합니다.

apigeectl 플래그: ‑‑help

apigeectl 플래그

다음 표에는 apigeectl 플래그가 나와 있습니다.

플래그 설명
‑‑all delete만 해당: ASM(Istio)과 cert-manager를 제외한 전체 Apigee Hybrid 설치를 클러스터에서 삭제합니다.
‑‑all‑envs

재정의 구성 파일에 지정된 조직의 모든 환경에 apigeectl 명령어를 적용합니다.

‑‑datastore

Datastore 범위(Cassandra)에 구성을 적용합니다.

‑‑dry‑run 클러스터를 변경하지 않고 지정된 명령어를 실행합니다. ‑‑print‑yaml과 함께 사용하여 렌더링된 객체 사양을 파일에 출력합니다.

‑‑dry‑run은 실행 중인 kubectl 버전에 따라 다음 두 값 중 하나와 함께 사용해야 합니다. gcloud version을 사용하여 kubectl 버전을 확인합니다.

  • kubectl 버전 1.17.x 이하: ‑‑dry‑run=true
  • kubectl 버전 1.18.x 이상: ‑‑dry‑run=client
‑‑env env‑name

지정된 환경에 구성을 적용합니다. 이 플래그는 apigee-runtime, apigee-synchronizer, apigee-udca 환경 범위 구성요소에 구성을 적용합니다.

‑‑env‑‑org 플래그와 함께 사용해야 합니다. 예를 들면 다음과 같습니다.

apigeectl apply ‑‑org hybrid‑example ‑‑env example‑env \
      ‑f overrides/overrides.yaml
‑f
‑‑file‑override‑config
하이브리드 배포의 커스텀 구성 속성을 포함하는 YAML 파일을 지정합니다. 기본값은 ./overrides.yaml입니다. apply, check‑ready, delete, init 명령어에 재정의 파일이 필요합니다.

이 플래그에는 전체 경로를 지정해야 합니다. 자세한 내용은 런타임 영역 구성요소 관리를 참조하세요.

‑h
‑‑help
명령어에 대한 도움말을 표시합니다.
‑‑org

지정된 조직에 구성을 적용합니다. 이 플래그는 apigee-connect-agent, apigee-mart, apigee-watcher 조직 범위 구성요소에 구성을 적용합니다.

‑‑print‑yaml 구성 템플릿 출력을 stdout에 인쇄합니다. 이 플래그를 사용하는 예시는 구성을 파일로 인쇄를 참조하세요.
‑‑redis

메모리 내 데이터 스토리지 범위(Redis)에 구성을 적용합니다.

‑‑restore

overrides.yaml 파일의 restore 구성에서 snapshotTimestamp 속성으로 지정된 이전에 저장된 스냅샷으로 Cassandra를 복원합니다. 백업은 overrides.yaml 파일의 backup 구성에 따라 Cloud Storage 버킷 또는 원격 서버로부터 복원됩니다. 자세한 내용은 백업에서 리전 복원을 참조하세요.

‑s
‑‑settings virtualhosts

명령어가 적용되는 구성을 지정합니다. 현재 이 플래그는 runtime 구성요소의 일부인 virtualhosts 구성에서만 지원됩니다. virtualhosts 속성만 변경하는 경우 이 플래그를 사용합니다.

예를 들어 재정의 파일의 virtualhosts 구성을 변경하는 경우 다음 명령어로 클러스터에 적용합니다.

apigeectl apply ‑f my‑overrides.yaml ‑‑settings virtualhosts \
    ‑‑org example‑org ‑‑env example‑env
‑‑telemetry

apigee-logger 및 apigee-metrics와 같은 원격 분석 구성요소의 구성을 적용합니다.

‑‑v int

상세 로그를 std err에 출력합니다. int는 세부정보 수준을 설정하는 정수입니다. ‑‑v에서 int는 필수 항목입니다. 이 옵션은 kubectl ‑‑v 옵션과 동일하게 동작합니다.

참고: 이 옵션은 지원 중단된 ‑‑verbose 옵션을 대체합니다.

예시

클러스터 구성 초기화

init를 사용하여 클러스터에 기본 요건 구성요소 구성을 적용합니다. apply 전에 init 명령어를 실행해야 합니다.

apigeectl init ‑f my_overrides.yaml

클러스터 구성 적용

하이브리드 구성을 Kubernetes 클러스터에 적용하려면 apply 명령어를 사용합니다. apply를 처음 실행하면 모든 하이브리드 런타임 구성요소가 클러스터에 생성됩니다. 구성을 변경하는 경우 apply를 다시 실행하여 변경사항만 적용하거나, 플래그를 사용하여 특정 범위에만 변경사항을 적용합니다.

다음 예시에서는 하이브리드 런타임 영역 구성요소 구성을 클러스터에 적용합니다.

apigeectl apply ‑f my_overrides.yaml

단일 구성요소에 구성 적용

apply 명령어를 특정 구성요소로 제한하려면 apigeectl 플래그에 설명된 플래그를 사용합니다.

다음 예에서는 Cassandra 구성요소의 구성만 적용합니다.

apigeectl apply ‑‑datastore ‑f my_overrides.yaml

구성을 파일로 출력

설치 문제를 디버깅하는 경우 구성 설정을 검사할 수 있도록 전체 클러스터 구성을 파일에 인쇄하는 것이 유용합니다. ‑‑print‑yaml 플래그는 하이브리드 구성을 stdout으로 인쇄하며 ‑‑dry‑run 플래그를 사용하면 클러스터를 변경하지 않고 명령어를 실행할 수 있습니다.

apigeectl apply ‑f my_overrides.yaml ‑‑dry‑run=client ‑‑print‑yaml > apigee‑hybrid.yaml

포드 상태 확인

다음 예시에서는 클러스터에 배포된 포드의 상태를 확인합니다.

apigeectl check‑ready ‑f overrides/overrides.yaml
All containers ready in namespace 'my-namespace'

클러스터에서 하이브리드 삭제

다음 예시에서는 Kubernetes 클러스터에서 하이브리드 런타임 구성요소만 삭제합니다. 모든 항목을 삭제하려면 ‑‑all 플래그를 사용합니다.

apigeectl delete ‑f my_overrides.yaml