애플리케이션 배포

템플릿에서 애플리케이션 초안을 만든 후 애플리케이션을 배포할 수 있습니다. App Design Center를 사용하여 애플리케이션을 배포하면 애플리케이션이 App Hub에 자동으로 등록됩니다. 배포 프로세스를 통해 다음 작업을 수행할 수 있습니다.

  • Terraform이 인프라에 적용할 변경사항을 미리 봅니다.
  • 애플리케이션에 필요한 Google Cloud 리소스 API를 사용 설정합니다.
  • 배포 문제를 조사합니다.
  • 원격 분석 데이터를 사용하여 리소스 성능을 분석합니다.
  • 애플리케이션에 템플릿 버전을 식별하고 적용합니다.

이 문서는 애플리케이션에 템플릿 버전을 배포, 관리, 적용하는 데 도움이 됩니다.

시작하기 전에

앱 지원 폴더 또는 관리 프로젝트에 다음 역할 중 하나가 있어야 합니다.

  • 애플리케이션 관리자 (roles/designcenter.applicationAdmin)
  • 애플리케이션 운영자 (roles/designcenter.applicationOperator)

서비스 계정으로 애플리케이션을 배포하려면 다음 중 하나가 있어야 합니다.

  • 애플리케이션 및 기본 리소스를 배포하도록 구성한 자체 서비스 계정. 자세한 내용은 서비스 계정에 역할 부여를 참조하세요.
  • 프로젝트 IAM 관리자 (roles/resourcemanager.projectIamAdmin) 역할( 앱 지원 폴더). 이 역할을 사용하면 배포 중에 새 서비스 계정을 만들 수 있습니다.

애플리케이션 배포

서비스 계정 옵션을 선택하고 애플리케이션을 배포합니다. 애플리케이션을 배포하면 리소스가 생성되고 이러한 리소스와 관련된 요금이 발생하기 시작합니다. Google Cloud

디자인 캔버스

  1. 탐색 메뉴에서 애플리케이션 을 클릭합니다.

    애플리케이션으로 이동

  2. 표에서 애플리케이션 이름 을 클릭합니다.

  3. 애플리케이션 세부정보 페이지에서 세부정보를 검토하고 수정 을 클릭하여 변경합니다.

  4. 배포 를 클릭합니다.

  5. 다음 서비스 계정 중 하나를 선택하여 애플리케이션을 배포합니다.

    • 서비스 계정 선택: 서비스 계정 필드에 기존 서비스 계정의 이름을 입력합니다. 서비스 계정을 구성하려면 서비스 계정에 역할 부여를 참조하세요.

    • 새 서비스 계정 만들기: 서비스 계정에 필요한 배포 역할을 할당하는 데 사용되는 프로젝트 IAM 관리자 (roles/resourcemanager.projectIamAdmin) 역할이 있어야 합니다.

  6. 계속 을 클릭합니다.

  7. Terraform이 인프라에 적용할 변경사항을 미리 보려면 다음 단계를 따르세요.

    1. 미리보기 를 클릭합니다.

    2. 변경사항을 검토하고 복사 후 닫기 를 클릭합니다. 미리보기가 클립보드에 복사됩니다.

    3. 미리보기를 저장하려면 원하는 문서에 붙여넣고 저장합니다.

  8. API 검토 영역에서 애플리케이션에 필요한 API 목록을 검토합니다. 배포 시 API가 자동으로 사용 설정됩니다.

  9. 배포 를 클릭합니다. 배포가 완료되면 애플리케이션 세부정보 및 배포 상태가 표시됩니다.

  10. 배포에 문제가 있는 경우 다음 단계를 따르세요.

    1. 애플리케이션 세부정보 패널에서 배포 를 클릭합니다.

    2. 오류 메시지를 검토합니다.

    3. 로그 보기 를 클릭하여 자세한 빌드 정보를 확인합니다.

    4. 배포 오류를 해결하기 위한 제안을 보려면 배포 문제 해결 (미리보기)을 클릭합니다.

      자세한 내용은 배포 문제 해결 및 수정을 참조하세요.

  11. 배포된 애플리케이션을 관리하려면 애플리케이션 세부정보 보기를 참조하세요.

gcloud CLI

  1. 배포하기 전에 애플리케이션을 미리 보고 Terraform 코드를 확인합니다. 이 작업을 완료하는 데 몇 분 정도 걸릴 수 있습니다. 다음 중 하나를 수행합니다.

    • 서비스 계정을 자동으로 만들려면 다음 명령어를 사용합니다.

      gcloud design-center spaces applications preview APPLICATION \
      --project=PROJECT \
      --location=LOCATION \
      --space=SPACE \
      --create-sa \
      --service-account=SERVICE_ACCOUNT
      
    • 자체 서비스 계정을 사용하려면 다음 명령어를 사용합니다.

      gcloud design-center spaces applications preview APPLICATION \
      --project=PROJECT \
      --location=LOCATION \
      --space=SPACE \
      --service-account=SERVICE_ACCOUNT
      

    다음을 바꿉니다.

    • APPLICATION: 애플리케이션 ID입니다.
    • PROJECT: 관리 프로젝트 ID입니다.
    • LOCATION: 애플리케이션 리전입니다.
    • SPACE: 공간 ID입니다.
    • SERVICE_ACCOUNT: 다음 중 하나를 수행합니다.
      • 새 서비스 계정을 만들려면 서비스 계정의 이름을 제공합니다.
      • 자체 서비스 계정을 사용하려면 projects/PROJECT/serviceAccounts/EMAIL_ADDRESS 형식으로 전체 리소스 이름을 제공합니다.

    자세한 내용은 gcloud design-center spaces applications preview를 참조하세요.

  2. 애플리케이션을 비동기식으로 배포하고 전체 작업 이름을 복사합니다. 다음 중 하나를 수행합니다.

    • 서비스 계정을 자동으로 만들려면 다음 명령어를 사용합니다.

       gcloud design-center spaces applications deploy APPLICATION \
       --project=PROJECT \
       --location=LOCATION \
       --space=SPACE \
       --create-sa \
       --service-account=SERVICE_ACCOUNT \
       --async
      
    • 자체 서비스 계정을 사용하려면 다음 명령어를 사용합니다.

       gcloud design-center spaces applications deploy APPLICATION \
       --project=PROJECT \
       --location=LOCATION \
       --space=SPACE \
       --service-account=SERVICE_ACCOUNT \
       --async
      

    다음을 바꿉니다.

    • APPLICATION: 애플리케이션 ID입니다.
    • PROJECT: 관리 프로젝트 ID입니다.
    • LOCATION: 애플리케이션 리전입니다.
    • SPACE: 공간 ID입니다.
    • SERVICE_ACCOUNT: 다음 중 하나를 수행합니다.
      • 새 서비스 계정을 만들려면 서비스 계정의 이름을 제공합니다.
      • 자체 서비스 계정을 사용하려면 projects/PROJECT/serviceAccounts/EMAIL_ADDRESS 형식으로 전체 리소스 이름을 제공합니다.

    자세한 내용은 gcloud design-center spaces applications deploy를 참조하세요.

  3. 배포를 완료하는 데 몇 분 정도 걸립니다. 배포 상태를 추적합니다.

    gcloud design-center operations describe OPERATION\
    --project=PROJECT \
    --location=LOCATION
    

    다음을 바꿉니다.

    • OPERATION: 에서 복사한 전체 작업 이름이며 형식은 projects/PROJECT/locations/LOCATION/operations/operation-<var>OPERATION_ID</var>입니다.deploy
    • PROJECT: 관리 프로젝트 ID입니다.
    • LOCATION: 애플리케이션 리전입니다.

    자세한 내용은 gcloud design-center operations describe를 참조하세요.

배포 문제 해결 및 수정

애플리케이션 배포가 실패하면 오류 요약을 보고, 세부 분석을 가져오고, 해결 단계를 식별하고, 일부 문제를 자동으로 해결할 수 있습니다.

오류를 해결하고 수정하려면 다음 단계를 따르세요.

  1. 애플리케이션 세부정보 패널에서 배포 를 클릭합니다.

  2. 오류를 분석하고 수정을 제안하려면 배포 문제 해결 을 클릭합니다.

    문제 해결 세부정보 패널에는 배포 오류를 해결하는 데 도움이 되는 문서 제안, 구성 변경사항, 기타 정보가 표시됩니다.

  3. 배포 오류 및 권장사항을 검토합니다.

    1. 분석 결과 구성요소 구성 권장사항이 있는 경우 제안된 변경사항을 검토하고 애플리케이션 업데이트 를 클릭하여 변경사항을 적용합니다.

    2. 분석 결과 다른 권장사항이 있는 경우 시스템에 오류를 해결하기 위해 실행할 수 있는 gcloud CLI 명령어가 표시됩니다. Cloud Shell에서 gcloud CLI 명령어를 실행하려면 명령어 실행 을 클릭합니다.

애플리케이션 세부정보 보기

애플리케이션 배포가 완료되면 관련 정보를 검토할 수 있습니다. 예를 들어 다음을 볼 수 있습니다.

  • 최종 업데이트 시간, 버전 날짜, 리전과 같은 세부정보
  • 서비스 URI와 같은 출력
  • 배포 상태, 오류 정보, 로그 링크

애플리케이션 세부정보를 보려면 다음 단계를 따르세요.

디자인 캔버스

  1. 탐색 메뉴에서 애플리케이션 을 클릭합니다.

    애플리케이션으로 이동

  2. 표에서 애플리케이션 이름 을 클릭합니다. 애플리케이션 세부정보 패널에 다음이 표시됩니다.

    • App Hub에서 앱 보기: App Hub에서 애플리케이션을 조사합니다. 배포된 리소스를 보고 원격 분석 데이터를 검토하여 문제를 진단하고 성능을 분석할 수 있습니다. 자세한 내용은 App Hub 애플리케이션 모니터링을 참조하세요.

    • 앱 세부정보: 최종 업데이트 날짜, 소스 템플릿, 리전, 서비스 계정과 같은 정보를 봅니다.

    • 출력: 애플리케이션 프런트엔드 또는 백엔드와 상호작용하는 데 사용할 수 있는 서비스 URI를 식별합니다.

    • 배포: 배포 상태, 배포 오류, 로그 링크를 검토하여 오류를 해결합니다.

gcloud CLI

gcloud design-center spaces applications describe APPLICATION \
--project=PROJECT \
--location=LOCATION \
--space=SPACE

다음을 바꿉니다.

  • APPLICATION: 애플리케이션 ID입니다.
  • PROJECT: 관리 프로젝트 ID입니다.
  • LOCATION: 애플리케이션 리전입니다.
  • SPACE: 공간 ID입니다.

자세한 내용은 gcloud design-center spaces applications describe를 참조하세요.

배포된 애플리케이션 수정

배포된 애플리케이션을 수정하려면 애플리케이션을 재배포할 때 변경사항이 유지되도록 다음 중 하나를 수행합니다.

템플릿 버전 적용

애플리케이션이 이전에 App Design Center를 사용하여 배포되었고 관리자가 템플릿 버전을 공유한 경우 템플릿 변경사항을 애플리케이션에 적용할 수 있습니다. 애플리케이션을 업데이트하면 애플리케이션 버전이 생성됩니다. 수정된 템플릿에 수정되거나 추가된 구성요소를 구성할 수 있습니다.

Cloud Hub를 사용하여 애플리케이션에 사용 가능한 템플릿 버전을 볼 수 있습니다. 자세한 내용은 배포 보기를 참조하세요.

애플리케이션에 템플릿 버전을 적용하려면 다음 단계를 따르세요.

디자인 캔버스

  1. 탐색 메뉴에서 템플릿 을 클릭합니다.

    템플릿으로 이동

  2. 적용하려는 버전이 포함된 템플릿 ID 를 클릭합니다.

  3. 앱 구성 목록에서 업데이트할 애플리케이션을 선택합니다.

  4. 애플리케이션 세부정보를 수정하고 저장 을 클릭합니다.

  5. 디자인 캔버스에서 각 구성요소를 클릭하고 구성요소 구성을 수정합니다.

  6. 배포 를 클릭합니다. 배포 단계는 애플리케이션 배포를 참조하세요.

gcloud CLI

  1. 최신 버전의 애플리케이션 템플릿 버전 URI를 식별합니다.

     gcloud design-center spaces application-templates describe APPLICATION_TEMPLATE \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --format='yaml(name,latestRevision)'
    

    다음을 바꿉니다.

    • APPLICATION_TEMPLATE: 애플리케이션의 기반이 되는 애플리케이션 템플릿 ID입니다.
    • PROJECT: 관리 프로젝트 ID입니다.
    • LOCATION: 애플리케이션 템플릿 리전입니다.
    • SPACE: 공간 ID입니다.

    자세한 내용은 gcloud design-center spaces application-templates describe를 참조하세요.

  2. latestRevision 출력을 복사합니다.

  3. 애플리케이션 템플릿 버전을 사용하도록 애플리케이션을 업데이트합니다.

     gcloud design-center spaces applications update APPLICATION \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --source-application-template-revision=SOURCE_APPLICATION_TEMPLATE_REVISION
    

    다음을 바꿉니다.

    • APPLICATION: 애플리케이션 ID입니다.
    • PROJECT: 관리 프로젝트 ID입니다.
    • LOCATION: 애플리케이션 리전입니다.
    • SPACE: 공간 ID입니다.
    • SOURCE_APPLICATION_TEMPLATE_REVISION: 애플리케이션 템플릿 URI입니다. 예를 들어 projects/PROJECT/locations/LOCATION/spaces/SPACE/applicationTemplates/APPLICATION_TEMPLATE/revisions/REVISION입니다.

    자세한 내용은 gcloud design-center spaces applications update를 참조하세요.

  4. 애플리케이션에서 새 구성요소 또는 업데이트된 구성요소를 구성하려면 구성요소 및 연결 구성을 참조하세요.

  5. 애플리케이션을 배포할 때 --replace 플래그를 사용합니다. 배포 단계는 애플리케이션 배포를 참조하세요.