CI/CD for VMs by Azure
Azure 의 컴퓨팅 서비스, Virtual Machines 을 중심으로 앱 개발시 CI/CD 자동화 파이프라인을 위한 애저의 기본 아키텍쳐이다.
Git 리포지토리에서 부터 시작하여 코드를 자동으로 빌드, 테스트하여 구축을 통해 업데이트된 코드를 잘 배포하고
관련한 정보들을 한눈에 파악하고 분석까지 가능하도록 한다.
CI ( Continuous Integration ) - 지속적 통합으로 새로운 업데이트 검증과 오류 발견에 신속히 대응할 수 있습니다.
예시로 여러 개발자들이 각각 개발한 코드를 병합 ( merge ) 할때 오류를 최소화 하기 위해 CI 를 통해 지속적으로
코드 통합을 시도해서 테스트 할 수 있습니다.
CD ( Continuous Delivery/Deployment ) - 지속적 배포로 자동으로 배포할 수 있는 방법 입니다.
즉 코드 변경사항이 있을 때 직접 매번 배포하지 않아도 자동으로 배포해주어 수고로움을 덜어 줍니다.
Visual Studios 를 통해 어플리케이션 소스코드를 변경하고 Git repositories 를 통해
Azure Resource Manager 와 변경된 코드를 Commit 시킴
Visual Studios - Microsoft 에서 개발된 통합된 개발 환경 서비스
Git repositories - Git 프로젝트에 있는 코드 파일에 변경사항을 저장하는 곳
Azure Resource Manager - 개발,관리,구축 및 보안을 아우르는 하나의 플랫폼을 제공해주는 서비스로 Azure 의 IaaS
Azure DevOps Pipeline 을 통해 지속적인 코드빌드,테스트와 배포를 진행함
Azure DevOps Pipeline - Azure 의 대표적인 CI/CD 서비스
Azure DevTest Labs 에 QA 환경을, Virtual machines 에 각각 staging, production 환경을 구축함
Azure DevTest Labs - 재사용 가능한 탬플릿 환경을 쉽게 조성하여 구축에 따른 비용과 자원을 효율적으로 활용
Virtual machines- Azure 의 가상머신으로 빠르고 쉽게 하나의 컴퓨팅 시스템을 구축하여 필요한 만큼 사용할 수 있음
Azure application insights 를 통해 어플리케이션과 서비스에 나오는 이슈들이나 리소스정보들을 확인하고 분석함
Azure application insights- 어플리케이션의 포퍼먼스를 모니터링하고 분석하며 일어나는 문제들을 진단해주는 서비스
엔지니어는 워크플로우에 대한 정보를 리뷰하고 Azure DevOps 에 업데이트 시킴
Azure DevOps- 개발자들을 위한 서비스로 프로젝트나 코드 개발에 대한 기반환경으로 계획,협동 및 구축 할 수 있는 플랫폼을 제공하는 서비스
reference- https://docs.microsoft.com/en-us/azure/architecture/solution-ideas/articles/cicd-for-azure-vms
'Cloud solutions' 카테고리의 다른 글
#007) 리그 오브 레전드 cloud solution (데이터 솔루션 with AWS) (1) | 2022.08.09 |
---|---|
#006) data warehousng cloud solution (데이터 솔루션 with Azure) (0) | 2022.08.07 |
#005) 스냅챗 cloud solution (메신저 솔루션 with AWS) (0) | 2022.08.06 |
#004) 영화 추천 cloud solution (ML 솔루션 with Azure) (0) | 2022.08.05 |
#003) Samsung health cloud solution (Data 솔루션 with AWS) (0) | 2022.08.03 |