Share via


Azure Deployment Environments란?

Azure Deployment Environments를 통해 개발 팀은 보안을 극대화하면서 일관성과 모범 사례를 설정하는 프로젝트 기반 템플릿을 사용하여 앱 인프라를 빠르고 쉽게 실행할 수 있습니다. 보안 환경에 대한 이러한 주문형 액세스는 규정을 준수하고 비용 효율적인 방식으로 소프트웨어 개발 수명 주기의 단계를 가속화합니다.

배포 환경환경 정의라는 템플릿에 정의된 Azure 인프라 리소스의 컬렉션입니다. 개발자는 액세스 권한이 있는 구독의 템플릿에 정의된 인프라를 배포하고 인프라에서 애플리케이션을 빌드할 수 있습니다. 예를 들어 웹앱, 데이터베이스 및 스토리지 계정을 포함하는 배포 환경을 정의할 수 있습니다. 웹 개발자는 기본 인프라에 대한 걱정 없이 웹앱 코딩을 시작할 수 있습니다.

플랫폼 엔지니어는 환경 정의를 만들고 관리할 수 있습니다. 개발자가 사용할 수 있는 환경 정의를 지정하기 위해 플랫폼 엔지니어는 환경 정의를 프로젝트와 연결하고 개발자에게 권한을 할당할 수 있습니다. 또한 샌드박스, 테스트, 스테이징 또는 프로덕션과 같은 환경 유형에 따라 Azure 거버넌스를 적용할 수도 있습니다.

다음 다이어그램에서는 Azure Deployment Environments 기능에 대한 개요를 보여 줍니다. 플랫폼 엔지니어는 인프라 템플릿을 정의하고 구독, ID 및 권한을 구성합니다. 개발자는 템플릿을 기반으로 환경을 만들고, 인프라에 애플리케이션을 빌드 및 배포합니다. 환경은 주문형 환경, 테스트를 위한 샌드박스 환경, 연속 통합 및 지속적인 배포를 위한 CI/CD 파이프라인과 같은 다양한 시나리오를 지원할 수 있습니다.

Azure Deployment Environments 시나리오 흐름을 보여주는 다이어그램

Azure Deployment Environments의 주요 개념에 대해 자세히 알아볼 수 있습니다.

사용 시나리오

일반적인 Azure Deployment Environments 시나리오에는 다음이 포함됩니다.

플랫폼 엔지니어링 시나리오

Azure Deployment Environments는 플랫폼 엔지니어가 다양한 형식의 환경에 올바른 정책 및 설정 집합을 적용하고, 개발자가 만들 수 있는 리소스 구성을 제어하고, 프로젝트 전반에서 환경을 추적하는 데 도움이 됩니다. 이를 통해 다음 작업을 수행합니다.

  • 프로젝트 기반의 큐레이팅된 재사용 가능한 IaC 템플릿 집합을 제공합니다.
  • 프로젝트 및 환경 유형별로 특정 Azure 배포 구성을 정의합니다.
  • 구독을 제어하지 않고 셀프 서비스 환경을 제공합니다.
  • 비용을 추적하고 엔터프라이즈 거버넌스 정책을 준수합니다.

개발자 시나리오

개발자는 필요할 때마다 환경을 만들고 인프라에서 애플리케이션을 개발할 수 있습니다. Azure Deployment Environments를 사용하여 다음 작업을 수행할 수 있습니다.

  • 개발 주기의 모든 단계에 대해 미리 구성된 환경을 배포합니다.
  • 샌드박스 환경을 실행하여 Azure를 탐색합니다.
  • 개발자 포털, Azure CLI 또는 Azure Developer CLI를 통해 환경을 만들고 관리합니다.

이점

Azure Deployment Environments는 클라우드에서 환경을 만들고 구성하고 관리하는 데 다음과 같은 이점을 제공합니다.

  • 표준화 및 협업: 팀 또는 조직 내 소스 제어에서 IaC 템플릿을 캡처하고 공유하여 주문형 환경을 손쉽게 만듭니다. 소스 제어 리포지토리에서 템플릿의 내부 소싱을 통해 협업을 촉진합니다.

  • 규정 준수 및 거버넌스: 플랫폼 엔지니어링 팀은 환경 정의를 조정하여 엔터프라이즈 보안 정책을 적용하고 프로젝트를 환경 형식별로 Azure 구독, ID 및 권한에 매핑할 수 있습니다.

  • 프로젝트 기반 구성: 구성되지 않은 템플릿 목록이나 기존 IaC 설정을 사용하는 대신 개발 팀이 작업 중인 애플리케이션 유형별로 환경 정의를 구성합니다.

  • 걱정할 필요가 없는 셀프 서비스: 미리 구성된 템플릿 세트를 사용하여 개발 팀이 앱 인프라(PaaS, 서버리스 등)를 빠르고 쉽게 만들 수 있도록 합니다. 이러한 리소스에 대한 비용을 추적하여 예산을 벗어나지 않도록 할 수도 있습니다.

  • 기존 툴체인과의 통합: API를 사용하여 선호하는 CI 도구, IDE(통합 개발 환경) 또는 자동화된 릴리스 파이프라인에서 직접 환경을 프로비저닝합니다. 포괄적인 명령줄 도구를 사용할 수도 있습니다.

Microsoft Dev Box와 공유되는 구성 요소

Microsoft Dev Box 및 Azure Deployment Environments는 특정 아키텍처 구성 요소를 공유하는 보완 서비스입니다. Dev Box는 개발자에게 작업에 필요한 도구로 구성된 개발 상자라는 클라우드 기반 개발용 워크스테이션을 제공합니다. 개발자 센터와 프로젝트는 두 서비스 모두에 공통적이며 엔터프라이즈에서 리소스를 구성하는 데 도움이 됩니다.

Deployment Environments를 구성할 때 Dev Box 리소스 및 구성 요소가 표시될 수 있습니다. Dev Box 기능에 관한 정보 메시지가 표시될 수도 있습니다. Dev Box 기능을 구성하지 않는 경우 이러한 메시지를 무시해도 됩니다.