Azure DevOps Services와 Azure DevOps Server 비교
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
클라우드 제품인 Azure DevOps Services는 확장 가능하고 안정적이며 전 세계적으로 사용 가능한 호스트 서비스를 제공합니다. 24/7 운영 팀은 99.9% SLA(서비스 수준 계약)의 지원과 전 세계 로컬 데이터 센터에서 사용할 수 있는 클라우드 제품을 모니터링합니다.
온-프레미스 제품인 Azure DevOps Server는 SQL Server 백 엔드에 빌드됩니다. 고객은 일반적으로 데이터가 네트워크 내에 있어야 하는 경우 온-프레미스 버전을 선택합니다. 또는 Azure DevOps Server 데이터 및 도구와 통합되는 SQL Server 보고 서비스에 액세스하려는 경우
두 제품 모두 동일한 필수 기능과 서비스를 제공하지만 Azure DevOps Services는 더 많은 이점을 제공합니다.
- 서버 관리 간소화
- 최신 기능에 즉시 액세스 제공
- 원격 사이트와의 연결 향상
- 자본 지출(서버 및 하드웨어)에서 운영 지출(구독)으로 전환
클라우드 또는 온-프레미스 제품이 요구 사항을 가장 잘 충족하는지 여부를 결정하려면 다음 주요 차이점을 고려합니다.
Azure DevOps Services와 Azure DevOps Server 간의 주요 차이점
Azure DevOps Services 및 Azure DevOps Server는 비슷한 핵심 기능을 제공하지만 다음 목록에서는 특정 기능 영역의 주요 차이점을 보여 줍니다.
- 배포: Azure DevOps Services: 클라우드 기반, 호스팅 및 Microsoft에서 관리합니다. Azure DevOps Server: 조직에서 관리하는 온-프레미스 솔루션입니다.
- 확장성: Azure DevOps Services: 확장성이 뛰어나고 인터넷 연결이 있는 어디서나 액세스할 수 있습니다. Azure DevOps Server: 확장성은 조직의 인프라 및 서버 용량으로 제한됩니다.
- 인증: Azure DevOps Services: Microsoft 계정 또는 Microsoft Entra ID를 사용합니다. Azure DevOps Server: Windows 인증 및 AD(Active Directory) 도메인 자격 증명을 사용합니다.
- 데이터 제어: Azure DevOps Services: 데이터는 보안 Azure 데이터 센터에 저장됩니다. Azure DevOps Server: 조직은 데이터 및 인프라를 완벽하게 제어할 수 있습니다.
- 사용자 관리: Azure DevOps Services: Azure DevOps Services 그룹에 Microsoft Entra 그룹 추가를 지원합니다. Azure DevOps Server: 다양한 Azure DevOps 그룹에 AD 그룹을 추가하여 액세스 권한을 부여합니다.
- 프로세스 사용자 지정: Azure DevOps Services: 웹 UI 및 REST 엔드포인트 사용자 지정 옵션을 사용하는 상속 프로세스 모델입니다. Azure DevOps Server: 사용자 지정을 위해 상속 및 온-프레미스 XML 프로세스 모델을 모두 제공합니다.
- 분석 및 보고: Azure DevOps Services: 대시보드, 분석 서비스, Power BI 통합 및 OData 지원을 제공합니다. Azure DevOps Server: 대시보드, SSRS 보고서 및 구성 가능한 경량 차트를 제공합니다.
- SQL Server와의 통합: Azure DevOps Services: 보고를 위해 SQL Server Analysis Services와의 통합을 지원하지 않습니다. Azure DevOps Server: SQL Server Analysis Services와의 통합을 지원합니다.
이러한 차이는 조직의 요구 사항에 가장 적합한 플랫폼을 결정하는 데 도움이 될 수 있습니다. Azure DevOps Server를 사용하고 Azure DevOps Services로의 이동을 고려하는 경우 마이그레이션 개요를 참조하세요.
확장성
비즈니스가 성장함에 따라 Azure DevOps 인스턴스를 확장해야 할 수 있습니다. 이 크기 조정에는 더 많은 사용자를 추가하거나, 스토리지 용량을 늘리거나, 더 큰 워크로드를 처리하기 위한 성능 향상이 포함될 수 있습니다. 더 복잡한 워크플로를 지원하고 대규모 팀에서 원활한 협업을 보장하기 위해 다른 도구와 서비스를 통합해야 할 수도 있습니다. Azure DevOps는 클라우드에서 Azure DevOps Services를 사용하든, 온-프레미스에서 Azure DevOps Server를 사용하든 관계없이 효율적으로 크기를 조정하는 데 도움이 되는 다양한 옵션과 구성을 제공합니다.
Azure DevOps Services
Azure DevOps Services는 데이터 범위 지정 및 크기 조정을 위한 두 가지 옵션인 조직 및 프로젝트를 제공합니다. Azure DevOps Services의 조직은 고유한 URL(예 https://dev.azure.com/fabrikamfiber
: )을 받으며 항상 정확히 하나의 프로젝트 컬렉션을 가지고 있습니다. 조직에는 컬렉션 내에 많은 프로젝트가 있을 수 있습니다.
Azure DevOps Server에서 컬렉션을 만들 때마다 Azure DevOps Services에서 조직을 만듭니다. 다음 시나리오를 고려하세요.
- 조직당 사용자 구매: 유료 사용자는 결제가 이루어지는 조직에만 액세스할 수 있습니다. 여러 조직에 액세스해야 하는 사용자에게 Visual Studio 구독은 매력적인 옵션입니다. Visual Studio 구독자는 무료로 여러 조직에 추가할 수 있습니다. 또한 단일 엔터티로 그룹화된 여러 조직에 대한 액세스를 제공하는 다른 방법을 모색하고 있습니다.
- 조직을 개별적으로 관리: 현재는 조직을 한 번에 하나씩 관리해야 하며, 조직이 많은 경우 번거로울 수 있습니다.
자세한 내용은 Azure DevOps에서 조직 구조 계획을 참조하세요.
Azure DevOps Server
Azure DevOps Server는 데이터 범위 지정 및 크기 조정을 위한 세 가지 옵션인 배포, 프로젝트 컬렉션 및 프로젝트를 제공합니다.
배포: 가장 간단한 경우 배포는 서버입니다. 그러나 다음과 같이 더 복잡할 수 있습니다.
- SQL이 별도의 컴퓨터에 있는 2 서버 배포
- 여러 서버가 있는 고가용성 팜
프로젝트 컬렉션: 보안, 관리 및 물리적 데이터베이스 경계를 위한 컨테이너 역할을 합니다. 관련 프로젝트를 그룹화하는 데도 사용됩니다.
프로젝트: 소스 코드, 작업 항목 등을 포함하여 개별 소프트웨어 프로젝트의 자산을 캡슐화합니다.
자세한 내용은 Azure DevOps에서 조직 구조 계획을 참조하세요.
인증
Azure DevOps Services와 Azure DevOps Server를 비교할 때 각 플랫폼에 대해 인증이 처리되는 방식의 차이점을 이해하는 것이 중요합니다.
Azure DevOps Services
Azure DevOps Services를 사용하면 공용 인터넷(예: https://contoso.visualstudio.com
)을 통해 연결합니다. 조직 설정에 따라 Microsoft 계정 자격 증명 또는 Microsoft Entra ID 자격 증명을 사용하여 인증할 수 있습니다. 또한 Microsoft Entra ID를 사용하면 다단계 인증, IP 주소 제한 등과 같은 기능을 사용할 수 있습니다.
Microsoft 계정이 아닌 Microsoft Entra를 사용하도록 조직을 구성하는 것이 좋습니다. 이 방법은 많은 시나리오에서 더 나은 환경을 제공하고 향상된 보안을 위한 더 많은 옵션을 제공합니다.
자세한 내용은 Microsoft Entra ID를 사용하여 Azure DevOps Services에 액세스하는 방법을 참조하세요.
Azure DevOps Server
Azure DevOps Server를 사용하여 인트라넷 서버(예: https://tfs.corp.contoso.com:8080/tfs
)에 연결합니다. Windows 인증 및 AD(Active Directory) 도메인 자격 증명을 사용하여 인증합니다. 이 프로세스는 원활하며 로그인 환경이 발생하지 않습니다.
데이터 컨트롤
많은 엔터티는 클라우드로의 이동을 고려할 때 데이터 보호에 대한 정보를 찾습니다. Azure DevOps Services 프로젝트를 안전하고 안전하게 유지하기 위해 최선을 다하고 있습니다. Microsoft는 이러한 약속을 지키기 위한 기술 기능 및 비즈니스 프로세스를 갖추고 있습니다. 데이터를 보호하는 단계를 수행할 수도 있습니다. 자세한 내용은 데이터 보호 개요를 참조하세요.
사용자 관리
Azure DevOps Services 및 Azure DevOps Server에서 사용자 및 그룹을 관리하는 경우 적절한 액세스 및 조직을 보장하기 위해 각 플랫폼에 사용할 수 있는 고유한 방법과 도구가 있습니다.
Azure DevOps Services
Azure DevOps Services에서 Azure DevOps Services 그룹에 Microsoft Entra 그룹을 추가하여 사용자 그룹에 대한 액세스를 제공할 수 있습니다. Microsoft Entra ID 대신 Microsoft 계정을 사용하는 경우 사용자를 개별적으로 추가해야 합니다.
또한 조직의 각 사용자에게 액세스 수준을 할당해야 합니다. Azure DevOps Services는 로그인할 때 Visual Studio 구독자의 유효성을 검사합니다. Visual Studio 구독 없이 5명의 사용자에게 무료로 기본 액세스를 할당할 수 있습니다.
더 많은 사용자에게 최소한 기본 액세스 권한을 부여하려면 청구를 설정하고 더 많은 사용자에 대한 요금을 지불합니다. 그렇지 않으면 다른 모든 사용자는 관련자 액세스 권한을 받습니다.
Microsoft Entra 그룹은 첫 번째 로그인 시 액세스 수준이 자동으로 할당된 사용자 그룹에 대한 액세스를 제공합니다. 로그인에 Microsoft 계정을 사용하는 조직의 경우 각 사용자에게 액세스 수준을 명시적으로 할당해야 합니다.
Azure DevOps Server
Azure DevOps Server에서는 개별 프로젝트에 대한 기여자 그룹과 같은 다양한 Azure DevOps 그룹에 AD(Active Directory) 그룹을 추가하여 배포에 대한 액세스 권한을 사용자에게 부여합니다. AD 그룹 멤버 자격은 동기화 상태를 유지하므로 사용자가 AD에서 추가 또는 제거되면 Azure DevOps Server에 대한 액세스 권한을 자동으로 얻거나 잃게 됩니다.
모든 사용은 명예 시스템에 있습니다. 라이선스에 따라 사용자의 액세스 수준을 설정하려면 관리 페이지에서 해당 액세스 수준을 지정합니다. 예를 들어 사용 허가되지 않은 사용자 관련자 액세스만 할당합니다.
Azure DevOps Server CAL(클라이언트 액세스 라이선스)이 있는 사용자는 기본 액세스를 가질 수 있습니다. Visual Studio 구독자는 구독에 따라 기본 또는 고급 액세스 권한을 가질 수 있습니다. Azure DevOps Server는 이러한 라이선스를 확인하거나 규정 준수를 적용하지 않습니다.
Azure DevOps Services와 Azure DevOps Server 모두에서 사용자를 액세스 수준에 할당하여 기능에 대한 액세스를 관리합니다. 모든 사용자는 단일 액세스 수준에 할당되어야 합니다. 클라우드 및 온-프레미스 제품 모두에서 무제한의 이해 관계자에게 작업 항목 기능에 대한 무료 액세스를 제공할 수 있습니다. 또한 무제한의 Visual Studio 구독자는 추가 비용 없이 모든 기본 기능에 액세스할 수 있습니다. 액세스 권한이 필요한 다른 사용자에 대해서만 요금을 지불합니다.
프로세스 사용자 지정
지원되는 프로세스 모델에 따라 다양한 방법으로 작업 추적 환경을 사용자 지정할 수 있습니다.
Azure DevOps Services
Azure DevOps Services는 WYSIWYG(표시되는 내용) 사용자 지정을 지원하는 상속 프로세스 모델을 사용합니다. 이 모델을 사용하면 XML 파일을 편집할 필요 없이 사용자 인터페이스를 통해 작업 항목 유형, 상태 및 필드를 직접 쉽게 사용자 지정할 수 있습니다. 도구가 특정 프로젝트 요구 사항에 맞게 조정되도록 팀의 워크플로에 맞게 프로세스를 만들고 수정할 수 있습니다. 이러한 유연성을 통해 개발 프로세스의 변경 내용을 보다 쉽게 관리하고 적응할 수 있습니다.
Azure DevOps Server
Azure DevOps Server를 사용하면 상속 프로세스 모델과 온-프레미스 XML 프로세스 모델 중에서 선택할 수 있습니다.
상속 프로세스 모델: 이 모델은 사용자 인터페이스를 통해 작업 항목 유형, 상태 및 필드를 직접 쉽게 사용자 지정할 수 있도록 WYSIWYG(표시되는 내용) 사용자 지정을 지원합니다. 이 방법은 사용자 지정 프로세스를 간소화하고 변경 내용이 프로젝트에 즉시 반영되도록 합니다.
온-프레미스 XML 프로세스 모델: 이 모델은 작업 추적 개체에 대한 XML 정의 파일 가져오기 또는 내보내기를 통해 사용자 지정을 지원합니다. 프로세스를 정의하고 관리하는 강력하고 유연한 방법을 제공합니다. 그러나 다음과 같은 다양한 문제가 발생할 수 있습니다.
- 기존 프로젝트에 대한 프로세스는 자동으로 업데이트되지 않으므로 변경 내용을 적용하기 위해 수동 개입이 필요합니다.
- XML 파일 관리의 복잡성으로 인해 오류 및 불일치가 발생할 수 있습니다.
- 특히 대규모 또는 복잡한 환경에서 사용자 지정을 유지 관리하고 문제를 해결하는 것은 어려울 수 있습니다.
문제를 방지하기 위해 사용자 지정 프로세스 템플릿 및 witadmin.exe 도구는 항상 사용하지 않도록 설정됩니다. 이 방법을 사용하면 모든 프로젝트가 각 Azure DevOps Services 업그레이드로 자동으로 업데이트됩니다. 제품 팀은 프로세스 사용자 지정을 더 쉽고 지속 가능하게 만들기 위해 노력하고 있습니다.
프로세스 사용자 지정 기능을 사용하면 웹 UI(사용자 인터페이스) 내에서 직접 변경할 수 있습니다. 프로그래밍 방식으로 프로세스를 사용자 지정하려는 경우 REST 엔드포인트를 사용할 수 있습니다. 이러한 방식으로 프로젝트를 사용자 지정하면 새 버전의 기본 프로세스가 Azure DevOps Services 업그레이드를 통해 릴리스될 때 자동으로 업데이트됩니다.
자세한 내용은 작업 추적 환경 사용자 지정을 참조하세요.
분석 및 보고
Azure DevOps Services 및 Azure DevOps Server는 소프트웨어 프로젝트의 진행률 및 품질에 대한 인사이트를 제공하는 다양한 도구를 제공합니다. 이러한 도구에는 다음이 포함됩니다.
대시보드 및 경량 차트: 클라우드 및 온-프레미스 플랫폼 모두에서 사용할 수 있는 이러한 도구는 쉽게 설정하고 사용할 수 있습니다. 대시보드는 프로젝트 상태에 대한 사용자 지정 가능한 개요를 제공하는 반면 차트는 주요 메트릭 및 추세의 시각적 표현을 제공합니다.
분석 서비스 및 분석 위젯: 빠른 읽기 액세스 및 서버 기반 집계에 최적화된 Analytics 서비스는 프로젝트의 데이터에 대한 심층적인 인사이트를 얻는 데 도움이 됩니다. 분석 위젯을 대시보드에 추가하여 실시간 데이터 및 추세를 표시할 수 있습니다.
Microsoft Power BI 통합: 이 통합을 통해 단순성과 기능을 결합하여 분석 데이터를 Power BI 보고서로 가져올 수 있습니다. Power BI를 사용하면 프로젝트의 성능을 포괄적으로 볼 수 있는 대화형 및 시각적으로 매력적인 보고서를 만들 수 있습니다.
OData 지원: OData 지원을 사용하면 지원되는 브라우저에서 Analytics 서비스를 직접 쿼리하고 필요에 따라 반환된 JSON 데이터를 사용할 수 있습니다. 여러 프로젝트 또는 전체 조직에 걸쳐 있는 쿼리를 생성하여 데이터를 분석하고 활용하는 방법에 유연성을 제공할 수 있습니다. Analytics 서비스에 대한 자세한 내용은 보고 로드맵을 참조하세요.
이러한 도구는 소프트웨어 프로젝트의 진행 상황 및 품질을 모니터링, 분석 및 보고하기 위한 강력한 기능을 제공하므로 정보에 입각한 의사 결정을 내리고 지속적인 개선을 추진할 수 있습니다.