gcloud CLI 구성 관리

구성은 Google Cloud CLI 속성을 조합하여 이름을 붙인 것입니다. 이러한 속성은 섹션으로 구성된 gcloud CLI의 동작을 제어하는 키-값 쌍입니다.

일반적으로 구성에 저장되는 속성에는 기본 Compute Engine 영역(zone), 상세 수준, 사용량 보고, 프로젝트 ID, 활성 사용자 또는 서비스 계정이 포함됩니다. 구성을 통해 이러한 속성 및 기타 설정을 그룹으로 정의하고 사용할 수 있습니다.

구성은 사용자 구성 디렉터리(일반적으로 MacOS 및 Linux에서는 ~/.config/gcloud, Windows에서는 %APPDATA%\gcloud)에 저장되며, gcloud info --format='value(config.paths.global_config_dir)'를 실행하여 구성 디렉터리의 위치를 찾을 수 있습니다. CLOUDSDK_CONFIG 환경 변수를 설정하면 구성 디렉터리를 변경할 수 있습니다. 구성 디렉터리에 쓰기가 사용 설정되어 있어야 합니다. 하지만 Cloud Shell을 사용할 경우 gcloud CLI 환경설정은 현재 Cloud Shell 탭에서만 설정되고 세션 간에는 유지되지 않는 임시 tmp 폴더에 저장됩니다.

구성이 여러 개인 경우 구성을 전환하거나 특정 구성을 사용하여 명령어를 실행할 수 있습니다(--configuration 플래그 활용). 구성 전환을 자세히 알아보려면 아래의 구성 활성화 섹션을 참조하세요.

명령줄에서 구성을 확인하려면(사용 가능한 속성 및 해당 섹션의 전체 목록 포함) gcloud topic configurations를 실행하세요.

기본 구성

gcloud CLI를 처음 시작하면 default라는 단일 구성이 제공됩니다. gcloud init 명령어를 실행하거나 gcloud config set를 직접 실행하여 구성에서 속성을 설정할 수 있습니다.

예를 들어 스크립팅 메시지 표시를 중지하려면 다음을 실행합니다.

gcloud config set disable_prompts true

다중 구성

단일 default 구성은 대다수의 사용 사례에 적합합니다. 하지만 추가 구성을 만들고 gcloud config configurations activate를 사용하여 필요에 따라 구성을 전환할 수도 있습니다. 초기 default 구성은 편의를 위해 만들어진 것으로서 특별한 내용이 없습니다. 이 구성 및 다른 추가 구성의 이름을 원하는 대로 지정할 수 있습니다.

다음과 같은 경우에는 다중 구성이 유용합니다.

  • 여러 프로젝트 사용: 프로젝트별로 구성을 만들고 필요에 따라 구성을 전환할 수 있습니다.
  • 여러 승인 계정 사용
  • 일반적으로 독립된 작업 수행: 예를 들어, 구성 1개를 사용하여 한 프로젝트에서는 App Engine 애플리케이션 작업을 수행하고 다른 프로젝트에서는 관련 없는 Compute Engine 인스턴스를 관리할 수 있습니다.

구성 만들기

구성을 만들려면 gcloud config configurations create를 실행합니다.

gcloud config configurations create [NAME]

새 구성을 만든 후 활성화해야 사용할 수 있습니다.

구성 활성화

한 번에 여러 구성 중 1개의 구성만 활성화할 수 있습니다. 활성 구성은 해당 속성이 gcloud CLI의 동작을 제어하는 구성입니다.

새 구성을 활성화하거나 새 활성 구성으로 전환하려면 gcloud config configurations activate를 실행합니다.

gcloud config configurations activate [NAME]

gcloud config list는 항상 활성 구성의 속성을 표시합니다.

단일 명령어 호출의 활성 구성을 변경하려면 gcloud CLI 명령어에서 --configuration 플래그를 사용하면 됩니다.

gcloud auth list --configuration=[CONFIGURATION_NAME]

현재 터미널에서 모든 명령어에 대한 활성 구성을 변경하려면, 사용하려는 구성 이름으로 환경 변수 CLOUDSDK_ACTIVE_CONFIG_NAME을 설정하면 됩니다.

구성 전환 자동화

원활한 구성 변경을 위해 direnvondir와 같은 도구를 활용하여 작업 디렉터리 전환 시 구성을 자동으로 전환할 수 있습니다. 이를 수행하는 한 가지 방법은 프로젝트의 루트 디렉터리에 있는 .envrc 파일에서 필요한 환경 변수(예: CLOUDSDK_ACTIVE_CONFIG_NAME)를 설정하는 것입니다.

구성 나열

gcloud CLI 설치의 구성을 나열하려면 gcloud config configurations list를 실행합니다.

gcloud config configurations list

gcloud CLI가 구성을 나열하고 활성화된 구성을 표시합니다.

NAME         IS_ACTIVE     ACCOUNT            PROJECT               DEFAULT_ZONE  DEFAULT_REGION
default      False         user@gmail.com     example-project-1     us-east1-b    us-east1
project-1    False         user@gmail.com     example-project-2     us-east1-c    us-east1
project-2    True          user@gmail.com     example-project-3     us-east1-b    us-east1

구성 속성 설정

활성 구성의 속성을 설정 및 해제하려면 gcloud config setgcloud config unset를 실행합니다.

gcloud config set project [PROJECT]

gcloud config unset project

CLOUDSDK_SECTION_NAME_PROPERTY_NAME이라는 환경 변수를 통해 속성을 설정할 수도 있습니다. 예를 들어 다음과 같이 core/projectcompute/zone 속성을 설정할 수 있습니다.

CLOUDSDK_CORE_PROJECT=[YOUR_PROJECT_NAME]

CLOUDSDK_COMPUTE_ZONE=[YOUR_ZONE_NAME]

구성 속성 보기

구성 속성을 보려면 gcloud config configurations describe를 실행합니다.

gcloud config configurations describe [NAME]

또는 활성 구성의 속성을 보려면 다음을 실행합니다.

gcloud config list

gcloud CLI가 다음과 같은 구성 속성을 보여줍니다.

is_active: false
name: default
properties:
  compute:
    region: us-east1
    zone: us-east1-b
  core:
    account: user@google.com
    project: example-project

구성 삭제

구성을 삭제하려면 gcloud config configurations delete를 실행합니다.

gcloud config configurations delete [NAME]

활성 구성은 삭제할 수 없습니다. 삭제하기 전에 다른 구성으로 전환해야 하는 경우에는 gcloud config configurations activate를 사용합니다.

다음 단계