移動專案集合
Azure DevOps Server 2022 |Azure DevOps Server 2020 |Azure DevOps Server 2019
您可以將專案集合從 Azure DevOps Server 的一個部署移至另一個部署。 例如:
- 您在組織中有多個 Azure DevOps Server 部署,而且您想要將集合移至另一個部署,以更符合您的業務需求。
- 您想要將集合移至具有自己部署 Azure DevOps Server 的遠端辦公室。
- 您想要藉由將另一個 SQL Server 實例新增至 Azure DevOps Server,並想要在實例之間散發現有的集合,以擴充 Azure DevOps Server 的部署。
- 您必須將個別專案集合與執行舊版的 Azure DevOps Server 部署中斷連結,然後將它移至執行目前 Azure DevOps Server 版本的伺服器,以累加方式升級您的部署。 (其中一個常見原因是某些小組可能需要移轉至較新版本的 Azure DevOps Server,而其他小組則因工具或專案原因而必須保留在較舊的版本上。在此案例中,您也必須使用 [設定功能精靈] 升級集合中的每個專案。 如需詳細資訊,請參閱 在 Azure DevOps Server 升級之後設定功能。 Azure DevOps Server 2019 的設定功能精靈已被取代。 您只能在 TFS 2018 和舊版上執行精靈。 Azure DevOps Services 上定義的專案會隨著每個服務升級自動更新。
移動集合的步驟將取決於裝載集合之部署的特定組態,以及您移動集合的部署。 例如,如果您將集合移至新的網域,則必須將使用者從該網域新增至集合層級和專案層級的適當群組。
以下是移動整個專案集合的方式。 若要移動集合的一部分,請參閱 分割專案集合。
必要條件
開始移動之前,請確定您是伺服器和軟體上的系統管理員,而且是您要移動的部署,以及您要移動的軟體。 如果您不是系統管理員, 請新增為系統管理員。
1.中斷連結集合
在移動集合之前,請先將其與執行所在的 Azure DevOps Server 部署中斷連結。 請務必不要略過此步驟。 當您中斷連結集合時,所有作業和服務都會停止,然後停止集合資料庫。 此外,卸離程式會從組態資料庫複製集合特定數據,並將其儲存為專案集合資料庫的一部分。 此組態數據可讓集合資料庫附加至 Azure DevOps Server 的不同部署。 如果數據不存在,您就無法將集合附加至 Azure DevOps Server 的任何部署,但其來源除外。
注意
中斷連結集合可防止使用者存取該集合中的任何專案。
在裝載要移動之集合的伺服器上,開啟 Azure DevOps 的管理控制台,並在 [專案集合] 中反白顯示該集合。
在 [一般] 索引標籤上,選取 [中斷連結集合]。
[中斷鏈接專案集合精靈] 隨即開啟。
(選擇性)在 [ 提供專案集合 的服務訊息] 頁面上,於 [服務訊息] 中,為可能嘗試連線到此集合中的專案的使用者提供訊息。
選取 [下一步]。
在將用來卸離專案集合頁面的 [ 檢閱設定 ] 上,檢閱詳細數據。
若要變更任何設定,請選取 [ 上一頁]。 如果它們看起來正確,請選取 [ 驗證]。
當所有整備檢查都成功完成時,請選取 [ 中斷連結]。
在 [ 監視專案集合中斷鏈接進度 ] 頁面上,當所有進程都完成時,選取 [ 下一步]。
(選擇性)在 [ 檢閱此專案集合 的補充資訊] 頁面上,選取或記下記錄檔的位置。
選取關閉。
專案集合不再出現在管理控制台中的集合清單中。
2.備份收集資料庫
卸離集合之後,請備份其資料庫,將其移至另一部伺服器。 若要執行這項工作,請使用 SQL Server 所提供的工具。
- 如需這項工作的相關信息,請參閱 在 SQL Server 中備份和還原資料庫和 建立備份排程和計劃。 請務必選取符合部署的 SQL Server 版本。
重要
您只能將資料庫還原至相同版本或較新版本的 SQL Server。 您無法將 SQL Server 資料庫還原至舊版產品
。如果您的原始部署使用 SQL Server 的 Enterprise 或 Datacenter 版本,而且您想要將資料庫還原至執行 Standard 版本的伺服器,則必須使用停用 SQL Server 壓縮所建立的備份集。 除非您停用數據壓縮,否則您將無法將 Enterprise 或 Datacenter Edition 資料庫還原至執行 Standard Edition 的伺服器。 若要關閉壓縮,請遵循在 Azure DevOps 資料庫中停用 SQL Server 數據壓縮中的步驟。
3.移動集合資料庫
在移動集合的過程中,您必須還原、複製或移動集合資料庫至已設定為支援部署要移動集合之 Azure DevOps Server 的 SQL Server 實例。 您可以選取您想要移動資料庫的方法。
如需將資料庫移至另一個 SQL Server 實例的詳細資訊,請參閱:
4.附加集合
還原集合資料庫之後,您可以將集合附加至 Azure DevOps Server 的慣用部署。 如果您要移動的部署會使用報告,系統會針對您要附加的集合建置報告資料夾和預設報表,作為程式的一部分。
在裝載要移動集合之部署之部署的伺服器上,開啟 Azure DevOps 的管理控制台。
選取 [專案集合],然後選取 [ 附加集合]。
[附加專案集合精靈] 隨即開啟。
在 [ 選取要附加 的專案集合資料庫] 頁面上,於 [SQL Server 實例] 中,提供尚未列出的伺服器名稱和裝載集合資料庫的實例。
在 [ 資料庫] 清單中,選取要附加的集合資料庫,然後選取 [ 下一步]。
在 [輸入專案集合資訊] 頁面上,如果還沒有集合,請在 [名稱] 中提供集合的名稱。
(選擇性)在 [描述] 中,提供集合的描述。
選取 [下一步]。
在將用來附加專案集合頁面的 [ 檢閱設定 ] 上,檢閱資訊。
若要變更任何設定,請選取 [ 上一頁]。 如果所有設定都正確,請選取 [ 驗證]。
當所有整備檢查都成功完成時,請選取 [ 附加]。
在 [ 監視專案集合附加進度 ] 頁面上,當所有進程都完成時,選取 [ 下一步]。
(選擇性)在 [ 檢閱此專案集合 的補充資訊] 頁面上,選取或記下記錄檔的位置。
選取關閉。
專案集合會出現在管理控制台中的集合清單中。
5.設定移動的專案集合
如果您在相同的網域中移動集合,而且想要使用先前支援集合的相同 Web 應用程式,而且您想要允許該集合的系統管理員存取此 Azure DevOps Server 部署,則可以略過此程式。
移動集合之後,請使用適當的設定來更新該集合的 Web 應用程式和許可權群組。
設定移動的集合
開啟專案集合的每個索引標籤,並視需要修改設定以反映服務和位置,以符合目前 Azure DevOps Server 上資源的位置。 對於報告資源而言,這特別重要。 如果您看到錯誤,請確定您的帳戶具有專案集合管理員所需的許可權,並已視需要新增任何其他專案集合管理員。
6.設定專案
如果您在相同的網域中移動集合,而且想要允許該集合中的專案使用者存取此 Azure DevOps Server 部署,則可以略過此程式。
設定已移動集合的系統管理員之後,您或這些系統管理員必須將使用者和群組新增至該集合中的專案。 視您的部署而定,您可能也需要在 Reporting Services 中設定這些用戶的許可權。
將使用者新增至專案
- 如需這項工作的相關信息,請參閱 將使用者新增至專案。
將資源新增至已移動的專案
- 如需這項工作的詳細資訊,請參閱 設定資源以支持專案。
問與答
問:我的 Azure DevOps Server 部署使用報告。 如何? 移動報表以及移動集合嗎?
答: 首先,您必須儲存或匯出您想要從支援其原始部署中集合的報表伺服器移動的任何報表。 然後,您必須手動將每個報表上傳至支持移動集合的報表伺服器,這可以是冗長的程式。 請考慮是否要上傳所有報表,或報表子集是否符合您的商務需求。 您不需要上傳所有報表或任何報表,但只有在移動程式完成之後,您上傳的報表才會可供使用。
當您移動集合之後,您也需要在原始部署上重建倉儲和分析服務 Cube,因此原始部署不會持續嘗試為不再存在之集合建置報表。
移動報表
在報表管理員的新環境中,上傳您想要移至報表伺服器上支援集合之適當資料夾的每個報表。
如需詳細資訊,請參閱 將檔案上傳至資料夾。
在報表管理員中,編輯每個報表,將數據源變更為新的報表伺服器。
重建數據倉儲和 Analysis Services
開啟 Azure DevOps 的管理主控台。
在導覽列中,選取 [ 報告]。
在 [報告] 中,選取 [開始重建]。
在 [ 重建倉儲與 Analysis Services 資料庫] 對話框中,選取 [ 確定]。
注意
倉儲將會完成重建,數據會在 [開始重建] 動作完成之後完成重新填入。 視您的部署大小和數據量而定,整個程式可能需要數小時才能完成。
問:如何? 移動包含部署集區和/或部署群組的小組專案集合?
答: 當您將集合移至另一個部署時,針對來源中具有卸離集合中部署群組的每個部署集區,系統會自動在目標實例中布建新的部署集區。 如果是 Azure DevOps Server 2019 或更新版本,自動布建的部署集區名稱與來源實例的名稱相同。
在舊版中,部署集區名稱的格式 <project name-deployment-group name>
為 。
發生衝突時,會將隨機 GUID 附加至部署集區名稱。
移動完成後:
- 有可能建立多個部署集區。 您可以使用 TfsConfig 命令合併重複的集區。
例如,
TfsConfig.exe deploymentpool /migrateDeploymentGroups /fromPool:<Source Pool Name> /toPool:<Target Pool Name>
- 您必須使用新的部署集區重新設定代理程式。 以下是參考的範例 部署代理程式重新設定腳本 。
移動集合之前,請先刪除實驗室管理資源
- 如需如何從指定的專案集合中移除所有群組主機、連結庫共用和環境的相關信息,請參閱使用 /External 選項的 TFSConfig Lab /Delete 命令。
移動集合之後設定實驗室管理資源
設定 Azure DevOps 的應用層。
如需詳細資訊,請參閱 設定 SCVMM 環境的實驗室管理。
在新的 SCVMM 中重新建立黃金主要虛擬機和範本,並將虛擬機和範本匯入專案集合。
如需詳細資訊,請參閱 建立並儲存可供實驗室管理的虛擬機和範本。
重新建立每個項目的環境。
如需詳細資訊,請參閱 使用預存虛擬機和範本建立 SCVMM 環境。
問:如何? 限制在項目中選取函式的存取?
答: 有權存取集合內某個專案的使用者可以檢視該集合內的其他專案,即使他們沒有修改工作專案或在該專案中執行其他動作的許可權也一樣。 您可以 藉由特別建立群組和 設定這些群組的限制,授與或限制存取以選取或修改選取成品的功能,以及限制它們查看專案。