App Lifecycle Manager로 애플리케이션 배포

App Lifecycle Manager를 사용하면 다중 구성요소 애플리케이션의 배포 및 수명 주기 관리를 자동화할 수 있으므로 Google Cloud전반에서 일관된 환경을 프로비저닝할 수 있습니다. 이 빠른 시작에서는 Application Design Center에서 Cloud Run 및 Cloud Storage를 사용하여 복합 애플리케이션 템플릿을 모델링한 후 라이브 단위를 프로비저닝합니다.

시작하기 전에

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. Enable the App Lifecycle Manager, Artifact Registry, Cloud Build, Cloud Run, Cloud Storage, Developer Connect, Infrastructure Manager, App Design Center, App Hub, Resource Manager, Identity and Access Management, Cloud Asset Inventory, Cloud Monitoring, Cloud Logging, and Service Health APIs, if any are not already enabled.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

  4. Create a service account:

    1. Ensure that you have the Create Service Accounts IAM role (roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles.
    2. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    3. Select your project.
    4. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    5. Click Create and continue.
    6. Grant the Project > Owner role to the service account.

      To grant the role, find the Select a role list, then select Project > Owner.

    7. Click Continue.
    8. Click Done to finish creating the service account.

  5. App Lifecycle Manager 서비스 계정에 필요한 권한을 부여합니다.
    1. Google Cloud 콘솔에서 App Lifecycle Manager > 개요 > 시작하기로 이동합니다.

      App Lifecycle Manager 시작하기로 이동

    2. App Lifecycle Manager 계정에 필요한 권한이 부여되지 않았습니다라는 메시지가 표시된 배너가 나타나면 권한 부여를 클릭합니다.

복합 템플릿을 사용하여 제품 모델링

App Lifecycle Manager 및 Application Design Center를 사용하여 Cloud Run 서비스를 Cloud Storage 버킷에 연결하는 복합 템플릿 (run-storage-quickstart)을 모델링합니다.

SaaS 제품 구성

  1. Google Cloud 콘솔에서 App Lifecycle Manager > SaaS 제품으로 이동합니다.

    SaaS 제품으로 이동

  2. 만들기를 클릭합니다.

  3. SaaS 솔루션 이름 필드에 run-storage-quickstart-offering를 입력합니다.

  4. 리전 목록에서 다음 리전을 선택한 후 확인을 클릭합니다.

    • us-central1
    • us-east1
    • us-east5
  5. 만들기를 클릭합니다. run-storage-quickstart-offering를 만드는 데 몇 분 정도 걸립니다.

    SaaS 제품이 생성되면 SaaS 제품 세부정보 페이지가 열립니다.

복합 템플릿 만들기

  1. SaaS 제품 세부정보 페이지에서 새 템플릿 만들기를 클릭합니다.
  2. 새 복합 템플릿 만들기 페이지에서 템플릿을 구성합니다.

    1. 템플릿 ID 필드에서 run-storage-quickstart을 입력합니다.
    2. 템플릿 만들기를 클릭합니다.

      App Lifecycle Manager가 복합 템플릿 생성을 완료하면 SaaS 제품 세부정보 페이지의 연결된 애플리케이션 템플릿 섹션에 세부정보가 표시됩니다.

  3. 연결된 애플리케이션 템플릿 섹션에서 템플릿 관리를 클릭한 후 캔버스에서 구성을 클릭합니다.

    Google Cloud 콘솔에서 앱 디자인 센터가 열립니다.

  4. 구성요소 영역에서 다음 구성요소를 디자인 캔버스에 추가합니다.

    1. Cloud Run (서비스)을 클릭하여 cloud-run-1 구성요소를 캔버스에 추가합니다.
    2. Cloud Storage를 클릭하여 cloud-storage-1 구성요소를 캔버스에 추가합니다.
  5. 캔버스에서 cloud-run-1 구성요소에서 cloud-storage-1 구성요소로 드래그하여 연결을 만듭니다.

    구성요소를 연결하면 Cloud Run 서비스 계정이 roles/storage.objectAdmin 역할을 사용하여 Cloud Storage 버킷의 IAM 바인딩에 전달됩니다.

  6. 캔버스에서 cloud-run-1 구성요소를 클릭하여 구성 패널을 엽니다.

    1. 컨테이너 영역에서 컨테이너 1을 펼칩니다.
    2. 컨테이너 이미지 필드에 공개 샘플 컨테이너 이미지 us-docker.pkg.dev/cloudrun/container/hello:latest를 입력합니다.
    3. 저장을 클릭합니다.
  7. 계속 > App Lifecycle Manager로 대규모 배포를 클릭합니다.

    Google Cloud 콘솔에서 App Lifecycle Manager가 열립니다.

  8. 연결된 애플리케이션 템플릿 섹션에서 템플릿 버전 업데이트를 클릭합니다.

  9. 템플릿 버전 업데이트 페이지의 버전 목록에서 r-2을 선택한 후 업데이트를 클릭합니다.

    연결된 애플리케이션 템플릿 섹션에 애플리케이션 템플릿 가져오기가 표시됩니다. 가져오기가 완료되면 단위 종류 탭에 생성된 u-native-components 단위 종류가 나열됩니다.

App Lifecycle Manager를 사용하여 애플리케이션 프로비저닝

  1. run-storage-quickstart-offering의 SaaS 제품 세부정보 페이지에서 프로비저닝을 클릭합니다.

    프로비저닝 페이지가 열립니다.

  2. 프로비저닝 페이지의 리전 목록에서 us-central1을 선택한 후 추가를 클릭합니다.

  3. 프로비저닝할 단위 추가 패널에서 단위를 구성합니다.

    1. 단위 이름 필드에 run-storage-quickstart-unit-1를 입력합니다.
    2. 단위 종류 목록에서 u-native-components 단위 종류를 선택합니다.
    3. 출시 버전 목록에서 템플릿 버전에 대해 생성된 출시 버전을 선택합니다.
    4. 서비스 계정 목록에서 시작하기 전에 섹션에서 만든 작동 서비스 계정을 선택합니다.
  4. 테넌트 프로젝트 변수 추가를 클릭한 다음 리소스를 프로비저닝하는 데 사용할 프로젝트를 선택합니다.

  5. 기타 입력 변수 영역에서 입력 변수 추가를 클릭하고 다음 구성요소 입력 변수의 값을 입력합니다.

    • 이름: cloud-run-1_project_id, 변수 유형: String, 변수 값: 프로젝트 ID
    • 이름: cloud-run-1_location, 변수 유형: String, 변수 값: us-central1
    • 이름: cloud-run-1_service_name, 변수 유형: String, 변수 값: quickstart-web
    • 이름: cloud-storage-1_project_id, 변수 유형: String, 변수 값: 프로젝트 ID
    • 이름: cloud-storage-1_location, 변수 유형: String, 변수 값: us-central1
    • 이름: cloud-storage-1_name, 변수 유형: String, 변수 값: 전역적으로 고유한 버킷 이름(예: PROJECT_ID-quickstart-bkt)
  6. 추가를 클릭합니다. run-storage-quickstart-unit-1 단위가 프로비저닝할 단위 테이블에 표시됩니다.

  7. 프로비저닝을 클릭하여 run-storage-quickstart-unit-1를 배포합니다.

    몇 분 후에 Cloud Run 서비스와 Cloud Storage가 프로비저닝됩니다.

  8. 다른 리전에 추가 단위를 프로비저닝하려면 리전 목록에서 리전을 선택한 후 추가를 클릭합니다.

배포된 단위 보기

App Lifecycle Manager가 단위 및 리소스를 프로비저닝했는지 확인합니다.

  1. Google Cloud 콘솔에서 App Lifecycle Manager > 단위 페이지로 이동합니다.

    단위로 이동

  2. run-storage-quickstart-unit-1 아이콘을 클릭하여 단위 세부정보 페이지를 엽니다.

  3. 단위 세부정보 페이지에서 상태 필드를 확인합니다.

    • 준비됨: Cloud Run 서비스 및 Cloud Storage 버킷이 프로비저닝됩니다.
    • 프로비저닝: 배포 작업이 아직 진행 중입니다.

삭제

이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 다음 단계를 수행합니다.

프로젝트 삭제

새 Google Cloud 프로젝트에 애플리케이션 리소스를 배포한 후 프로젝트가 더 이상 필요하지 않으면 다음 단계를 완료하여 프로젝트를 삭제합니다.

  1. Google Cloud 콘솔에서 리소스 관리 페이지로 이동합니다.

    리소스 관리로 이동

  2. 프로젝트 목록에서 삭제할 프로젝트를 선택하고 삭제를 클릭합니다.
  3. 프롬프트에서 프로젝트 ID를 입력한 후 종료를 클릭합니다.

다음 단계