DevOps는 개발, QA(품질 보증) 및 IT 작업을 통합된 문화권과 소프트웨어 제공을 위한 프로세스 집합에 통합합니다. DevOps 사례를 채택하면 팀은 더 빠른 품질의 솔루션을 제공하고 더 민첩하게 변화하는 비즈니스 요구 사항에 대응할 수 있습니다.
DevOps용 Azure 서비스
Azure DevOps에 대한 다양한 작업 및 서비스를 제공합니다.
DevOps 운영
CI(연속 통합) : 모든 개발자 코드를 중앙 코드베이스로 자주 병합하고 자동화된 빌드 및 테스트 프로세스를 수행하는 방법입니다. 목표는 코드 문제를 신속하게 검색 및 수정하고, 배포를 간소화하고, 코드 품질을 보장하는 것입니다.
CD(지속적인 업데이트) : 프로덕션과 유사한 환경에 코드를 자동으로 빌드, 테스트 및 배포하는 방법입니다. 목표는 코드가 항상 배포할 준비가 되었는지 확인하는 것입니다. CD를 추가하여 전체 CI/CD 파이프라인을 만들면 가능한 한 빨리 코드 결함을 감지할 수 있습니다. 또한 제대로 테스트된 업데이트를 짧은 시간 안에 릴리스할 수 있습니다.
지속적인 배포: CI/CD 파이프라인을 통과하고 프로덕션에 배포하는 모든 업데이트를 자동으로 수행하는 프로세스입니다. 지속적인 배포에는 강력한 자동 테스트 및 고급 프로세스 계획이 필요합니다. 모든 팀에 적합하지 않을 수 있습니다.
지속적인 모니터링: DevOps 및 IT 운영 수명 주기의 각 단계에서 모니터링을 통합하는 데 필요한 프로세스 및 기술입니다. 모니터링은 애플리케이션이 개발에서 프로덕션으로 이동함에 따라 애플리케이션 및 인프라의 상태, 성능 및 안정성을 보장하는 데 도움이 됩니다. 지속적인 모니터링은 CI 및 CD의 개념을 기반으로 합니다.
DevOps 서비스
Azure DevOps: 버전 제어, CI/CD 파이프라인 및 패키지 관리를 비롯한 통합 DevOps 서비스를 사용하여 소프트웨어를 더 빠르게 계획, 개발 및 제공합니다.
Azure Pipelines: 모든 플랫폼 또는 언어에 대한 클라우드 호스팅 CI/CD 파이프라인을 사용하여 빌드, 테스트 및 배포 프로세스를 자동화합니다.
GitHub Actions: 네이티브 CI/CD, 테스트 및 배포 기능을 사용하여 GitHub 리포지토리에서 직접 소프트웨어 워크플로를 자동화합니다.
Azure Monitor: 포괄적인 관찰 가능성 및 진단을 사용하여 애플리케이션 및 인프라 성능을 모니터링, 분석 및 최적화합니다.
Architecture
이 아키텍처의 Visio 파일을 다운로드하십시오.
이전 다이어그램은 일반적인 기본 또는 기준 DevOps 구현을 보여 줍니다. Azure 빌드할 수 있는 실제 솔루션은 DevOps 아키텍처를 참조하세요.
DevOps 가이드, 아키텍처 및 솔루션 아이디어 살펴보기
이 섹션의 문서에는 Azure 배포하고 프로덕션 등급 솔루션으로 확장할 수 있는 가이드 및 완전히 개발된 아키텍처가 포함되어 있습니다. 솔루션 아이디어는 DevOps POC(개념 증명) 개발을 계획할 때 고려할 구현 패턴과 가능성을 보여 줍니다. 이러한 문서는 Azure DevOps 기술을 사용하는 방법을 결정하는 데 도움이 될 수 있습니다.
DevOps 솔루션 아이디어
다음 DevOps 솔루션 아이디어는 구현 패턴 및 탐색 가능성을 보여 줍니다.
- IaC(Infrastructure as Code)용 DevSecOps: 운영 우수성, 보안 및 비용 최적화를 위한 거버넌스를 통해 IaC용 GitHub 사용하여 DevSecOps 파이프라인을 구현합니다.
DevOps 아키텍처
다음 프로덕션 준비 아키텍처는 배포하고 사용자 지정할 수 있는 엔드 투 엔드 DevOps 솔루션을 보여 줍니다.
Azure Pipelines 사용하는 CI/CD 기준 아키텍처: Azure Pipelines 사용하여 스테이징 및 프로덕션 환경에 애플리케이션 변경 내용을 배포하여 CI/CD 파이프라인을 빌드합니다.
APIOps를 사용하여 API 배포 자동화: Azure API Management 및 Azure DevOps 사용하여 API 배포에 GitOps 및 DevOps 기술을 적용합니다.
확장 가능한 클라우드 애플리케이션 및 SRE(사이트 안정성 엔지니어링) : 애플리케이션 성능을 모델링하고 SRE 사례를 적용하여 클라우드 애플리케이션을 안정적으로 확장하는 방법을 알아봅니다.
Microsoft365DSC 및 Azure DevOps 사용하여 Microsoft 365 테넌트 구성 관리: Azure DevOps 및 PowerShell DSC를 사용하여 Microsoft 365 테넌트 구성에 대한 변경 내용을 추적하고 자동화합니다.
DevOps 가이드
Azure 샌드박스: Azure 샌드박스를 사용하여 개발 및 테스트를 위한 격리된 셀프 서비스 Azure 환경을 제공하는 방법을 알아봅니다.
AKS(Azure Kubernetes Service) DevSecOps: AKS(Azure Kubernetes Service) 호스팅 워크로드에 대한 DevOps 수명 주기 단계에서 보안 제어 및 모범 사례를 포함합니다.
배포 스크립트를 사용하여 리소스 속성 확인: 배포 스크립트를 사용하여 DevOps 파이프라인의 일부로 Azure 리소스 속성의 유효성을 검사하는 방법을 알아봅니다.
조직의 준비 상태
클라우드 채택 프로세스의 시작 부분에서 조직은 Azure
- Azure 랜딩 존에 대한 DevOps 고려 사항: DevOps 프레임워크를 정의하고, 메트릭을 설정하고, 구현 과정을 계획하고, DevOps 도구 체인을 선택합니다.
Azure DevOps 솔루션의 품질을 보장하려면 Azure Well-Architected Framework의 지침을 따르세요. Well-Architected Framework는 아키텍처 우수성을 추구하는 조직에 대한 규범적인 지침을 제공하고 비용 최적화 Azure 솔루션을 설계, 프로비전 및 모니터링하는 방법을 설명합니다.
모범 사례
이러한 모범 사례를 따라 Azure DevOps 워크로드의 보안, 안정성, 성능 및 운영 품질을 개선합니다.
DevOps
Azure DevOps 안전하게 만들기: 네트워크 보호, 제로 트러스트 구현, 액세스 제어 및 서비스 수준 보안 조치를 포함하여 Azure DevOps 대한 포괄적인 보안 지침입니다.
테스트를 빠르고 안정적으로 만들기 위해 왼쪽으로 이동: 테스트 피라미드, 빠른 피드백 루프 및 신뢰할 수 있는 테스트 사례를 포함하여 개발 주기 초기에 테스트를 이동하기 위한 지침입니다.
프로덕션 환경에서 테스트하려면 오른쪽으로 이동: 카나리아 릴리스, 기능 플래그 및 오류 주입을 포함한 프로덕션 테스트 사례에 대한 지침입니다.
TFVC(Team Foundation 버전 제어)에서 Git로 마이그레이션: 소스 제어를 Team Foundation 버전 제어에서 Azure DevOps Git 리포지토리로 마이그레이션하기 위한 지침입니다.
서비스별 안정성 가이드: Azure 신뢰할 수 있는 솔루션을 빌드하기 위한 서비스별 지침입니다.
Azure 클라우드 자산 모니터링: Azure Monitor, 클라우드용 Microsoft Defender, Microsoft Sentinel 및 기타 도구를 사용하여 Azure 환경에서 모니터링을 계획, 구성 및 최적화합니다.
Azure Monitor 안정성 모범 사례: Azure Monitor 사용하여 애플리케이션 안정성을 모니터링하기 위한 지침입니다.
Microsoft 클라우드 보안 벤치마크 개요: NIST 및 PCI와 같은 업계 프레임워크와 일치하는 Azure 클라우드 솔루션을 보호하기 위한 권장 사항입니다.
DevOps 보안: 정적 애플리케이션 보안 테스트, 취약성 관리, 위협 모델링 및 소프트웨어 공급망 보안을 비롯한 DevOps 프로세스에 대한 보안 제어입니다.
Azure ID 관리 및 액세스 제어 보안 모범 사례: Microsoft Entra ID 사용하여 ID 관리 및 액세스 제어를 구현하기 위한 모범 사례입니다.
Azure 보안 모범 사례 및 패턴: Azure 클라우드 솔루션을 디자인, 배포 및 관리하기 위한 보안 모범 사례 모음입니다.
Azure 운영 보안 검사 목록: Azure 배포에 대한 운영 보안 사례를 다루는 검사 목록입니다.
Azure 보안 개발 모범 사례: 보안 개발 수명 주기를 포함하여 Azure 보안 애플리케이션을 빌드하기 위한 모범 사례입니다.
Azure Artifacts
- Azure Artifacts 모범 사례: 피드 관리 및 보존 정책을 포함하여 Azure Artifacts 패키지를 만들고 게시하고 사용하는 지침입니다.
Azure 리소스 관리자
ARM 템플릿(Azure Resource Manager 템플릿) 모범 사례: 매개 변수 디자인, 리소스 종속성 및 API 버전 관리를 포함하여 ARM 템플릿(Azure Resource Manager 템플릿)을 생성하기 위한 권장 사례입니다.
Bicep 모범 사례: 명명 규칙, 리소스 정의 및 출력 보안을 포함하여 Bicep 파일을 개발하기 위한 권장 사항입니다.
DevOps를 사용하여 최신 상태 유지
Azure DevOps 서비스는 최신 개발 및 운영 문제를 해결하기 위해 진화합니다. 최신 업데이트 및 기능에 대한 정보를 계속 확인하세요.
주요 DevOps 서비스를 최신 상태로 유지하려면 다음 문서를 참조하세요.
기타 리소스
DevOps는 광범위한 범주이며 다양한 솔루션을 다룹니다. 다음 리소스는 DevOps 구현을 지원하는 Azure 서비스에 대해 자세히 알아봅니다.
Microsoft Fabric CI/CD
Microsoft Fabric 버전 제어 및 분기 기반 워크플로를 위해 Fabric 작업 영역을 Git 리포지토리(Azure DevOps 또는 GitHub)에 연결하여 CI/CD를 달성합니다. 배포 파이프라인을 사용하여 지속적인 배포를 관리합니다.
Microsoft Fabric Git 통합: 버전 제어 및 CI를 위해 Fabric 작업 영역을 Azure DevOps 또는 GitHub 연결합니다.
배포 파이프라인 소개: 배포 파이프라인을 사용하여 개발, 테스트 및 프로덕션 환경에서 콘텐츠를 승격합니다.
AWS(Amazon Web Services) 또는 Google Cloud 전문가
빠르게 시작할 수 있도록 다음 문서에서는 Azure DevOps 옵션을 다른 클라우드 서비스와 비교하고 마이그레이션 지침을 제공합니다.
서비스 비교
마이그레이션 지침
다른 클라우드 플랫폼에서 마이그레이션하는 경우 다음 문서를 참조하세요.