이름별로 기존 Google Cloud 리소스 가져오기 및 내보내기
이 페이지에서는 config-connector export
명령어와 이를 사용해서 Google Cloud 리소스를 구성 커넥터 YAML 파일로 내보내고 이후에 이를 구성 커넥터로 가져오는 방법을 설명합니다.
config-connector export
를 사용하여 기존 Google Cloud 리소스를 내보낼 수 있습니다. 리소스의 전체 이름을 config-connector export
로 전달하면 config-connector
가 구성 커넥터로 가져올 수 있는 YAML 매니페스트를 생성합니다.
구성 커넥터로 가져오려는 Google Cloud 리소스와 이미 이름이 같은 리소스가 존재하는 경우 구성 커넥터는 리소스를 제어하고 제공된 YAML로 관리합니다. 제공된 YAML에 변경할 수 없는 필드에 대한 변경사항이 있거나 구성에 다른 문제가 없는 한 구성 커넥터는 이 상황에서 오류를 생성하지 않습니다.
시작하기 전에
시작하기 전에 config-connector
도구를 설치합니다.
내보내기 예시
이 예시에서는 Google Cloud CLI로 PubSubTopic을 만들고 이를 Config Connector로 가져옵니다.
sample-topic
이라는 주제를 만듭니다.gcloud pubsub topics create sample-topic
주제가 생성되었다는 확인이 표시됩니다.
Created topic [projects/PROJECT_ID/topics/sample-topic].
출력에서
PROJECT_ID
는 Google Cloud 프로젝트로 대체됩니다.주제의 Google Cloud 리소스 ID를 가져오고 다음 명령어를 사용하여 이를 환경 변수에 저장합니다.
TOPIC_RESOURCE_ID=$(gcloud pubsub topics describe sample-topic --format "value(name)")
리소스를 식별하기 위해
config-connector export
는 전체 리소스 이름을 사용합니다. 다음 명령어를 사용해서 주제의 리소스 이름을 환경 변수에 저장합니다.TOPIC_RESOURCE_NAME="//pubsub.googleapis.com/${TOPIC_RESOURCE_ID}"
다음 명령어를 실행하여
config-connector export
로 주제를 내보냅니다.config-connector export ${TOPIC_RESOURCE_NAME}
출력은 YAML 형식의 Config Connector 리소스입니다.
--- apiVersion: pubsub.cnrm.cloud.google.com/v1beta1 kind: PubSubTopic metadata: annotations: cnrm.cloud.google.com/project-id: PROJECT_ID name: sample-topic ...
출력에서
PROJECT_ID
는 Google Cloud 프로젝트로 대체됩니다.kubectl apply -f -
로 이 리소스를 Config Connector로 전달할 수 있습니다. 리소스를 직접 전달하려면 다음 명령어를 실행합니다.config-connector export ${TOPIC_RESOURCE_NAME} | kubectl apply -f - --namespace CC_NAMESPACE
CC_NAMESPACE
를 Config Connector가 관리하는 리소스의 네임스페이스로 바꿉니다.Config Connector가 리소스를 가져옵니다.
Config Connector가
kubectl describe
로 리소스를 관리하는지 확인합니다.kubectl describe pubsubtopic sample-topic --namespace CC_NAMESPACE
CC_NAMESPACE
를 Config Connector가 관리하는 리소스의 네임스페이스로 바꿉니다.
지원되는 리소스
다음 명령어를 실행하여 리소스 이름 형식과 함께 config-connector
도구의 리소스 목록을 출력할 수 있습니다.
config-connector print-resources
명령줄 옵션
config-connector export
명령어의 옵션은 다음과 같습니다.
config-connector export RESOURCE_NAME \
--output FILENAME \
--oauth2-token TOKEN \
--iam-format [policy | policymember | none] \
--filter-deleted-iam-members [true | false] \
--verbose
--output
: 선택적인 출력 파일 경로이며, 표준 출력을 사용 중지합니다. 파일일 때는 결과에 모든 명령어 결과가 포함되며, 디렉터리일 때는 출력의 각 리소스에 대한 새 파일이 디렉터리에 포함됩니다.--oauth2-token
: Google Cloud ID의 OAUTH2 토큰입니다. 기본적으로config-connector
에는 Google Cloud CLI 기본 사용자 인증 정보가 사용됩니다.--iam-format
: 내보내기에서 IAM 리소스 출력의 종류를 지정합니다. 옵션은policy
(기본값),policymember
,none
입니다.--filter-deleted-iam-members
: 삭제된 IAM 원칙을 필터링할지 여부를 지정합니다. 옵션은true
또는false
입니다. 기본값은false
입니다.--verbose
: 상세 로깅을 사용 설정합니다.
다음 단계
- Config Connector의 기존 Google Cloud 리소스 가져오기 방법 알아보기
- Config Connector가 지원하는 리소스 알아보기