솔루션 아키텍처: Visual Studio Team Services를 사용한 Azure Web Apps에 대한 연속 통합 및 배포(CI/CD)

Azure를 통해 연속 웹앱 배포를 더 쉽게 수행합니다. Azure App Service는 ASP.NET, Java, Node 또는 PHP를 사용하여 웹앱을 만드는 빠르고 간단한 방법입니다. 해당 웹앱을 오래 지속되도록 만들려면 각 변경 내용을 자동으로 푸시하기 위한 CI/CD(연속 통합 및 연속 배포) 파이프라인이 필요합니다.

CI/CD가 연속 통합 및 연속 배포 도구에 액세스할 수 있도록 Visual Studio Team Services에서 App Service Web Apps 기능을 설정합니다. Visual Studio Team Services는 버전 제어를 위한 Git 리포지토리, 연속 통합용 빌드 시스템 및 연속 배포용 릴리스 관리 시스템을 제공합니다. 이러한 도구를 사용하여 각 커밋을 리포지토리로, 다양한 환경을 통해, 그리고 프로덕션 웹 사이트로 추적할 수 있습니다. Azure Application Insights는 피드백 루프를 닫아 프로덕션에서 발생하는 문제를 다시 특정 배포 및 해당 배포의 특정 코드 변경 내용에 상호 연결합니다.

Commit Deployment Continuous integration trigger Make changes to application Review data Continuous Deployment Trigger Visual Studio Team Services Application code,Web.config file Visual Studio Team Services Web package,Web.config file Visual Studio Team Services App Service Monitoring Application Insights Health, Performance, Usage Developer Visual Studio Environment specific Web.config files

구현 지침

제품/설명 설명서

Visual Studio Team Services 빌드를 사용하여 연속 통합 빌드를 설정하고 각 커밋에 대한 높은 품질을 확보합니다.

Visual Studio Team Services Release Management를 사용하여 성공적인 빌드를 완료할 때 Azure 웹 사이트에 대한 자동화된 배포를 트리거합니다.

App Service

Azure App Service를 사용하여 언어 및 플랫폼과 관계없이 응용 프로그램을 호스트합니다.

Visual Studio

Visual Studio Code 및 Visual Studio를 사용하여 ASP.NET, ASP.NET Core, Node, PHP 또는 Java 응용 프로그램을 개발합니다.

Visual Studio Team Services Git 리포지토리에서 팀 구성원과 공동으로 작업하고 코드를 공유합니다.

Application Insights

Application Insights로 웹앱에서 문제를 탐색하고 충돌을 진단하고 사용량을 추적하세요. 개발 수명 주기 전체에 걸쳐 정보를 바탕으로 결정을 내릴 수 있습니다.

관련 솔루션 아키텍처

Commit Azure VMs Azure VMs Dev / Test lab Continuous integration trigger Continuous deployment trigger Deployment to QAenvironment Deployment toproductionenvironment Deployment tostagingenvironment Visual Studio TeamServices Git Application code,ARM template Visual Studio TeamServices CI Build, ARM template Visual Studio TeamServices CD Environmental specificARM parameters

Visual Studio Team Services를 사용한 Virtual Machines에 대한 연속 배포

Azure는 VM(가상 컴퓨터) 배포 및 관리를 위한 세계 최고의 클라우드입니다. 응용 프로그램을 개발하는 데 ASP.NET, Java, Node 또는 PHP를 사용하는지에 관계없이 변경 내용을 이러한 VM으로 자동으로 푸시하려면 CI/CD(연속 통합 및 연속 배포) 파이프라인이 필요합니다.

자세한 정보
Commit Build Bake Release Deploy git Jenkins Azure ContainerRegistry NetflixSpinnaker Azure ContainerServices - Kubernetes

OSS(오픈 소스 소프트웨어)를 사용한 컨테이너에 대한 CI/CD(지속적인 통합 및 배포)

Kubernetes는 컨테이너화된 응용 프로그램에 대해 분산 플랫폼을 제공합니다. Azure와 Kubernetes를 사용하면 지속적인 배포가 더 간단하고 빨라집니다.

자세한 정보
Continuous integration trigger Azure Container Service (Registry) Push container image Pull container image Continuous deployment trigger Deployment Visual Studio Team Services Git Visual Studio Team Services CI Application code, Docker files, Compose files, Deployment files Container images Compose files, Deployment files Environment specific Compose files, Deployment files Running containers Azure Container Service (Kubernetes, Swarm, or DC/OS) Visual Studio Team Services CD Commit

Visual Studio Team Services를 사용한 컨테이너에 대한 연속 통합 및 배포(CI/CD)

컨테이너 배포를 사용하면 간편하게 지속적으로 응용 프로그램을 업데이트 및 개선할 수 있습니다. Azure Container Service에서 Kubernetes 또는 DC/OS를 사용하여 연속 통합 및 배포를 오케스트레이션하는 방식으로 컨테이너의 복제 가능하고 관리 가능한 클러스터를 만듭니다. Visual Studio Team Services를 통해 컨테이너 이미지를 생성 및 오케스트레이션하도록 연속 빌드를 설정하여 더 빠르고 더 안정적으로 배포합니다.

자세한 정보