Microsoft MVP성태의 닷넷 이야기
Team Foundation Server: 7. 외부 빌드 머신 구성 [링크 복사], [링크+제목 복사],
조회: 18288
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 


환경 : Single-server TFS



사실, TFS 서버를 한 대의 머신에 설치하는 것은 여러모로 바람직하지는 않습니다.
왜냐하면, SQL Server와 TFS 서버가 함께 있음으로 인한 부하를 무시할 수는 없기 때문입니다. TFS 서버를 SourceSafe처럼 쓰시는 분들도 계실 텐데, 느끼시겠지만 소스 세이프 보다는 많이 느리죠.

MS도 그 "느리다"는 것을 인지했기 때문에 "TFS Proxy"까지 만들게 되었을 것입니다. (Proxy라고 해서 Front-end HTTP 웹 서버에서 Back-end TFS 서버로 요청을 중계해 주는 것이라고 생각하실 수 있는데, TFS Proxy는 그러한 역할을 하지 않고 "Source Control"을 좀 더 빠르게 해주는 캐쉬기능을 담당합니다.)

아키텍트적으로 굳이 큰 그림을 그려 본다면 TFS 서비스를 원활하게 구동시키기 위해서는 아래와 같이 5대 정도의 컴퓨터가 필요할 수 있습니다.

인증 서버 : Active Directory
TFS Server - Application Tier
SQL Server - Data Tier
Proxy Server - TFS Proxy
Build Server - TFS Build Machine

하지만, 공부를 목적으로 하거나 회사에서의 소규모 테스트를 위한 용도로는 다음과 같은 구성이 일반적일 것입니다.

인증 서버 : AD
TFS Server - App Tier + Data Tier + Build

물론, 최소 구성요소는 TFS Server이지만 가능한 AD 서버를 두고 TFS 서버(Single-Server 일지라도)를 그에 참여시키는 것을 권장합니다.



자, 이제 Single-server로 구성을 하긴 했지만, 조금 쓰다보면 1GB 메모리를 소모해버리는 TFS 서버에서 Build까지 하도록 하는 것은 너무 가혹하다는 생각을 하게 됩니다. ^^ 더군다나, 이제 TFS 서버는 단순한 빌드만을 하는 용도가 아니라, Debug/Release 산출물은 물론이고 Unit Test, Symbol 서버, Code Analysis, 최종 제품으로의 셋업 Setup 과정까지 담당하게 되니, 당장은 아니더라도 언젠가는 Build server를 별도로 두고 싶어질 것입니다.

그럼, 어떻게 Build Machine을 구성할 수 있을까요? 천천히 따라해 보도록 하겠습니다.

1. Build를 수행할 컴퓨터에 TFS CD의 "\build" 폴더에서 setup.exe를 실행시켜서 빌드 서비스를 설치합니다. 이때의 빌드 서비스 구동 계정은 AD에 참여 시킨 계정으로 해줍니다.

2. Team Project에서 새로운 Team Build를 생성하는 과정에서 Build Service를 설치한 컴퓨터를 지정해 줍니다. [아래 그림 참조]

원격 빌드 컴퓨터를 지정

3. "인터넷으로 Team Server 접근"에서 설명했던 것처럼, 빌드 서비스가 구성된 원격지 컴퓨터의 환경 설정을 수정해 주어야 합니다. 즉, Build Service로 하여금 어떤 PC가 TFS Server인지를 알 수 있도록 해주어야 하는데, 해당 PC의 다음과 같은 환경 구성 값을 수정해 주시면 됩니다.

--- 변경 전 -----
    <!-- AllowedTeamServer
         This is the Team Foundation Server Application Tier that can connect
         to this build machine.
        -->
    <add key="AllowedTeamServer" value="" />

--- 변경 후 -----
    <add key="AllowedTeamServer" value="TFS 접근 URL 주소" />
예를 들어,
    <add key="AllowedTeamServer" value="https://www.sysnet.pe.kr:8070/" />

자, 이제 모든 설정은 마무리 되었습니다. Team Explorer에서 해당 Team Build를 선택해서 Build 명령을 내리면 원격지 컴퓨터에서 빌드 작업이 실행되게 됩니다.






[최초 등록일: ]
[최종 수정일: 7/10/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 166  167  168  169  170  171  [172]  173  174  175  176  177  178  179  180  ...
NoWriterDateCnt.TitleFile(s)
706정성태4/21/200925526.NET Framework: 131. ClickOnce - 그룹화시켜 다운로드파일 다운로드1
705정성태4/20/200921048개발 환경 구성: 40. TFS2008 SP1의 DBTier에 SQL Server 2008 SP1 설치 [1]
704정성태4/19/200921013개발 환경 구성: 39. Together 2007 SP1 설치
702정성태4/18/200932318.NET Framework: 130. Infragistics - Tabbed MDI WPF 응용 프로그램파일 다운로드1
701정성태4/17/200927155Windows: 44. bootsect 오류 - Access is denied.
700정성태4/17/200930259.NET Framework: 129. Infragistics WPF 컨트롤 사용 [1]
699정성태4/16/200928793.NET Framework: 128. 이벤트 멤버의 명시적 구현파일 다운로드1
696정성태4/12/200928042오류 유형: 77. RDP 연결이 되지 않는 경우. [1]
693정성태4/9/200922543오류 유형: 76. "Client found response content type of '', but expected 'text/xml'. The request failed with an empty response.No Reports".
692정성태4/8/200935524.NET Framework: 127. ClickOnce로 ActiveX를 같이 배포하는 방법 [2]파일 다운로드1
690정성태4/5/200923170오류 유형: 75. Event Viewer - The data is invalid (13)
688정성태4/5/200929223VS.NET IDE: 60. Output 경로에 매크로 상수 사용하는 방법 [1]
687정성태4/5/200923442.NET Framework: 126. Composite Application Guidance for WPF and Silverlight
689정성태4/5/200923380    답변글 .NET Framework: 126.1. CAG - 빌드 환경 구성파일 다운로드1
691정성태4/6/200923160    답변글 .NET Framework: 126.2. CAG - Shell 띄우기파일 다운로드1
695정성태4/10/200924931    답변글 .NET Framework: 126.3. CAG - 간단한 유형의 모듈 제작파일 다운로드1
703정성태4/18/200923788        답변글 .NET Framework: 126.6. CAG - Tabbed MDI Shell 적용파일 다운로드1
697정성태4/13/200928042    답변글 .NET Framework: 126.4. CAG - Unity 컨테이너 사용 [1]파일 다운로드1
698정성태4/15/200927304    답변글 .NET Framework: 126.5. CAG에 MVVM 패턴 적용 (1) [2]파일 다운로드1
686정성태4/4/200948942웹: 11. IE 8 - TabProcGrowth 레지스트리 키 [2]
685정성태4/3/200949719개발 환경 구성: 38. Hyper-V 사용 후기 [5]
684정성태4/2/200924175오류 유형: 74. IE 8 설치 이후, VS.NET 위저드 화면 동작 오류
683정성태3/28/200930925디버깅 기술: 26. 보호 모드로 응용 프로그램 디버깅하는 방법 - 두 번째 이야기 [3]
682정성태3/27/200928068디버깅 기술: 25. 보호 모드로 응용 프로그램 디버깅하는 방법 [2]
681정성태3/23/200925214오류 유형: 73. SQL Server 2008 Express 설치 오류
680정성태3/21/200925161.NET Framework: 125. WPF - RadioButton에 대한 데이터바인딩(2) [1]파일 다운로드1
... 166  167  168  169  170  171  [172]  173  174  175  176  177  178  179  180  ...