Tanzu Build Service 사용

참고 항목

Azure Spring Apps는 Azure Spring Cloud 서비스의 새 이름입니다. 서비스에 새 이름이 지정되었지만, 자산을 업데이트하는 동안 스크린샷, 비디오, 다이어그램과 같은 일부 위치에서는 당분간 이전 이름이 표시됩니다.

이 문서의 적용 대상:❌ 기본/표준 ✔️ 엔터프라이즈

이 문서에서는 Azure Spring Apps Enterprise 계획과 함께 VMware Tanzu Build Service를 사용하는 방법을 보여줍니다.

VMware Tanzu Build Service는 엔터프라이즈 규모에서 컨테이너 만들기, 관리 및 거버넌스를 자동화합니다. Tanzu Build Service는 오픈 소스 클라우드 네이티브 Buildpacks 프로젝트를 사용하여 애플리케이션 소스 코드를 컨테이너 이미지로 변환합니다. 최신 컨테이너 표준에 맞춰 재현 가능한 빌드를 실행하고 이미지를 최신 상태로 유지합니다.

빌드팩

VMware Tanzu Buildpacks는 애플리케이션에 대한 프레임워크 및 런타임 지원을 제공합니다. 빌드팩은 일반적으로 애플리케이션을 검사하여 다운로드할 종속성과 바인딩된 서비스와 통신하도록 애플리케이션을 구성하는 방법을 결정합니다.

언어 패밀리 빌드팩은 가장 인기 있는 언어 런타임 및 앱 구성에 대한 간편한 기본 지원을 제공하는 복합 빌드팩입니다. 이러한 빌드팩은 여러 구성 요소 빌드팩을 정렬된 그룹화로 결합합니다. 그룹화는 각 빌드팩의 요구 사항을 충족합니다.

빌더

Builder는 Tanzu Build Service 리소스입니다. Builder에는 소스 코드를 빌드하는 과정에서 사용되는 빌드팩 세트와 스택 이 포함되어 있습니다.

빌드 에이전트 풀

Enterprise 계획의 Tanzu Build Service는 소스 코드와 아티팩트 모두에서 사용자 애플리케이션을 컨테이너화하는 진입점입니다. 지정된 수의 동시 빌드 작업에 대해 컴퓨팅 리소스를 예약하는 전용 빌드 에이전트 풀이 있습니다. 빌드 에이전트 풀은 실행되는 앱과의 리소스 경합을 방지합니다.

다음 표에서는 빌드 에이전트 풀 확장 집합에 사용할 수 있는 크기를 보여 줍니다.

확장 집합 CPU/Gi
S1 2개 vCPU, 4Gi
S2 3개 vCPU, 6Gi
S3 4개 vCPU, 8Gi
S4 5개 vCPU, 10Gi
S5 6개 vCPU, 12Gi
S6 8개 vCPU, 16 Gi
S7 16개 vCPU, 32 Gi
S8 32개 vCPU, 64 Gi
S9 64개 vCPU, 128 Gi

Tanzu Build Service를 사용하면 풀 크기의 빌드 작업이 하나 이상 빌드되고 풀 크기 빌드 작업의 두 배가 큐에 대기할 수 있습니다. 빌드 작업에 대한 에이전트 풀의 할당량이 부족한 경우 이 빌드에 대한 요청에서 다음 오류가 발생합니다. The usage of build results in Building or Queuing status are (cpu: xxx, memory: xxxMi) and the remained quota is insufficient for this build. please retry with smaller size of build resourceRequests, retry after the previous build process completed or increased your build agent pool size.

빌드 에이전트 풀 구성

Azure Portal 사용하여 새 Azure Spring Apps Enterprise 서비스 인스턴스를 만들 때 VMware Tanzu 설정 탭을 사용하여 빌드 에이전트 풀에 지정된 리소스 수를 구성할 수 있습니다.

V M ware Tanzu 설정 탭과 할당된 리소스가 강조 표시된 Azure Spring Apps 만들기 페이지를 보여 주는 Azure Portal의 스크린샷

다음 이미지는 서비스 인스턴스를 성공적으로 프로비전한 후 Tanzu Build 서비스 에이전트 풀에 제공되는 리소스를 보여 줍니다. 서비스 인스턴스를 만든 후 여기에서 구성된 에이전트 풀 크기를 업데이트할 수도 있습니다.

리소스 할당을 편집하는 드롭다운 메뉴가 표시된 빌드 서비스 페이지를 보여 주는 Azure Portal의 스크린샷

주문형 서비스 빌드

Azure Spring Apps Enterprise 계획 인스턴스를 만들 때 빌드 서비스를 사용하거나 사용하지 않도록 설정할 수 있습니다.

빌드 및 배포 특성

기본적으로 Tanzu 빌드 서비스는 컨테이너 레지스트리를 사용할 수 있도록 사용하도록 설정됩니다. 빌드 서비스를 사용하지 않도록 설정하면 사용자 지정 컨테이너 이미지를 통해서만 애플리케이션을 배포할 수 있습니다. 다음과 같은 옵션이 있습니다.

  • 빌드 서비스를 사용하도록 설정하고 Azure Spring Apps 관리 컨테이너 레지스트리를 사용합니다.

    Azure Spring Apps는 애플리케이션용으로 빌드된 이미지를 저장하기 위한 관리 Azure Container Registry를 제공합니다. 빌드와 배포를 하나의 명령으로만 함께 실행할 수 있으며 별도로 실행할 수는 없습니다. 빌드된 컨테이너 이미지를 사용하여 동일한 서비스 인스턴스에만 애플리케이션을 배포할 수 있습니다. 다른 Azure Spring Apps Enterprise 서비스 인스턴스에서는 이미지에 액세스할 수 없습니다.

  • 빌드 서비스를 사용하도록 설정하고 자체 컨테이너 레지스트리를 사용합니다.

    이 시나리오에서는 빌드와 배포를 분리합니다. 애플리케이션 배포와 별도로 애플리케이션의 소스 코드 또는 아티팩트에서 컨테이너 이미지로의 빌드를 실행할 수 있습니다. 자체 컨테이너 레지스트리에 저장된 컨테이너 이미지를 여러 Azure Spring Apps Enterprise 서비스 인스턴스에 배포할 수 있습니다.

  • 빌드 서비스를 사용하지 않도록 설정합니다.

    빌드 서비스를 사용하지 않도록 설정하면 모든 Azure Spring Apps Enterprise 서비스 인스턴스에서 빌드할 수 있는 컨테이너 이미지만 사용하여 애플리케이션을 배포할 수 있습니다.

빌드 서비스 설정 구성

Azure Portal 또는 Azure CLI를 사용하여 Tanzu 빌드 서비스 및 컨테이너 레지스트리 설정을 구성할 수 있습니다.

Azure Spring Apps 서비스 인스턴스를 프로비전할 때 Tanzu Build Service를 사용하도록 설정하려면 다음 단계를 따릅니다.

  1. Azure Portal을 엽니다.

  2. 기본 탭의 가격 책정 섹션에서 Enterprise 계층을 선택하고 필요한 정보를 지정합니다.

  3. 다음: VMware Tanzu 설정을 선택합니다.

  4. VMware Tanzu 설정 탭에서 빌드 서비스 사용을 선택합니다. Container Registry의 경우 기본 설정은 관리 Azure Container Registry를 사용하여 빌드된 이미지 저장입니다.

    V M ware Tanzu 설정 탭과 빌드 서비스 설정이 강조 표시된 Azure Spring Apps 만들기 페이지를 보여 주는 Azure Portal의 스크린샷.

  5. Container Registry에 대해 자체 컨테이너 레지스트리를 사용하여 빌드된 이미지 저장(미리 보기)을 선택한 경우 컨테이너 레지스트리의 서버, 사용자 이름 및 암호를 제공합니다.

    컨테이너 레지스트리 설정이 강조 표시된 Azure Spring Apps 만들기 페이지 V Mware Tanzu 설정 탭을 보여 주는 Azure Portal의 스크린샷

  6. 빌드 서비스 사용을 사용 중지하면 컨테이너 레지스트리 옵션이 제공되지 않지만 컨테이너 이미지를 사용하여 애플리케이션을 배포할 수 있습니다.

    빌드 서비스 사용이 선택되지 않은 Azure Spring Apps 만들기 페이지에 대한 V M ware Tanzu 설정 보여 주는 Azure Portal의 스크린샷

  7. 검토 및 만들기를 선택합니다.

다중 언어 애플리케이션 배포

Tanzu 빌드 서비스를 사용하거나 사용하지 않도록 설정하여 Azure Spring Apps Enterprise 서비스 인스턴스에 다중 언어 애플리케이션을 배포할 수 있습니다. 자세한 내용은 Azure Spring Apps Enterprise에서 다중 언어 앱을 배포하는 방법을 참조하세요.

APM 통합 및 CA 인증서를 구성하는 방법

Azure Spring Apps Enterprise 계획은 Tanzu 파트너 빌드팩 및 CA 인증서 빌드팩을 사용하여 APM(애플리케이션 성능 모니터) 통합을 지원하는 간소화된 구성 환경을 제공합니다. 이 통합에는 다중 언어 애플리케이션을 위한 CA(인증 기관) 인증서 통합 시나리오가 포함됩니다. 자세한 내용은 APM 통합 및 CA 인증서 구성 방법을 참조하세요.

실시간 빌드 로그

Azure CLI 명령을 통해 애플리케이션이 배포되면 빌드 작업이 트리거됩니다. 빌드 로그는 CLI 명령 출력의 일부로 실시간으로 스트림됩니다. 빌드 로그를 사용하여 문제를 진단하는 방법에 대한 자세한 내용은 진단 설정을 사용하여 로그 및 메트릭 분석을 참조하세요.

빌드 기록

Azure Spring 앱 빌드 서비스 페이지의 빌드 섹션에서 모든 빌드 리소스를 볼 수 있습니다.

빌드가 강조 표시된 Azure Spring Apps 빌드 서비스 페이지를 보여주는 Azure Portal의 스크린샷.

빌드 섹션의 표에는 다음 열이 포함되어 있습니다.

  • 빌드 이름: 빌드 이름입니다.
  • 프로비전 상태: 빌드의 프로비전 상태입니다. 값은 Succeeded, Failed, UpdatingCreating입니다. 프로비전 상태 UpdatingCreating은 현재 빌드가 완료될 때까지 빌드를 업데이트할 수 없음을 의미합니다. 프로비전 상태 Failed는 최신 소스 코드 빌드가 새 빌드 결과를 생성하지 못했음을 의미합니다.
  • 리소스 할당량: 빌드의 빌드 Pod에 있는 리소스 할당량입니다.
  • 작성기: 빌드에 사용되는 작성기입니다.
  • 최신 빌드 결과: 빌드의 최신 빌드 결과 이미지 태그입니다.
  • 최신 빌드 결과 프로비전 상태: 빌드의 최신 빌드 결과 프로비전 상태입니다. 값은 Queuing, Building, SucceededFailed입니다.
  • 최신 빌드 결과 마지막 전환 시간: 빌드의 최신 빌드 결과에 대한 마지막 전환 시간입니다.
  • 최신 빌드 결과 마지막 전환 이유: 빌드의 최신 빌드 결과에 대한 마지막 전환 이유입니다. 값은 CONFIG, STACKBUILDPACK입니다. CONFIG는 작성기 업데이트 또는 새 소스 코드 배포 작업으로 인해 빌드 결과가 변경되었음을 의미합니다. STACK은 스택 업그레이드로 인해 빌드 결과가 변경되었음을 의미합니다. BUILDPACK은 빌드팩 업그레이드로 인해 빌드 결과가 변경되었음을 의미합니다.
  • 최신 빌드 결과 마지막 전환 상태: 빌드의 최신 빌드 결과에 대한 마지막 전환 상태입니다. 가능한 값은 TrueFalse입니다.

프로비전 상태의 경우 값이 Failed이면 소스 코드를 다시 배포합니다. 오류가 지속되면 지원 티켓을 만듭니다.

최신 빌드 결과 프로비전 상태의 경우 값이 Failed인 경우 빌드 로그를 확인합니다. 자세한 내용은 Azure Spring 앱의 일반적인 빌드 문제 해결을 참조하세요.

최신 빌드 결과 마지막 전환 상태의 경우 값이 Failed이면 최신 빌드 결과 마지막 전환 이유 열을 참조하세요. 이유가 BUILDPACK 또는 STACK인 경우 작업이 필요하지 않습니다. 이유가 CONFIG인 경우 소스 코드를 다시 배포합니다. 오류가 지속되면 지원 티켓을 만듭니다.

다음 단계