Team Foundation Server 이동 또는 복제(하드웨어 이동)

TFS(Team Foundation Server) 소프트웨어 배포를 이동하거나 복제할 수 있습니다. 새 하드웨어로 복원하여 컴퓨터 간에 TFS를 이동할 수 있습니다(복원 기반 이동이라고도 함). 예를 들어 수용작업량이 더 크거나 처리 속도가 개선된 서버로 TFS를 이동하거나, TFS가 현재 실행되고 있는 하드웨어의 안정성에 문제가 있을 수 있습니다. TFS를 새로운 서버로 이동하면 프로젝트 기록 손실 없이 TFS를 실행하는 하드웨어를 변경할 수 있습니다.

TFS 배포를 복제하려면 이동과 동일한 단계와 함께 몇 가지 추가 단계를 수행합니다. 원래 하드웨어 및 TFS 배포의 사용을 중단할 계획이면 이동을 수행합니다. 이동 후 원래 TFS 인스턴스를 계속 사용하려면 복제를 수행합니다.

중요

경우에 따라 TFS 배포와 해당 하드웨어의 도메인을 변경할 수 있습니다.도메인 변경은 환경 기반 이동이며, 두 이동 유형을 결합하면 안 됩니다.먼저 하드웨어 이동을 완료한 다음 환경을 변경합니다.

TFS를 이동하거나 복제하려면 다음 단계를 수행합니다.

  1. 권한 확인

  2. 데이터베이스 백업 및 소프트웨어 설치

    1. 데이터베이스 및 암호화 키 백업

    2. 새 데이터 계층 서버에 SQL Server 설치 및 구성

    3. 새 응용 프로그램 계층 서버에 소프트웨어 설치 및 구성

  3. 새 하드웨어에 TFS 데이터베이스 복원

    1. TFS 데이터베이스 복원

    2. 콘텐츠 데이터베이스의 새 위치로 SharePoint 제품 리디렉션

    3. (복제 옵션) 서버 ID 다시 구성 및 데이터베이스 다시 매핑

  4. 새 응용 프로그램 계층 서버의 구성 업데이트

    1. 새 응용 프로그램 계층 구성

    2. Team Foundation Server URL 업데이트

    3. 모든 서비스 계정 업데이트

    4. 빌드 서버 업데이트

    5. TFS에서 SharePoint 웹 응용 프로그램 구성

    6. 보고 및 SQL Server Analysis Services 구성

  5. 권한 확인, 사용자에게 알림 및 백업 구성

    1. 사용자, 그룹, 팀 및 서비스 계정의 권한 확인

    2. 클라이언트 컴퓨터의 캐시 새로 고침

    3. 사용자에게 알림

    4. 백업 구성

1.권한 확인

이전 하드웨어와 새 하드웨어 모두에서 관리자여야 합니다. 또한 TFS, 배포에 사용되는 SQL Server, 보고, SharePoint 제품 등의 모든 소프트웨어(배포에서 보고 또는 SharePoint를 사용하는 경우) 및 배포가 상호 운용되는 Project Server 등의 다른 모든 소프트웨어에 대한 관리자(또는 등등한 권한 소유)여야 합니다.

  • 다음 그룹의 멤버인지 확인합니다.

    • 서버: Administrators(로컬 Administrators 그룹 또는 동등 수준 그룹)

    • TFS: Team Foundation Administrators 및 Admin Console Users

    • SQL Server: sysadmin

    • SharePoint 제품: Farm Administrators(TFS 배포가 SharePoint 제품과 통합되는 경우)

이러한 그룹 중 하나 이상의 멤버가 아닌 경우 지금 사용 권한을 얻으십시오.

2.백업 및 설치

먼저 TFS 데이터베이스를 백업한 다음 새 하드웨어에 소프트웨어를 설치합니다.

2-a.데이터베이스 및 SQL Server Reporting Services 암호화 키 백업

  1. TFS 관리 콘솔을 열고 예약된 백업 페이지에서 전체 백업을 수행합니다. 백업을 수행하면 백업 계획에서 백업에 대해 구성된 모든 항목이 백업되지만 이 백업은 계획에서 예약된 시간이 아니라 즉시 수행됩니다. 배포에서 보고를 사용하는 경우 이 백업 집합의 일부로 암호화 키를 백업할 수 있습니다.

    작업이 종료되는 동안 창을 닫을 수 있습니다.

    백업이 구성되어 있지 않은 경우 먼저 계획을 만들어야 전체 백업을 수행할 수 있습니다.

  2. 백업이 완료되면 저장 장치 또는 네트워크 공유에서 백업을 사용할 수 있고 새 하드웨어에서 이 백업에 액세스할 수 있는지 확인합니다.

2-b.새 데이터 계층 서버에 SQL Server 설치 및 구성

  • 새 서버에 SQL Server를 설치하고 작동하는지 확인합니다. 이전 배포에 보고가 사용된 경우 보고 및 Analysis Services 구성 요소를 포함해야 합니다. 서비스 팩 및 누적 업데이트 수준을 포함하여 이전에 사용한 것과 동일한 버전을 설치해야 합니다.

    SQL Server 2008 R2 설치 - 기능

    또는 일치하는 버전이 이미 설치되어 있는 서버에서 SQL Server 인스턴스를 만들고 TFS 데이터베이스를 해당 인스턴스로 복원할 수 있지만 이 경우 복원 후에 더 많은 구성 작업이 필요합니다.

    SQL Server를 설치하고 구성하는 옵션에 대한 자세한 내용은 여기를 참조하십시오.

    SQL Server를 설치한 후 배포에 보고가 포함된 경우 SQL Server Management Studio를 열고 ReportServer 및 ReportServerTempDB 데이터베이스를 분리합니다. 그렇지 않으면 TFS 데이터베이스용으로 만들어진 백업으로 이러한 데이터베이스를 복원하지 못할 수 있습니다.

    기존 데이터베이스는 복원 전에 분리해야 합니다.

2-c.새 응용 프로그램 계층 서버에 소프트웨어 설치 및 구성

TFS에 대해 새 서버를 구성하려면 먼저 TFS를 지원하는 데 필요한 소프트웨어를 설치하고 구성해야 합니다. 이 소프트웨어에는 다음과 같은 구성 요소가 포함되어 있습니다.

  • 배포 구성에 지원되는 운영 체제

  • 지원되는 버전의 SharePoint 제품(배포가 SharePoint 제품와 통합되었으며 TFS와 동일한 서버로 이동하려는 경우)

참고

새 TFS 배포 설치와 달리 새 서버로 이동할 때는 표준 단일 서버 또는 고급 옵션의 일부로 SharePoint 제품을 설치할 수 없습니다.이전 배포에서 사용한 것과 동일한 버전 및 에디션의 SharePoint 제품을 수동으로 설치하거나 사용 중인 버전 및 에디션의 SharePoint 제품에 대한 지침에 따라 배포를 새 하드웨어로 별도로 이동해야 합니다.

새 환경에서 Windows, IIS(기본적으로 구성되지 않은 경우) 및 SharePoint(사용하는 경우)를 설치 및 구성하고 서버 및 해당 소프트웨어가 작동하는지 확인합니다.

자세한 내용은 Team Foundation Server의 시스템 요구 사항TFS를 위한 새 하드웨어로 SharePoint 이동을 참조하십시오.

3.새 하드웨어에 TFS 데이터베이스 복원

복원 도구를 사용하여 TFS 데이터베이스를 복원하려면 새 데이터 계층 서버에 TFS를 설치하되 구성하지는 않고 예약된 백업 도구 노드에서 복원 기능을 사용해야 합니다.

SQL Server 복원 도구를 사용하여 TFS 데이터베이스를 수동으로 복원하려는 경우 작업은 가능하지만 절차가 더 까다롭습니다. 또한 새 배포에서 데이터베이스를 수동으로 정지 해제해야 합니다. TFS의 복원 마법사에서 복원 프로세스의 일부로 이 작업을 자동으로 수행하지만 해당 기능은 SQL Server 복원 도구에 포함되지 않습니다.

TFS를 위한 새 하드웨어로 SharePoint 이동의 단계를 사용하여 SharePoint Foundation 2013을 설치했으며 해당 서버를 TFS의 서버로 사용하려는 경우 설치 비트와 관리 콘솔이 서버에 이미 있으며 다음 절차에서 처음 두 단계를 건너뛰어도 됩니다.

3-a.TFS 데이터베이스 복원

  1. TFS 설치 미디어를 시작합니다. Team Foundation Server 설치 페이지에서 설치를 선택합니다.

  2. 설치가 완료되면 Team Foundation Server 구성 센터가 열립니다. 설치 미디어를 닫습니다.

    관리 콘솔이 구성되지 않은 상태로 자동으로 열립니다. 이는 정상적입니다.

  3. 복원 마법사를 시작하려면 TFS 관리 콘솔을 열고 예약된 백업을 엽니다.

    복원 마법사 시작

  4. 백업 집합의 경로를 지정하고 이전 배포를 정지한 후에 만든 집합을 선택합니다.

    네트워크 경로를 선택한 후 복원 설정

  5. 마법사를 완료하고 새 SQL Server 인스턴스로 데이터베이스를 복원합니다.

    데이터베이스가 새 서버에 복원되었습니다.

3-b.콘텐츠 데이터베이스의 새 위치로 SharePoint 제품 리디렉션

배포에서 SharePoint 제품을 사용하는 경우 위에서 언급한 것처럼 TFS를 위한 새 하드웨어로 SharePoint 이동의 단계에 따라 이전 배포에 사용한 것과 동일한 버전 및 에디션의 SharePoint 제품이 이미 설치되었습니다. 이전 배포의 콘텐츠 데이터베이스(WSS_Content)를 복원 집합의 일부로 새 서버로 복원한 후에는 이제 SharePoint 제품을 실행하는 서버를 해당 데이터베이스의 새 위치로 리디렉션해야 합니다. 데이터베이스의 새 위치로 Team Foundation Server를 다시 구성하려면 이 데이터베이스가 작동 가능한 상태여야 합니다.

  1. SharePoint Foundation을 실행하는 새 하드웨어에서 관리자 권한으로 명령 프롬프트를 엽니다.

  2. 디렉터리를 Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\bin으로 변경하고 다음 매개 변수를 사용하여 stsadm.exe를 실행합니다. 여기서 SharePointFoundationServerName은 SharePoint Foundation 2013이 설치된 서버의 이름이고 SQLServerName은 TFS 데이터베이스 복원의 일부로 WSS_Content 데이터베이스를 복원한 서버의 이름입니다.

    stsadm.exe –o addcontentdb –url http://SharePointFoundationServerName/sites -databasename WSS_Content -databaseserver SQLServerName
    
  3. 명령이 성공적으로 완료된 후 다음 명령을 입력합니다. 여기서 Domain\UserName은 TFS와 함께 사용하기 위해 SharePoint Foundation 2013을 설치하고 구성하는 데 사용된 계정입니다.

    stsadm.exe -o addpermissionpolicy -url http://SharePointFoundationServerName -userlogin Domain\UserName -permissionlevel "full control"
    

3-c.(복제 옵션) 서버 ID 다시 구성 및 데이터베이스 다시 매핑

원래 TFS 인스턴스를 계속 사용하려면 새 응용 프로그램 계층 서버에서 다음 단계를 수행합니다. 이러한 단계는 하나 또는 두 배포 모두가 손상되는 위험을 방지하기 위해 필요합니다. 두 서버가 모두 활성 상태인 경우, 특히 같은 SharePoint 또는 보고 리소스를 가리키는 경우에는 배포가 손상될 수 있습니다.

  1. 관리자 권한으로 명령 프롬프트 창을 열고 디렉터리를 Drive:\%programfiles%\Microsoft Team Foundation Server 12.0\Tools로 변경합니다. 명령 프롬프트 창을 열고 다음을 입력합니다.

  2. TFSConfig PrepareClone 명령을 실행하여 예약된 백업, SharePoint 및 보고 리소스에 대한 정보를 제거합니다.

    TFSConfig PrepareClone /SQLInstance:ServerName /DatabaseName:DatabaseName /notificationURL: ApplicationTierURL

  3. TFSConfig ChangeServerID 명령을 실행하여 데이터베이스와 연결된 서버 GUID를 변경합니다. GUID는 TFS 배포 내에서 고유해야 합니다.

    TFSConfig ChangeServerID /SQLInstance:ServerName] /DatabaseName:ConfigurationDatabaseName [/ProjectCollectionsOnly] [/ConfigDBOnly] [/usesqlalwayson]

  4. TFSConfig RemapDBs 명령을 실행하여 복제된 TFS를 해당 데이터베이스로 리디렉션합니다.

    TFSConfig RemapDBs /DatabaseName:ServerName;DatabaseName /SQLInstances:ServerName1,ServerName2 [/AnalysisInstance:ServerName] [/AnalysisDatabaseName:DatabaseName] [/preview] [/continue] [/usesqlalwayson]

4.새 응용 프로그램 계층 서버의 구성 업데이트

새 응용 프로그램 계층 서버에서 다음 단계를 수행합니다.

4-a.새 응용 프로그램 계층 서버 구성

  1. TFS 관리 콘솔에서 설치된 기능 구성을 선택하여 구성 센터를 시작합니다.

  2. 응용 프로그램 계층 전용 마법사를 시작하고 데이터베이스에서 TFS 데이터베이스를 복원한 새 SQL Server 인스턴스를 지정합니다. 목록에서 Tfs_Configuration 데이터베이스를 선택합니다.

    SQL Server 및 데이터베이스 백업 집합 선택

  3. 마법사의 최종 페이지를 닫기 전에 "i" 기호를 찾습니다. 이 기호는 나중에 참조할 수 있는 정보를 나타냅니다. 최종 페이지에는 구성 로그의 위치도 포함되어 있습니다.

    모든 문제와 해당 로그 파일 위치 메모

4-b.TFS URL 업데이트

  1. 응용 프로그램 계층 노드로 이동한 다음 알림 및 Team Web Access URL을 확인합니다. 여전히 이전 배포 위치를 가리키고 있습니다. 정보를 업데이트합니다.

    알림 및 웹 URL이 만료되었습니다.

  2. 새 서버의 이름으로 URL을 업데이트한 후 정보가 올바른지 검토합니다.

    서버 URL이 아직도 localhost를 사용합니다.

4-c.모든 서비스 계정 업데이트

TFS 서비스 계정(TFSService) 및 데이터 소스 계정(TFSReports)을 업데이트해야 합니다. 이러한 계정이 변경되지 않았더라도 계정의 형식 및 ID를 새 서버에 적절하게 하려면 정보를 업데이트해야 합니다.

  1. 관리자 권한으로 명령 프롬프트 창을 열고 디렉터리를 Drive:\%programfiles%\Microsoft Team Foundation Server 12.0\Tools로 변경합니다.

  2. 명령 프롬프트에서 다음 명령을 입력하여 Team Foundation의 서비스 계정을 추가합니다. 여기서 DatabaseName은 구성 데이터베이스의 이름입니다(기본적으로 TFS_Configuration으로 설정됨).

    **TfsConfig Accounts /add /AccountType:ApplicationTier /account:**AccountName **/SQLInstance:**ServerName **/DatabaseName:**DatabaseName

  3. 명령 프롬프트에 다음 명령을 입력하여 데이터 소스 계정을 추가합니다.

    **TfsConfig Accounts /add /AccountType:ReportingDataSource /account:**AccountName **/SQLInstance:**ServerName **/DatabaseName:**DatabaseName

    자세한 내용은 계정 명령을 참조하십시오.

4-d.빌드 서버 업데이트

이제 이동한 TFS 배포를 가리키도록 빌드 서버를 리디렉션해야 합니다.

  1. 각 빌드 서버에서 관리 콘솔을 열고 빌드 서비스를 중지합니다.

  2. 빌드 서비스의 속성에서 통신 속성을 업데이트합니다.

    서비스를 중지한 다음 변경합니다.

4-d.SharePoint 웹 응용 프로그램 구성

배포에서 SharePoint 제품을 사용하며 TFS 이동의 일부로 SharePoint Foundation 2013을 이동한 경우 TFS를 새로운 웹 응용 프로그램으로 리디렉션해야 할 수도 있습니다. 그렇지 않은 경우에도 적절한 성능을 보장하기 위해 여전히 연결을 복구해야 합니다.

SharePoint 제품을 배포의 일부로 사용하지 않는 경우 또는 배포에서 이전 SharePoint 서버를 계속 사용하는 경우에는 이 절차를 건너뛰어도 됩니다.

  • 관리 콘솔을 열고 SharePoint 웹 응용 프로그램으로 이동합니다. 웹 응용 프로그램이 아직 이전 사이트를 참조하거나 새 배포에서 나열된 것과 다른 웹 응용 프로그램을 사용하는 경우 변경을 선택하고 설정을 업데이트합니다.

    TFS가 여전히 기존 응용 프로그램으로 리디렉션합니다.

    정보가 정확하거나 이미 정보를 수정한 경우 연결 복구를 선택합니다. 이렇게 하면 모든 항목이 제대로 작동하는 데 도움이 됩니다.

4-e.보고 및 Analysis Services 구성

배포에서 보고서 서버를 사용하는 경우에는 Team Foundation Server를 해당 위치로 리디렉션하고 웨어하우스를 다시 시작한 다음, Analysis Services의 데이터베이스를 수동으로 다시 빌드해야 합니다. 보고를 사용하지 않는 경우에는 이 절차를 건너뜁니다.

  1. 보고 노드로 이동합니다. 나열된 보고서 서버 값이 이전 값으로 새 값이 아니므로 편집합니다.

    보고서가 아직도 이전 서버를 가리키고 있음

  2. 새 서버를 가리키도록 3개의 탭 모두에서 값을 변경합니다. 새 배포의 데이터 소스 계정에 대한 올바른 정보를 제공해야 합니다.

    탭 3개의 정보가 모두 정확한지 확인

  3. 작업 시작을 선택하여 보고를 다시 시작합니다.

  4. 다시 빌드 시작을 선택하여 웨어하우스를 다시 빌드합니다.

5.권한 확인, 사용자에게 알림 및 백업 구성

새 하드웨어로 이동한 후에는 배포에 대한 모든 사용자, 그룹 및 서비스 계정이 각 서버에서 올바르게 작동하는 데 필요한 권한을 사용하여 구성되었는지 확인합니다. SQL Server 또는 로컬 컴퓨터의 추가 권한 같은 일부 권한은 자동으로 마이그레이션할 수 없습니다. 예를 들어 Team Foundation 관리자가 관리 콘솔을 열려면 응용 프로그램 계층 서버에서 로컬 Administrators 그룹의 멤버여야 하므로 사용자가 해당 그룹에 이러한 관리자를 수동으로 추가해야 합니다.

5-a.사용자, 그룹 및 서비스 계정의 권한 확인

  • 서버에 로그온하고 사용자, 그룹 및 서비스 계정이 작동하는 데 필요한 권한으로 구성되었는지 확인합니다. 프로젝트 그룹과 팀의 멤버 자격을 수동으로 무작위 검사하고 이러한 그룹과 팀에 필요한 권한이 있는지 확인합니다.

  • 팀 프로젝트 컬렉션을 찾은 다음 해당 컬렉션의 모든 프로젝트가 예상대로 나타나고 이러한 프로젝트의 사용자가 해당 작업 항목에 제대로 액세스할 수 있는지 확인합니다.

  • Team Web Access를 열고 팀 사이트와 팀이 예상대로 표시되는지 확인합니다.

필요한 그룹과 권한을 잘 모르시겠습니까? 자세한 내용은 다음을 참조하세요.팀 프로젝트에 사용자 추가, 팀 프로젝트 컬렉션에 대한 관리자 권한 설정, Team Foundation Server에서 관리자 권한 설정Team Foundation Server의 서비스 계정 및 종속성.

5-b.클라이언트 컴퓨터에서 데이터 캐시 새로 고치기

  • 서버에 로그온한 다음 ClientService 웹 서비스를 사용하여 클라이언트가 작업 항목 추적 및 Team Foundation 버전 제어용 캐시를 강제로 업데이트하도록 합니다.

    https://ServerName:8080/tfs/WorkItemTracking/v3.0/ClientService.asmx
    

    자세한 내용은 클라이언트 컴퓨터에서 데이터 캐시 새로 고침을 참조하십시오.

    다음에 로그온할 때 모든 사용자에 대한 전체 캐시를 새로 고치려는 경우 witadmin rebuildcache 명령을 사용합니다.

    참고

    데이터베이스를 다른 시점으로 복원한 경우 클라이언트 컴퓨터에서 데이터 캐시 새로 고침에 설명된 대로 버전 제어 캐시도 새로 고쳐야 합니다.

5-c.사용자에게 알림

TFS를 이동했으므로 이제 사용자에게 이동한 배포에 연결하는 방법을 알려 주어야 합니다. 특히, 다음 정보를 제공해야 합니다.

  • 프로젝트에 다시 연결할 수 있도록 새 서버의 이름 및 Team Web Access의 URL

  • 보고가 배포에 포함되어 있는 경우 보고의 새 데이터베이스 이름

  • SharePoint가 배포에 포함되어 있는 경우 SharePoint의 새 URL

  • 모든 복제를 업데이트하는 방법에 대한 Git 지침을 사용하는 팀 프로젝트의 멤버인 경우 해당 프로젝트의 모든 리포지토리가 로컬에 있습니다. 특히, 모든 복제에 대해 다음 명령을 실행해야 합니다.

    git remote set-url <remote name> <new URL>
    

    사용자는 탐색기 탭에서 팀 프로젝트를 찾아 각 복제의 URL을 확인할 수 있습니다.

    URL을 복사하여 리포지토리 수동 복제

    Git에 대한 자세한 내용은 여기를 참조하십시오.

5-d.새 TFS 인스턴스에서 백업 구성

관리 콘솔에서 예약된 백업 노드로 이동한 다음 새로운 서버의 TFS 데이터베이스를 백업하도록 예약된 백업을 다시 구성합니다.

자세한 내용은 백업 일정 및 계획 구성을 참조하십시오.

Q & A

Q: 물리적 서버가 아닌 도메인을 변경하려고 합니다.가능합니까?

A: 예. 이것을 환경 기반 이동이라고 하며, 단계는 여기서 확인할 수 있습니다. 환경 기반 이동을 하드웨어 기반 이동과 함께 사용하지 않도록 해야 합니다. 먼저 하드웨어 이동을 완료한 다음 환경을 변경합니다.

Q: 하드웨어 이동 후 Project Server와 통합하는 데 필요한 단계는 무엇입니까?

A: 예. 하드웨어 이동을 완료한 후 TFSAdmin ProjectServer /RegisterPWA 명령을 /tfs, /force/pwa 옵션과 함께 사용하여 Project Server에 TFS를 다시 등록해야 합니다. 여기서 Project Server와 TFS의 통합 관련 정보를 확인할 수 있습니다.