빠른 시작: Bicep을 사용하여 azd Python 웹 템플릿으로 배포된 서비스 크기 조정하기

Python 웹 azd 템플릿을 사용하면 새 웹 애플리케이션을 빠르게 만들고 Azure 배포할 수 있습니다. azd 템플릿은 저렴한 Azure 서비스 옵션을 사용합니다. 시나리오에 맞게 템플릿에 정의된 각 서비스에 대한 서비스 수준 또는 버전을 조정합니다.

이 빠른 시작에서는 적절한 Bicep 템플릿 파일을 업데이트하여 기존 서비스를 확장합니다. 그런 다음 azd provision 명령을 실행하고 Azure 배포에 대한 변경 내용을 확인합니다.

필수 조건

Azure 구독 - 무료로 생성하기

로컬 컴퓨터에 다음 도구를 설치합니다.

템플릿 배포

시작하려면 정상적으로 작동하는 azd 배포 환경이 필요합니다. 배포를 설정한 후 azd 템플릿에서 생성하는 Bicep 파일을 수정할 수 있습니다.

  1. 빠른 시작 문서의 1~7단계를 따릅니다. 2단계에서 템플릿을 azure-django-postgres-flexible-appservice 사용합니다. 편의를 위해 명령줄에서 실행할 명령의 전체 시퀀스는 다음과 같습니다.

    mkdir azdtest
    cd azdtest
    azd init --template azure-django-postgres-flexible-appservice
    azd auth login
    azd up
    

    azd up 완료되면 Azure 포털을 열고 새 리소스 그룹에 배포한 Azure App Service 이동합니다. App Service 가격 책정 계획(App Service 계획의 Overview 페이지, Essentials 섹션, 평가 계획 값 참조)을 기록해 둡니다.

  2. 빠른 시작 문서의 1단계에서 azdtest 폴더를 만들었습니다. Visual Studio Code에서 해당 폴더를 엽니다.

  3. 탐색기 창에서 인프라 폴더로 이동합니다. 인프라 폴더의 하위 폴더 및 파일을 확인합니다.

    main.bicep 파일은 실행 azd up 하거나 azd provision실행할 때 배포된 모든 서비스의 생성을 오케스트레이션합니다. db.bicep 및 web.bicep과 같은 다른 파일을 호출합니다. 이러한 파일은 \core 하위 폴더에 포함된 파일을 호출합니다.

    \core 하위 폴더는 많은 Azure 서비스에 대한 Bicep 템플릿을 포함하는 깊이 중첩된 폴더 구조입니다. 세 개의 최상위 Bicep 파일(main.bicep, db. bicep 및 web입니다. bicep)는 \core 하위 폴더의 일부 파일을 참조합니다. 일부 파일은 이 프로젝트에서 전혀 사용되지 않습니다.

Bicep 속성을 수정하여 서비스 크기 조정

SKU를 변경하여 배포에서 기존 리소스의 크기를 조정할 수 있습니다. 이 크기 조정 방법을 보여 주려면 App Service 계획을 기본 서비스 계획 (트래픽 요구 사항이 낮고 고급 자동 크기 조정 및 트래픽 관리 기능이 필요하지 않은 앱용으로 설계됨)에서 프로덕션 워크로드를 실행하도록 설계된 표준 서비스 계획으로 변경합니다.

비고

배포 후에는 모든 SKU를 변경할 수 없습니다. 크기 조정 옵션을 더 잘 이해하려면 몇 가지 연구가 필요할 수 있습니다.

  1. web.bicep 파일을 열고 모듈 정의를 찾습니다appServicePlan. 특히 속성 설정을 확인하세요.

       sku: {
          name: 'B1'
       }
    

    값을 B1S1 다음과 같이 변경합니다.

       sku: {
          name: 'S1'
       }
    

    중요합니다

    이 변경으로 시간당 가격이 약간 증가합니다. 다양한 서비스 계획 및 관련 비용에 대한 자세한 내용은 App Service 가격 책정 페이지를 참조하세요.

  2. Azure 애플리케이션을 이미 배포했다고 가정할 때 다음 명령을 사용하여 애플리케이션 코드 자체를 다시 배포하지 않고 인프라에 변경 내용을 배포합니다.

    azd provision
    

    위치 및 구독에 대한 메시지가 표시되지 않아야 합니다. .azure<environment-name.env> 파일은 해당 값을 저장합니다. 여기서 <environment-name> 는 사용자가 제공한 azd init환경 이름입니다.

  3. azd provision 완료되면 웹 애플리케이션이 여전히 작동하는지 확인합니다. 또한 리소스 그룹에 대한 App Service 계획을 찾아 가격 책정 계획이 표준 서비스 계획(S1)으로 설정되어 있는지 확인합니다.

이 빠른 시작은 여기에서 끝납니다. 그러나 많은 Azure 서비스는 더 확장 가능하고 프로덕션이 가능한 애플리케이션을 빌드하는 데 도움이 될 수 있습니다. 학습을 시작하기에 좋은 곳은 Azure API Management, Azure Front Door, Azure CDN 및 Azure Virtual Network입니다.

리소스 정리

azd down 명령을 실행하여 템플릿이 만든 리소스를 정리합니다.

azd down

이 azd down 명령은 Azure 리소스 및 GitHub Actions 워크플로를 삭제합니다. 메시지가 표시되면 리소스 그룹과 연결된 모든 리소스를 삭제하는 데 동의합니다.

azdtest 폴더를 삭제하거나 프로젝트의 파일을 수정하여 자체 애플리케이션의 기준으로 사용할 수도 있습니다.