Přesun nebo klonování z jednoho hardwaru do druhého pro místní Azure DevOps
Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019
Nasazení softwaru Azure DevOps Serveru můžete přesunout nebo naklonovat. Azure DevOps Server přesunete z jednoho počítače do druhého tím, že ho obnovíte na nový hardware (označovaný jako přesun založený na obnovení). Můžete například chtít přesunout Azure DevOps Server na server s větší kapacitou nebo vyšší rychlostí zpracování. Když přejdete na nový server, nepřijdete o žádnou historii projektu.
Pokud chcete naklonovat nasazení Azure DevOps Serveru, proveďte stejné kroky jako přesun a několik dalších.
Pokud plánujete ukončit používání původního hardwaru a nasazení Azure DevOps Serveru, provedete přesun. Pokud chcete pokračovat v používání původní instance Azure DevOps Serveru, provedete klon.
Důležité
V některých situacích můžete chtít změnit doménu nasazení Azure DevOps Serveru i jeho hardwaru. Změna domény je přesun založený na prostředí a nikdy byste tyto dva typy přesunů neměli kombinovat. Nejprve dokončete přesun hardwaru a pak změňte prostředí.
Zkontrolovat svoje oprávnění
Abyste mohli úspěšně přesunout Azure DevOps Server, musíte být správcem obou sad hardwaru (starých i nových). Kromě toho budete muset být správcem (nebo mít ekvivalentní oprávnění) pro Azure DevOps Server a veškerý software, na kterém vaše nasazení závisí: SQL Server, vytváření sestav a jakýkoli jiný software, se kterým vaše nasazení spolupracuje, například Project Server.
Ujistěte se, že jste členem následujících skupin:
- Servery: Správci (místní skupina Administrators nebo ekvivalentní)
- Azure DevOps Server: Správci Team Foundation a uživatelé konzoly pro správu
- SQL Server: správce systému
Pokud nejste členem jedné nebo více těchto skupin, získejte oprávnění.
Zálohování databází a šifrovacího klíče
Otevřete konzolu pro správu pro Azure DevOps Server a na stránce Naplánované zálohování proveďte úplné zálohování. Zálohování zálohuje všechno, co jste nakonfigurovali pro zálohování v plánu zálohování, ale provede to okamžitě, ne podle času naplánovaného v plánu. Pokud vaše nasazení používá vytváření sestav, můžete v rámci této sady záloh zálohovat šifrovací klíč.
(Pokud nemáte nakonfigurované zálohy, budete muset vytvořit plán , abyste mohli provést úplné zálohování.)
Po dokončení zálohování ověřte, že je záloha dostupná na úložném zařízení nebo sdílené síťové složce a že k této zálohování máte přístup z nového hardwaru.
Instalace a konfigurace SQL Serveru na novém serveru datové vrstvy
Nainstalujte SQL Server na nový server a ujistěte se, že je funkční. Pokud vaše předchozí nasazení používalo generování sestav, ujistěte se, že zahrnete komponenty služby Reporting Services a Analysis Services. Musíte nainstalovat stejnou verzi a edici, kterou jste použili dříve, včetně aktualizací Service Pack a úrovní kumulativní aktualizace.
Alternativně můžete vytvořit instanci SQL Serveru na serveru, který už má nainstalovanou odpovídající verzi a obnovit databáze Azure DevOps Serveru do této instance, ale to bude vyžadovat další konfiguraci po obnovení.
Další informace o možnostech instalace a konfigurace SQL Serveru najdete tady.
Po instalaci SQL Serveru, pokud vaše nasazení zahrnuje vytváření sestav, otevřete aplikaci SQL Server Management Studio a odpojte databáze ReportServer a ReportServerTempDB. Jinak možná nebudete moct tyto databáze obnovit pomocí zálohy, kterou jste vytvořili pro databáze Azure DevOps Serveru.
Instalace a konfigurace softwaru na novém serveru aplikační vrstvy
Pokud chcete nakonfigurovat nový server nebo servery pro Azure DevOps Server, musíte nejprve nainstalovat a nakonfigurovat software, který je nutný k jeho podpoře. Tento software zahrnuje následující komponenty:
podporovaný operační systém pro konfiguraci nasazení
Nainstalujte a nakonfigurujte Systém Windows, IIS (pokud není ve výchozím nastavení nakonfigurovaný) a ujistěte se, že server a jeho software jsou funkční.
Další informace najdete v požadavcích na systém pro Azure DevOps Server.
Obnovení databází Azure DevOps Serveru
Pokud chcete obnovit databáze Azure DevOps Serveru pomocí nástroje pro obnovení, musíte nainstalovat, ale nenakonfigurovat Azure DevOps Server na novém serveru datové vrstvy a pak použít funkci obnovení v uzlu Naplánované zálohy.
Pokud chcete databáze Azure DevOps Serveru obnovit ručně pomocí nástrojů pro obnovení SQL Serveru, můžete, ale to je složitější postup. Kromě toho budete muset databáze v novém nasazení ručně zrušit. Průvodce obnovením v Azure DevOps Serveru to udělá automaticky jako součást procesu obnovení, ale tato funkce není součástí nástrojů pro obnovení SQL Serveru.
Spusťte instalační médium Azure DevOps Serveru. Na stránce Instalace Team Foundation Serveru zvolte Nainstalovat.
Po dokončení instalace se otevře Centrum konfigurace Team Foundation Serveru. Zavřete ho.
Konzola pro správu se automaticky otevře v nekonfigurovaném stavu. To se očekává.
Průvodce obnovením spustíte tak, že otevřete konzolu pro správu pro Azure DevOps Server a otevřete naplánované zálohy.
Zadejte cestu k sadě záloh a zvolte sadu, kterou jste vytvořili po nečinnosti starého nasazení.
Dokončete průvodce a obnovte databáze do nové instance SQL Serveru.
(Možnost Klonování) Změna konfigurace ID serveru a přemapování databází
Poznámka:
PrepareClone se doporučuje pro použití před vytvořením nového nasazení Azure DevOps Serveru pomocí zálohy databáze, která je již v produkčním prostředí na jiném serveru. Tento příkaz už není nutný, protože jsme jeho funkce začlenili do scénářů předprodukčního upgradu a klonování v průvodci konfigurací.
Pokud chcete pokračovat v používání původní instance Azure DevOps Serveru, proveďte další sadu kroků na novém serveru aplikační vrstvy. Tyto kroky jsou nezbytné, aby se zabránilo riziku poškození jednoho nebo obou nasazení. Pokud jsou oba servery živé, můžete skončit s poškozením, zejména pokud odkazují na stejné prostředky pro vytváření sestav.
Otevřete okno příkazového řádku jako správce a změňte adresáře na Drive:%programfiles%\TFS 12.0\Tools. Otevřete okno příkazového řádku a zadejte:
Spuštěním příkazu TFSConfig PrepareClone odeberte informace o plánovaných zálohách a prostředcích pro vytváření sestav.
TFSConfig PrepareClone /SQLInstance:ServerName /DatabaseName:DatabaseName /notificationURL: ApplicationTierURL
Spuštěním příkazu TFSConfig ChangeServerID změňte identifikátory GUID serveru přidružené k databázím. Identifikátory GUID musí být jedinečné v rámci nasazení Azure DevOps Serveru.
TFSConfig ChangeServerID /SQLInstance:ServerName] /DatabaseName:ConfigurationDatabaseName [/ProjectCollectionsOnly] [/ConfigDBOnly] [/usesqlalwayson]
Spuštěním příkazu TFSConfig RemapDBs přesměrujte klonovaný Azure DevOps Server do svých databází.
TFSConfig RemapDBs /DatabaseName:ServerName;DatabaseName /SQLInstances:ServerName1,erverName2 [/AnalysisInstance:ServerName] [/AnalysisDatabaseName:DatabaseName] [/review] [/continue] [/usesqlalwayson]
Konfigurace serveru aplikační vrstvy
V konzole pro správu pro Azure DevOps Server zvolte Konfigurovat nainstalované funkce a spusťte konfigurační centrum.
Spusťte průvodce pouze aplikační vrstvou a v databázích zadejte novou instanci SQL Serveru, ve které jste obnovili databáze Azure DevOps Serveru. V seznamu vyberte databázi Tfs_Configuration.
Než zavřete poslední stránku průvodce, vyhledejte symbol "i". Označuje informace, které byste mohli chtít pro budoucí referenci. Poslední stránka obsahuje také umístění konfiguračního protokolu.
Aktualizace adres URL serveru Azure DevOps
Přejděte na uzel aplikační vrstvy a podívejte se na oznámení a adresy URL webového portálu. Všimněte si, že stále odkazují na umístění starého nasazení. Aktualizujte je.
Po aktualizaci adres URL názvem nového serveru zkontrolujte informace a ujistěte se, že jsou správné.
Aktualizace všech účtů služeb
Musíte aktualizovat účet služby pro Azure DevOps Server (TFSService) a účet zdrojů dat (TFSReports). I když se tyto účty nezměnily, je nutné aktualizovat informace, abyste zajistili, že identita a formát účtů budou vhodné pro nový server.
Otevřete okno příkazového řádku jako správce a změňte adresáře na Drive:\%programfiles%\TFS 12.0\Tools.
Na příkazovém řádku zadejte následující příkaz, který přidá účet služby pro Azure DevOps, kde DatabaseName je název konfigurační databáze (ve výchozím nastavení TFS_Configuration):
Účty tfsConfig /add /AccountType:ApplicationTier /account: AccountName /SQLInstance: ServerName /DatabaseName: DatabaseName
Na příkazovém řádku zadejte následující příkaz, který přidá účet zdrojů dat:
Účty tfsConfig /add /AccountType:ReportingDataSource /account: AccountName /SQLInstance:ServerName /DatabaseName:DatabaseName
Další informace najdete v tématu Příkaz účty.
Aktualizace buildových serverů
Teď budete muset přesměrovat buildové servery tak, aby ukazovaly na přesunuté nasazení Azure DevOps Serveru.
Na každém buildovém serveru otevřete konzolu pro správu a zastavte službu sestavení.
Ve vlastnostech služby sestavení aktualizujte vlastnosti komunikace.
Konfigurace generování sestav a služby Analysis Services
Pokud vaše nasazení používá server sestav, musíte Azure DevOps Server přesměrovat do jejího umístění, restartovat sklad a ručně znovu sestavit databázi pro Analysis Services. Pokud nepoužíváte vytváření sestav, přeskočte tento postup.
Přejděte do uzlu Vytváření sestav. Uvedené hodnoty serveru sestav jsou staré, ne nové, takže je upravte.
Změňte hodnoty na všech třech kartách tak, aby odkazy na nový server. Ujistěte se, že v novém nasazení zadáte správné informace pro účet zdrojů dat.
Zvolte Spustit úlohy a restartujte generování sestav.
Zvolte Spustit opětovné sestavení a znovu sestavte sklad.
Ověření oprávnění pro uživatele, skupiny a účty služeb
Po přechodu na nový hardware se ujistěte, že jsou všichni uživatelé, skupiny a účty služeb pro vaše nasazení nakonfigurované s oprávněními, která vyžadují ke správnému fungování na každém serveru. Některá oprávnění, například další oprávnění na SQL Serveru nebo na místním počítači, se nedají automaticky migrovat. Správci Azure DevOps musí být například členy místní skupiny Administrators na serveru aplikační vrstvy, aby mohli otevřít konzolu pro správu, takže je musíte do této skupiny přidat ručně.
Přihlaste se k serveru a ujistěte se, že jsou uživatelé, skupiny a účty služeb nakonfigurované s oprávněními požadovanými pro operaci. Ručně zkontrolujte členství ve skupinách a týmech projektů a ověřte, že tyto skupiny a týmy mají oprávnění, která očekáváte.
Přejděte do kolekce projektů a ujistěte se, že se všechny projekty v této kolekci zobrazují podle očekávání a že uživatelé v těchto projektech mají odpovídající přístup ke svým pracovním položkám.
Otevřete webový portál a ověřte, že se týmové weby a týmy zobrazují podle očekávání.
Nejste si jistí, jaké skupiny a oprávnění mají očekávat? Další informace najdete v tématu Přidání uživatelů do projektů, nastavení oprávnění správce pro kolekce projektů, nastavení oprávnění správce pro účty Azure DevOps Server a účty služeb a závislosti v Azure DevOps Serveru.
Aktualizace mezipaměti dat na klientských počítačích
Přihlaste se k serveru a pomocí webové služby ClientService vynucujte klientům aktualizaci mezipaměti pro sledování pracovních položek a pro správu verzí Azure DevOps.
http://ServerName:8080/tfs/WorkItemTracking/v3.0/ClientService.asmx
Další informace naleznete v tématu Aktualizace mezipaměti dat v klientských počítačích.
Pokud chcete aktualizovat celou mezipaměť pro všechny uživatele při příštím přihlášení, použijte příkaz witadmin rebuildcache .
Poznámka:
Pokud jste databáze obnovili k jinému bodu v čase, budete také muset aktualizovat mezipaměť správy verzí, jak je uvedeno v části Aktualizace datových mezipamětí v klientských počítačích.
Upozornit uživatele
Teď, když jste přesunuli Azure DevOps Server, budete muset uživatelům sdělit, jak se připojit k přesunutému nasazení. Konkrétně jim budete muset poskytnout následující informace:
Název nového serveru a adresy URL webového portálu, aby se mohl znovu připojit ke svým projektům
Nové názvy databází pro vytváření sestav, pokud je vytváření sestav součástí vašeho nasazení
Pokud jsou členy projektu, který používá Git, pokyny k aktualizaci každého klonu, který mají místně pro každé úložiště daného projektu. Konkrétně budou muset pro každý klon spustit následující příkaz:
git remote set-url <remote name> <new URL>
Uživatelé můžou zjistit, co je adresa URL pro jednotlivé klony, procházením projektu na kartě Průzkumník.
Konfigurace záloh
I když jste měli naplánované zálohy pro staré nasazení, tyto naplánované zálohy se nezměnily, aby se zálohovalo přesunuté nasazení. Budete je muset nakonfigurovat.
- V konzole pro správu přejděte do uzlu Naplánované zálohy a překonfigurujte naplánované zálohy pro zálohování databází Azure DevOps Serveru na novém serveru. Další informace najdete v tématu Vytvoření plánu a plánu zálohování.
Otázky a odpovědi
Otázka: Chci změnit domény, ne fyzické servery. Mohu to udělat?
Odpověď: Ano. Tomu se říká přesun založený na prostředí a postup najdete tady. Neměli byste se pokoušet kombinovat přesun založený na prostředí s hardwarovým přesunem. Nejprve dokončete přesun hardwaru a pak změňte prostředí.
Otázka: Právě jsem si uvědomil, že po přechodu na nový hardware chci dál používat svůj starý Azure DevOps Server. Mohu to udělat?
Ano, ale je velmi důležité, abyste hned provedli další kroky. V ideálním případě byste tyto kroky měli provést jako součást postupu přesunutí nebo klonování. To je nejlepší způsob, jak se vyhnout riziku poškození jednoho nebo obou nasazení. Pokud jsou oba servery živé, můžete skončit s poškozením, zejména pokud odkazují na stejné prostředky pro vytváření sestav.
Tento problém vyřešíte takto:
Spuštění příkazu TFSConfig PrepareClone na novém serveru
Spuštění příkazu TFSConfig ChangeServerID na novém serveru
Na novém serveru spusťte příkaz TFSConfig RemapDBs.
Otázka: Mám nasazení, které se integruje s Project Serverem. Musím provést nějaké další kroky, aby fungoval s přesunutým Azure DevOps Serverem?
Ano, po dokončení přesunu hardwaru budete muset použít příkaz TFSAdmin ProjectServer /RegisterPWA s možnostmi /tfs, /force a /pwa k opětovné registraci Azure DevOps Serveru s Project Serverem. Další informace o integraci Azure DevOps Serveru s Project Serverem najdete tady.