다음을 통해 공유


빌드 시스템 확장

응용 프로그램의 자동화된 빌드와 테스트를 위해 Team Foundation Build를 사용하려면 먼저 빌드 서버를 설정하고 빌드 컨트롤러와 몇 가지 빌드 에이전트를 추가하고 마지막으로 저장 폴더를 지정해야 합니다.새 프로젝트에서 소규모로 시작하는 팀인 경우는 몇 분 후에 이러한 빌드 시스템의 구성 요소를 단일 컴퓨터에 배포할 수 있습니다.팀과 코드베이스가 증가하면 상대적으로 간단하게 빌드 시스템을 점진적으로 확장할 수 있습니다.

팁

팀 프로젝트 컬렉션을 Team Foundation Service에서 호스팅하는 경우 이러한 단계를 모두 건너뛰고 아래 설명한 대로 호스팅된 빌드 컨트롤러를 사용할 수 있습니다.

다음은 작고 간단하게 시작한 다음 요구 사항이 커짐에 따라 빌드 시스템을 확장하는 방법을 보여 주는 몇 가지 예제입니다.

  • 호스팅된 빌드 컨트롤러가 포함된 Team Foundation Service

  • 온-프레미스 빌드 서버와 Team Foundation Service

  • 평가판 사용 또는 소규모 팀을 위한 시스템 빌드

  • 소규모 팀을 위한 시스템 빌드

  • 다중 빌드 서버 시스템

  • 여러 팀 프로젝트 컬렉션을 지원하도록 시스템 빌드

  • 다음 단계

호스팅된 빌드 컨트롤러가 포함된 Team Foundation Service

팀 프로젝트 컬렉션을 Team Foundation Service에서 호스팅하는 경우 사용자 지정 빌드 서버를 배포하지 않고 호스팅된 빌드 컨트롤러를 사용할 수 있습니다.

Team Foundation Service, 호스팅된 빌드 컨트롤러

Team Foundation Service에서 호스팅되는 팀 프로젝트 컬렉션에서 호스팅된 빌드 컨트롤러 사용을 참조하십시오.

온-프레미스 빌드 서버와 Team Foundation Service

팀 프로젝트 컬렉션을 Team Foundation Server에서 호스팅하고 있고 팀에 더 큰 규모 또는 사용자 지정 빌드 에이전트가 필요한 경우 온-프레미스 빌드 서버를 Team Foundation Server에 연결할 수 있습니다.

Team Foundation Service, 온-프레미스 빌드 서버

평가판 사용 또는 소규모 팀을 위한 시스템 빌드

Team Foundation Server를 평가용 또는 업무용으로 소규모 팀에서 사용하는 경우 다음 토폴로지가 적합합니다.

응용 프로그램 계층의 단일 컴퓨터 시스템

이 토폴로지는 단일 야간 빌드만 실행하는 팀처럼 휴무 시간에만 가끔씩 빌드를 실행하는 팀에 적용할 수 있습니다.그러나, 대부분의 팀에서는 다음과 같은 이유로 충분하지 않습니다.

  • 빌드 에이전트는 프로세서에 큰 부담을 주므로 응용 프로그램 계층의 성능이 현저히 저하될 수 있습니다.

  • 특히 빌드 컨트롤러에서 여러 활성 빌드 에이전트를 동시에 관리하는 경우 시스템 메모리가 받는 부담이 커질 수 있습니다.

  • Team Foundation Build Service를 설치하면 컴퓨터의 공격 대상 영역이 증가합니다.빌드 서버: 보안 위험 이해를 참조하십시오.

소규모 팀을 위한 시스템 빌드

소규모 팀에서 온-프레미스 Team Foundation Server 작업을 하는 경우 이 토폴로지를 고려해야 합니다.

단일 컴퓨터 시스템(독립 실행형)

프로세서를 많이 사용하는 작업은 빌드 에이전트에 의해 별도의 컴퓨터에서 수행되기 때문에 빌드가 실행될 때 빌드 에이전트가 응용 프로그램 계층의 성능에 영향을 주지는 않습니다.

또한 빌드 컨트롤러를 전용 빌드 서버에서 실행할 수도 있습니다.그러나 그림에 나와 있는 토폴로지를 적용하면 빌드 서버를 수리하거나 교체해야 하는 경우 등에 파급 효과를 줄이면서 빌드 시스템을 변경할 수 있는 이점이 있습니다.

다중 빌드 서버 시스템

팀과 코드베이스의 규모가 커지면 증분식으로 리소스를 추가하여 요구 사항을 충족할 수 있습니다.예를 들어, 추가 컨트롤러와 빌드 에이전트를 추가할 수 있습니다.

다중 빌드 서버가 있는 AT의 컨트롤러

빌드 컨트롤러 A가 응용 프로그램 계층과 같은 컴퓨터에 있다는 점은 프로세서 관점에서 일반적으로 문제가 되지 않습니다.하지만 앞에서 설명한 메모리 압박 및 공격 대상 영역 문제로 인해 빌드 컨트롤러를 다른 서버로 이동해야 할 수 있습니다.

다음 예제와 같이 여러 빌드 서버를 사용하여 각 서버에 다른 용도를 부여할 수 있습니다.

  • 연속 통합 또는 제어된 체크 인 빌드를 처리하는 빌드 에이전트 전용 고성능 컴퓨터의 빌드 서버.팀에서는 빌드로 인해 작업이 지연되지 않도록 이러한 종류의 빌드(특히 제어된 체크 인 빌드)를 빠르게 실행해야 합니다.

  • 많은 테스트 실행이나 코드 분석과 같은 프로세스를 실행하는 데 많은 시간이 필요한 야간 예약 BVT 빌드 전용 빌드 서버

  • Windows 스토어 앱 빌드 및 테스트와 같은 전문 작업 전용으로 준비된 빌드 서버

팁

이러한 상황에서는 특수화된 빌드 에이전트에 태그를 적용한 다음, 빌드 정의에서 정확한 태그 세트가 있는 빌드 에이전트만 사용하도록 제한할 수 있습니다.간단한 기본 빌드 프로세스의 경우 빌드 에이전트 기능이나 목적을 나타내기 위해 태그 할당, 빌드를 처리하는 빌드 에이전트 지정을 참조하고 고급 사용자 지정 빌드 프로세스의 경우 빌드 에이전트에서 활동 실행을 참조하십시오.

여러 팀 프로젝트 컬렉션을 지원하도록 시스템 빌드

다음 빌드 시스템 토폴로지 예제는 엔터프라이즈 수준 소프트웨어 작업을 지원할 수 있습니다.

다중 컨트롤러가 있는 다중 컴퓨터 시스템

각 팀 프로젝트 컬렉션에는 위에서와 같이 고유 빌드 컨트롤러가 있어야 합니다.이 토폴로지에 의해 빌드 서버가 격리되는 방식을 확인하십시오.팀 프로젝트 컬렉션 A에서 작업하는 팀 멤버는 빌드 컨트롤러 A에서 제어하는 빌드 에이전트만 사용할 수 있습니다.이 제약 조건은 보다 민감한 지적 재산권에 대한 액세스를 엄격하게 제어해야 하는 상황에서 유용할 수 있습니다.

다음 단계

  • 빌드 서버 배포 및 작업
    Team Foundation Build를 Team Foundation Server와 함께 사용하려면 최소 하나 이상의 빌드 서버를 배포해야 합니다.하나 이상의 온-프레미스 서버를 Team Foundation Service에 연결할 수도 있습니다.

    팁

    시스템을 확장하면서 새 빌드 서버를 배포할 때 기존 빌드 서버를 대체할 수 있습니다.예를 들어, 더 강력한 새 컴퓨터에 동일한 구성 및 빌드 컨트롤러 집합을 호스팅하려는 경우가 있습니다.자세한 내용은 Team Foundation Build Service 설치를 참조하십시오.

  • 빌드 컨트롤러 배포 및 구성
    빌드 컨트롤러를 사용하여 하나 이상의 빌드 에이전트를 풀링합니다.빌드 서버에서 빌드 컨트롤러 하나를 호스팅할 수 있습니다.

  • 빌드 에이전트 배포 및 구성
    빌드 에이전트를 사용하여 버전 제어에서 파일 가져오기, 작업 영역 프로비전, 코드 컴파일 및 테스트 실행과 같이 프로세서를 많이 사용하는 빌드 작업을 수행할 수 있습니다.

  • 저장 폴더 설정
    빌드 시스템이 팀에 바이너리, 테스트 결과 및 로그 파일을 제공할 수 있도록 하나 이상의 저장 폴더를 준비하고 지정할 수 있습니다.

  • 빌드 시스템 관리
    빌드 서버를 배포한 후 Team Foundation 관리 콘솔에서 관리할 수 있습니다.Team Foundation 관리 콘솔 또는 Visual Studio에서 빌드 컨트롤러와 빌드 에이전트를 관리할 수 있습니다.

  • Team Foundation Build 사용
    빌드 시스템을 설치하면 팀이 간단한 빌드 프로세스를 만들고(예: 연속 통합 빌드) 앱을 자동 으로 빌드 및 테스트할 수 있습니다.