애플리케이션 관리

App Design Center의 템플릿에서 애플리케이션 초안을 만들면 테스트 및 프로덕션과 같은 환경에 대해 별도의 애플리케이션 인스턴스를 맞춤설정하고 배포할 수 있습니다. 애플리케이션 초안을 만들 때 애플리케이션을 분류하고 필터링하는 속성을 지정하고, 구성요소와 연결을 구성하고, 원하는 경우 생성된 Terraform 코드를 수정합니다. 요구사항이 변경되면 새 버전을 만들고 배포된 리소스가 더 이상 필요하지 않으면 애플리케이션을 삭제할 수도 있습니다.

시작하기 전에

이 문서의 작업을 수행하려면 관리자에게 다음 표에 나열된 대로 앱 지원 폴더 또는 관리 프로젝트에 필요한 역할을 부여해 달라고 요청하세요.

작업 필요한 역할
애플리케이션 초안 생성, 구성, 수정, 버전 관리 애플리케이션 디자인 센터 관리자 (roles/designcenter.admin) 또는
애플리케이션 관리자 (roles/designcenter.applicationAdmin) 또는
애플리케이션 편집자 (roles/designcenter.applicationEditor)
애플리케이션 삭제 애플리케이션 디자인 센터 관리자 (roles/designcenter.admin) 또는
애플리케이션 관리자 (roles/designcenter.applicationAdmin)

역할에 대한 자세한 내용은 IAM으로 액세스 제어를 참조하세요.

애플리케이션 초안 만들기

세부정보를 지정하고 선택적으로 구성요소 구성을 재정의하여 템플릿에서 애플리케이션 초안을 만듭니다. 그런 다음 초안을 배포하여 애플리케이션을 만들 수 있습니다.

디자인 캔버스

  1. 탐색 메뉴에서 다음 중 하나를 수행합니다.

  2. 사용하려는 템플릿 ID를 클릭합니다.

  3. 디자인 캔버스에서 앱 구성을 클릭합니다. 그런 다음 새 애플리케이션 만들기를 클릭합니다.

  4. 애플리케이션 이름 영역에서 다음을 수행하여 애플리케이션의 이름을 지정하고 설명합니다.

    1. 이름 필드에 이 공간의 고유 식별자를 입력합니다. 예를 들어 web-app-staging와 같은 고유한 이름과 환경 조합을 사용합니다. 필수 입력란입니다.

      소문자, 숫자, 하이픈을 포함하여 최대 63자(영문 기준)를 사용할 수 있습니다. 이름은 소문자로 시작해야 하고 하이픈으로 끝나면 안 됩니다. 이름은 변경할 수 없습니다.

    2. 표시 이름 필드에Google Cloud 콘솔에 표시할 이름을 입력합니다.

    3. 설명 필드에 이 애플리케이션의 목적을 입력합니다.

  5. 프로젝트 ID 필드가 비어 있는 구성요소의 기본 프로젝트를 설정하려면 배포 프로젝트 목록에서 프로젝트를 선택합니다. 폴더 수준 경계에서 프로젝트는 다음 자격을 갖추어야 합니다.

    구성요소의 프로젝트 ID 필드에 이미 프로젝트가 지정되어 있으면 이 설정 대신 해당 프로젝트가 사용됩니다.

  6. 리전 목록에서 구성요소가 배포된 리전을 선택합니다. 구성요소 리전은 다음을 기준으로 적용됩니다.

    • 애플리케이션 범위가 전역 (기본값)인 경우 리전이 아직 구성되지 않은 구성요소에 적용됩니다.

    • 애플리케이션 범위가 리전인 경우 리전이 모든 구성요소에 적용됩니다.

  7. 환경 목록에서 이 애플리케이션을 배포할 환경을 선택합니다. 예를 들어 배포가 TEST에서 예상대로 작동하는지 확인해야 할 수 있습니다.

  8. 중요도 목록에서 비즈니스에 미치는 영향의 정도를 선택합니다. 예를 들면 LOW 또는 HIGH입니다.

  9. 소유자를 지정하려면 소유자 영역에서 소유자 추가를 클릭하고 다음에 대해 표시 이름 및 이메일을 입력합니다.

    • 비즈니스 소유자 영역에서 품질 및 사용자 기대치를 담당하는 소유자를 입력합니다.

    • 개발자 소유자 영역에서 개발 및 코딩을 담당하는 소유자를 입력합니다.

    • 운영자 소유자 영역에서 애플리케이션 운영을 담당하는 소유자를 입력합니다.

  10. 범위 목록에서 다음 중 하나를 선택합니다.

    • 전역 (기본값): 애플리케이션에 전역 리소스가 포함되거나 리소스가 여러 리전에 있습니다.

    • 리전: 모든 리소스가 단일 리전에 있습니다.

    필수 입력란입니다. 자세한 내용은 전역 및 리전 애플리케이션 비교를 참조하세요.

  11. 애플리케이션 만들기를 클릭합니다. 애플리케이션 세부정보가 표시됩니다.

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 create APPLICATION \
      --project=PROJECT \
      --location=LOCATION \
      --space=SPACE \
      --source-application-template-revision=SOURCE_APPLICATION_TEMPLATE_REVISION \
      --scope-type=SCOPE_TYPE
    

    다음을 바꿉니다.

    • APPLICATION: 만들려는 애플리케이션 초안의 애플리케이션 ID입니다.
    • PROJECT: 관리 프로젝트 ID입니다.
    • LOCATION: 애플리케이션 리전입니다.
    • SPACE: 스페이스 ID입니다.
    • SOURCE_APPLICATION_TEMPLATE_REVISION: 애플리케이션 템플릿 URI입니다. 예를 들면 projects/PROJECT/locations/LOCATION/spaces/SPACE/applicationTemplates/APPLICATION_TEMPLATE/revisions/REVISION입니다.
    • SCOPE_TYPE: 애플리케이션의 범위입니다. regional 또는 global 중 하나입니다. 애플리케이션 범위가 'global, the region is applied to components that don't already have a configured region. If the application scope isregional`인 경우 리전이 모든 구성요소에 적용됩니다.

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

구성요소 및 연결 구성

애플리케이션의 각 구성요소에 대해 리소스가 생성되는 프로젝트, 배포되는 위치와 같은 구성 세부정보를 지정할 수 있습니다.

기본 구성이 요구사항을 충족하지 않는 경우 연결 세부정보를 수정할 수도 있습니다. 예를 들어 환경 변수 키 이름을 수정하거나, 연결 포트를 변경하거나, 서비스 계정에 추가 역할을 추가할 수 있습니다.

지원되는 리소스마다 필요한 세부정보를 구성해야 합니다.

구성요소와 연결을 구성하려면 다음 단계를 따르세요.

디자인 캔버스

  1. 디자인 캔버스에서 구성요소를 클릭합니다.

  2. 구성 영역의 프로젝트 ID 목록에서 리소스를 배포할 프로젝트를 선택합니다. 다음 자격 요건을 충족하는 프로젝트를 선택합니다.

  3. 리소스의 추가 설정을 구성합니다. 예를 들어 Cloud SQL의 경우 다음을 구성할 수 있습니다.

    • 리전
    • 백업 구성
    • 데이터베이스 플래그
    • IP 구성

    각 구성요소의 구성 문서 링크는 지원되는 리소스를 참조하세요.

  4. 디자인 캔버스에서 구성요소를 연결하면 기본 구성 값이 연결을 만드는 데 사용됩니다. 연결 세부정보를 추가하거나 수정하려면 다음을 수행합니다.

    1. 디자인 캔버스에서 두 구성요소 간의 연결을 클릭합니다. 연결 패널이 열리고 연결 매개변수가 표시됩니다.

    2. 다음 중 하나를 수행합니다.

      • 기존 연결 파라미터를 수정하려면 수정을 클릭합니다.

      • 새 연결 파라미터를 추가하려면 파라미터 추가를 클릭합니다.

    3. 키 및 값 필드를 업데이트합니다. 예를 들어 다음 세부정보를 수정할 수 있습니다.

      • 애플리케이션 요구사항에 맞게 조정할 환경 변수 키 이름
      • 연결 포트 값입니다.
      • 서비스 계정에 추가된 역할입니다.
  5. 저장을 클릭합니다.

gcloud CLI

  1. 애플리케이션을 설명하여 구성요소 파라미터를 확인하고 애플리케이션에 필요한 파라미터를 식별합니다.

     gcloud design-center spaces applications describe APPLICATION \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --format='yaml(name,componentParameters)'
    

    다음을 바꿉니다.

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

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

  2. 수정하려는 각 구성요소에 대해 홈 디렉터리에 파라미터 값이 포함된 JSON 파일을 만듭니다.

    예를 들어 Cloud Run 구성요소에 대해 다음 파일을 만들 수 있습니다.

      {
        "component": "projects/PROJECT/locations/us-central1/spaces/SPACE/applicationTemplates/APPLICATION_TEMPLATE/components/COMPONENT",
        "parameters": [
           {
              "key": "service_name",
              "value": "frontend-service"
           },
           {
              "key": "project_id",
              "value": "DEPLOYMENT_PROJECT"
           }
        ]
      }
    
  3. 필수 매개변수를 구성하도록 애플리케이션을 업데이트합니다.

     gcloud design-center spaces applications update APPLICATION \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --component-parameters=COMPONENT_FILE_PATH_1
    

    다음을 바꿉니다.

    • APPLICATION: 애플리케이션 ID입니다.
    • PROJECT: 관리 프로젝트 ID입니다.
    • LOCATION: 애플리케이션 리전입니다.
    • SPACE: 스페이스 ID입니다.
    • COMPONENT_FILE_PATH_1: 구성요소 매개변수가 포함된 JSON 파일입니다. 추가 JSON 파일마다 다른 --component-parameter 인수와 값을 추가합니다.

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

배포 단계는 애플리케이션 배포를 참조하세요.

보안 규정 준수 확인

애플리케이션의 보안 평가를 수행하여 Security Command Center 프레임워크에 대해 구성을 검증할 수 있습니다. 이 종합 평가에서는 다음을 평가합니다.

  • 구성요소 구성 값: 템플릿에서 자동으로 상속된 구성 설정 또는 이 애플리케이션에 대해 수정한 설정입니다.
  • 애플리케이션 매개변수: 배포 리전 또는 환경과 같이 애플리케이션에 제공되는 인스턴스별 세부정보입니다.
  • 허용되는 구성요소: 조직에서 사용할 수 있는 현재 애플리케이션의 서비스 및 워크로드입니다.

애플리케이션은 템플릿에서 Security Command Center 프레임워크를 상속합니다. 먼저 관리자가 애플리케이션 템플릿에 보안 프레임워크를 연결해야 합니다. 그런 다음, 애플리케이션에서 보안 규정 준수를 평가하려면 다음을 수행합니다.

gcloud CLI

  gcloud alpha design-center spaces applications preview APPLICATION \
  --project=PROJECT \
  --location=LOCATION \
  --space=SPACE \
  --generate-assessment-report=true

다음을 바꿉니다.

  • APPLICATION: 평가하려는 애플리케이션의 애플리케이션 ID입니다.
  • PROJECT: 관리 프로젝트 ID입니다.
  • LOCATION: 애플리케이션 리전입니다.
  • SPACE: 스페이스 ID입니다.

출력에는 템플릿의 연결된 프레임워크를 기반으로 애플리케이션의 평가 보고서가 표시됩니다.

Terraform 코드 수정

애플리케이션은 설계 및 구성 세부정보를 반영하는 Terraform 코드를 생성합니다. Terraform을 수정하여 구성요소 구성 세부정보를 지정할 수 있습니다.

시스템에서 다음 Terraform 파일을 생성합니다.

  • main.tf: 템플릿의 각 구성요소에 대한 모듈이 포함된 인프라 코드입니다.
  • outputs.tf: 배포된 인프라 구성요소에 대한 정보를 노출합니다.
  • variables.tf: main.tf 파일에 사용되는 변수의 이름, 유형, 설명을 선언합니다.
  • input.tfvars: main.tf 파일에 사용되는 변수의 값을 정의합니다.
  • providers.tf: Terraform이 Google Cloud API 및 리소스와 상호작용하는 데 도움이 되는 라벨을 정의합니다.

배경 정보는 Google Cloud의 Terraform 개요를 참조하세요.

Terraform 코드를 수정하려면 다음을 수행합니다.

  1. 디자인 캔버스에서 코드를 클릭합니다. 시스템에 생성된 Terraform 파일이 표시됩니다.

  2. main.tf를 클릭합니다. 시스템은 각 구성요소의 Terraform 모듈을 표시합니다.

  3. 구성 세부정보를 수정합니다. 자세한 내용은 지원되는 각 리소스의 구성 문서를 참조하세요.

    시스템은 수정사항을 자동으로 검증하고 수정사항이 잘못된 경우 오류를 표시합니다.

  4. 수정사항을 강조 표시하고 비교하려면 다음 단계를 따르세요.

    1. 차이점 보기를 클릭합니다.

    2. 변경사항을 되돌리려면 여백에서 변경사항을 되돌리려면 클릭을 클릭합니다.

    3. 차이 보기를 클릭하여 비교 뷰를 닫습니다.

  5. 수정사항을 저장하려면 코드 변경사항 저장을 클릭합니다.

  6. 변경사항을 확인하려면 다음 단계를 따르세요.

    1. 디자인을 클릭합니다.
    2. 구성요소를 클릭하고 구성 세부정보를 검토합니다.

애플리케이션 버전 만들기

애플리케이션 버전을 만들어 세부정보 또는 구성요소를 수정합니다. App Design Center 외부에서 애플리케이션 구성요소를 수정하면 재배포 시 변경사항이 유지되지 않습니다.

애플리케이션 버전을 만들려면 다음 안내를 따르세요.

디자인 캔버스

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

    애플리케이션으로 이동

  2. 표에서 수정하려는 애플리케이션 이름을 클릭합니다.

  3. 애플리케이션 세부정보를 수정하려면 다음을 수행합니다.

  4. 수정을 클릭하고 세부정보를 수정합니다.

  5. 저장을 클릭하여 변경사항을 저장합니다.

  6. 이 애플리케이션에서 구성요소를 수정하려면 다음을 수행합니다.

    1. 디자인 캔버스에서 구성요소를 클릭하고 구성 영역에서 세부정보를 수정합니다.

    2. 저장을 클릭하여 변경사항을 저장합니다.

gcloud CLI

구성요소 및 연결 구성을 참조하세요.

배포 단계는 애플리케이션 배포를 참조하세요.

애플리케이션 삭제

애플리케이션이 더 이상 필요하지 않으면 삭제할 수 있습니다. 예를 들어 애플리케이션을 배포하여 TEST 환경에서 템플릿을 확인한 후 애플리케이션을 삭제할 수 있습니다.

다음 애플리케이션을 삭제할 수 있습니다.

  • 배포되지 않은 애플리케이션 애플리케이션 페이지에서 상태가 초안으로 표시됩니다.
  • TEST, DEVELOPMENT 또는 STAGING 환경에 배포된 애플리케이션입니다.

애플리케이션을 삭제하면 다음이 발생합니다.

  • 애플리케이션 세부정보가 애플리케이션 디자인 센터에서 삭제됩니다.
  • 기본 App Hub 애플리케이션이 삭제됩니다.
  • 배포한 경우 리소스가 삭제됩니다.

애플리케이션을 삭제하려면 다음 안내를 따르세요.

디자인 캔버스

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

    애플리케이션으로 이동

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

  3. 작업을 클릭하고 애플리케이션 삭제를 선택합니다.

  4. 삭제 필드에 애플리케이션 이름을 입력합니다.

  5. 삭제를 클릭합니다.

gcloud CLI

애플리케이션을 삭제합니다.

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

다음을 바꿉니다.

다음 단계