컨트롤 플레인 웹 애플리케이션 구성

SAP 자동화 프레임워크 컨트롤 플레인의 일부로 필요한 구성 파일을 만들고 Azure Pipelines를 사용하여 SAP 워크로드 영역 및 시스템을 배포할 수 있도록 하는 대화형 웹 애플리케이션을 선택적으로 만들 수 있습니다.

웹앱 첫 페이지

중요

컨트롤 플레인 웹 애플리케이션은 현재 PREVIEW 상태이며 아직 기본 분기에서 사용할 수 없습니다.

앱 등록 만들기

웹앱을 사용하려면 먼저 인증을 위한 앱 등록을 만들어야 합니다. Azure Cloud Shell을 열고 다음 명령을 실행합니다.

필요에 따라 MGMT를 사용자 환경으로 바꿉니다.

echo '[{"resourceAppId":"00000003-0000-0000-c000-000000000000","resourceAccess":[{"id":"e1fe6dd8-ba31-4d61-89e7-88639da4683d","type":"Scope"}]}]' >> manifest.json 

TF_VAR_app_registration_app_id=$(az ad app create \
    --display-name MGMT-webapp-registration \
    --enable-id-token-issuance true \
    --sign-in-audience AzureADMyOrg \
    --required-resource-access @manifest.json \
    --query "appId" | tr -d '"')

TF_VAR_webapp_client_secret=$(az ad app credential reset \
    --id $TF_VAR_app_registration_app_id --append               \
    --query "password" | tr -d '"')

rm manifest.json

Azure Pipelines를 통해 배포

Azure DevOps를 사용하여 웹앱을 설정하는 방법에 대한 전체 지침은 Azure DevOps Services에서 SAP Deployment Automation Framework 사용을 참조하세요.

컨트롤 플레인을 배포하기 전에 웹앱을 설정하는 데 필요한 단계 요약:

  1. 웹앱 배포 파이프라인(deploy/pipelines/21-deploy-web-app.yaml)을 추가합니다.
  2. 배포하기 전에 TF_VAR_app_registration_app_id 및 TF_VAR_webapp_client_secret 변수를 환경별 변수 그룹에 추가합니다.
  3. 환경별 변수 그룹의 보안 탭을 사용하여 빌드 서비스에 관리자 역할을 할당합니다.
  4. 배포 컨트롤 플레인 파이프라인을 실행할 때 "웹앱 인프라 배포" 옆의 확인란을 선택합니다.

컨트롤 플레인을 배포한 후 웹앱에 액세스하는 데 필요한 단계 요약:

  1. 앱 등록 응답 URL을 업데이트합니다.
  2. 구독 범위가 있는 읽기 권한자 역할을 App Service 시스템이 할당한 관리 ID에 할당합니다.
  3. 웹앱 배포 파이프라인을 실행합니다.
  4. (선택 사항) App Service에 추가 액세스 정책을 추가합니다.

Azure CLI(Cloud Shell)를 통해 배포

Azure CLI를 사용하여 웹앱을 설정하는 방법에 대한 전체 지침은 컨트롤 플레인 배포를 참조하세요.

컨트롤 플레인을 배포하기 전에 웹앱을 설정하는 데 필요한 단계 요약:

  1. 환경 변수 TF_VAR_app_registration_app_id, TF_VAR_webapp_client_secret 및 TF_VAR_use_webapp="true"를 내보냅니다.

컨트롤 플레인을 배포한 후 웹앱에 액세스하는 데 필요한 단계 요약:

  1. 앱 등록 응답 URL을 업데이트합니다.
  2. 구독 범위가 있는 읽기 권한자 역할을 App Service 시스템이 할당한 관리 ID에 할당합니다.
  3. 웹앱 코드의 Zip 파일을 생성합니다.
  4. App Service에 소프트웨어를 배포합니다.
  5. 애플리케이션 설정을 구성합니다.
  6. (선택 사항) App Service에 추가 액세스 정책을 추가합니다.

웹앱 사용

웹앱을 사용하면 SAP 워크로드 영역 개체 및 시스템 인프라 개체를 만들 수 있습니다. 이러한 개체는 본질적으로 Terraform 구성 파일의 또 다른 표현입니다. Azure Pipelines를 사용하여 배포하는 경우 웹앱에서 바로 이러한 워크로드 영역 및 시스템 인프라를 배포할 수 있습니다. Azure CLI를 사용하여 배포하는 경우 만든 모든 가로 또는 시스템 개체에 대한 매개 변수 파일을 다운로드하고 명령줄 배포에서 사용할 수 있습니다.

처음부터 가로 또는 시스템 개체 만들기

  1. 웹 사이트 상단의 "워크로드 영역" 또는 "시스템" 탭으로 이동합니다.
  2. 왼쪽 하단 모서리에 있는 "새로 만들기"를 클릭합니다.
  3. "기본" 및 "고급" 탭에서 필수 매개 변수와 원하는 추가 매개 변수를 작성합니다.
  4. 특정 매개 변수는 기존 Azure 리소스로 채워진 드롭다운입니다.
    • 드롭다운에 대한 결과가 표시되지 않으면 옵션을 보기 전에 다른 드롭다운을 지정해야 할 수 있습니다. 또는 시스템이 할당한 관리 ID에 대해 위의 2단계를 참조하세요.
      • 다른 드롭다운 기능을 사용하도록 설정하기 전에 구독 매개 변수를 지정해야 합니다.
      • 서브넷 드롭다운 기능이 사용하도록 설정되기 전에 network_arm_id 매개 변수를 지정해야 합니다.
  5. 왼쪽 하단에서 제출 선택

파일에서 워크로드 영역 또는 시스템 개체 만들기

  1. 웹 사이트 상단의 "파일" 탭으로 이동합니다.
  2. 옵션은 다음과 같습니다.
    • 브라우저에서 처음부터 새 파일을 만듭니다.
    • 기존 .tfvars 파일을 가져오고(선택 사항) 저장하기 전에 편집합니다.
    • 기존 템플릿을 사용하고(선택 사항) 저장하기 전에 편집합니다.
  3. 파일이 올바른 명명 규칙을 준수하는지 확인합니다.
  4. 워크로드 영역 또는 시스템 개체로 변환하려는 파일 옆에 있는 "변환"을 클릭합니다.
  5. 워크로드 영역 또는 시스템 개체가 해당 탭에 나타납니다.

워크로드 영역 또는 시스템 개체 배포(Azure DevOps Pipelines 배포)

  1. 워크로드 영역 또는 시스템 탭으로 이동합니다.
  2. 배포하려는 워크로드 영역 또는 시스템 옆에 있는 "배포"를 클릭합니다.
    • 파일을 배포하려면 먼저 파일을 워크로드 영역 또는 시스템 개체로 변환합니다.
  3. 필요한 매개 변수를 지정하고 올바른 개체인지 확인합니다.
  4. 배포를 클릭합니다.
  5. 웹앱은 개체에서 '.tfvars' 파일을 자동으로 생성하고, Azure DevOps 리포지토리를 업데이트하고, 워크로드 영역 또는 시스템(인프라) 파이프라인을 시작합니다. Azure DevOps Portal에서 배포를 모니터링할 수 있습니다.