Přechod z jednoho prostředí do jiného pro Místní prostředí Azure DevOps

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

Nejběžnějším scénářem přesunu na základě prostředí je změna domény nasazení Azure DevOps Server, ať už se jedná o změnu názvu domény nebo přechod z pracovní skupiny na doménu.

Důležité

V některých situacích můžete chtít změnit doménu nasazení Azure DevOps Server i jeho hardware. Změna hardwaru je přesun založený na obnovení a tyto dva typy přesunu byste nikdy neměli kombinovat. Nejprve dokončete přesun hardwaru a pak změňte prostředí.

Kromě toho je změna identit v Azure DevOps Server v rámci přesunu prostředí aspektem, který nejčastěji způsobuje konflikty nebo problémy. Příkaz Identities je výkonný nástroj, ale má určitá omezení. Přečtěte si o tom v rámci plánování vašeho přesunu. Pokud chcete zajistit úspěšný přesun, ujistěte se, že rozumíte následujícím požadavkům:

  • Jakmile je uživatelský účet v Azure DevOps Server, nelze ho odebrat nebo na něj namapovat jiný účet. Pokud například přesouváte doménu DomainA/UserA do DomainB/UserB, bude příkaz Identity fungovat pro migraci uživatele jenom v případě, že domainB/UserB ještě není v Azure DevOps Server.
  • Vzhledem k tomu, že členové místní skupiny Administrators jsou automaticky přidáni do Azure DevOps Server, nezapomeňte před změnou domény nebo prostředí odebrat všechny účty, které chcete z této skupiny migrovat.

Další základní informace najdete tady, kde najdete podrobný popis fungování změn identit v Azure DevOps Server, včetně omezení nástroje.

Postup změny prostředí nasazení Azure DevOps Server si projdeme v následujících částech:

  1. Kontrola oprávnění a účtů
  2. Zastavení Azure DevOps Server služeb
  3. Zálohování dat
  4. Připojení Azure DevOps Server k nové doméně
  5. Přesun Azure DevOps Server uživatelských účtů a účtů služeb
  6. Konfigurace služby Reporting a Analysis Services
  7. Restartování služeb Azure DevOps Server

Kontrola oprávnění a účtů

Aby bylo možné úspěšně změnit prostředí pro Azure DevOps Server, budete muset být správcem místního počítače i Azure DevOps Server a veškerého softwaru, na kterém závisí vaše nasazení: SQL Server, vytváření sestav a jakýkoli jiný software, se kterým vaše nasazení spolupracuje, například Project Server. Všichni členové místní skupiny Administrators jsou však automaticky zahrnuti do Azure DevOps Server, což může při pokusu o migraci účtů způsobit problémy. Proto byste měli použít účet, který nemáte v úmyslu migrovat v rámci přesunu prostředí. Můžete zvážit přidání speciálního účtu pro správu jen pro přesun a jeho použití k provedení migrace.

Ověření oprávnění na úrovni správce

  • Ujistěte se, že účet, který používáte, je členem následujících skupin:
    • Servery: Administrators (místní skupina Administrators nebo ekvivalentní)
    • Azure DevOps Server: Správci Team Foundation a uživatelé konzoly Správa
    • SQL Server: sysadmin

Pokud nejste členem jedné nebo více těchto skupin, získejte oprávnění.

Teď, když jste si jistí, že používáte účet, který má všechna potřebná oprávnění, je čas začít kontrolovat účty a zjistit, jestli v prostředí, do kterého budete přesouvat, nedochází ke konfliktům se jmény nebo skupinami. Už víme, že účty, které jsou členy místní skupiny Administrators, nejde migrovat, takže je nejprve odebereme.

Odebrání účtů, které se mají migrovat z místní skupiny Administrators

  • Otevřete místní skupinu Administrators a odeberte všechny účty, které chcete migrovat do nového prostředí. Tento krok opakujte pro všechny ostatní skupiny, které by mohly být ovlivněny.

Teď zkontrolujte seznam identit v aktuálním Azure DevOps Server prostředí a vyhledejte případné problémy se skupinami nebo jednotlivými uživatelskými účty, které by v novém prostředí mohly existovat.

Tip

Zvažte vytvoření tabulky nebo mapy migrace identit, které se mají přesunout v rámci přesunu prostředí, včetně podrobností o tom, které účty nemusí být možné migrovat automaticky.

Kontrola identit

  1. Na serveru aplikační vrstvy pro Azure DevOps otevřete okno příkazového řádku s oprávněními správce, přejděte na %ProgramFiles%\Microsoft Visual Studio 12.0 Team Foundation Server\Tools a spuštěním následujícího příkazu zobrazte identity, které jsou aktuálně v systému:

    TFSConfig Identities
    
  2. Zobrazí se seznam identit. Zkontrolujte tyto uživatele a skupiny, abyste se ujistili, že v prostředí, do kterého přesunete Azure DevOps Server, nejsou žádné potenciální duplicity nebo problémy s identitami, a proveďte kroky ke zmírnění případných konfliktů.

Zastavení služeb

Zastavení služeb pomáhá zajistit, aby uživatelé nemohli provádět změny pracovních položek nebo se změnami zdrojového kódu původního nasazení během procesu přesunu nebo po jeho dokončení.

  1. Na počítači aplikační vrstvy otevřete okno příkazového řádku a změňte adresáře na Jednotka:\%programfiles%\TFS 12.0\Tools.

  2. Zadejte následující příkaz TFSServiceControl :

    TfSServiceControl – nečinnost

Zálohování databází a šifrovacího klíče SQL Server Reporting Services

  1. Otevřete konzolu pro správu pro Azure DevOps Server a na stránce Naplánované zálohování proveďte úplnou zálohu. Zálohování bude zálohovat vše, 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 šifrovací klíč zálohovat jako součást této zálohovací sady.

    Během dokončení úlohy můžete okno zavřít.

    (Pokud nemáte nakonfigurované zálohy, budete muset vytvořit plán , abyste mohli provést úplnou zálohu.)

  2. Po dokončení zálohování ověřte, že je záloha dostupná na úložném zařízení nebo ve sdílené síťové složce a že k této záloze máte přístup z nového hardwaru.

Připojení serveru aplikační vrstvy k nové doméně

  1. Na každém serveru otevřete vlastnosti počítače.

  2. Změňte nastavení počítače na doménu nebo pracovní skupinu, ke které chcete server připojit.

    Pokud se zobrazí výzva k zadání uživatelského jména a hesla účtu, který má oprávnění k připojení tohoto počítače k doméně, zadejte příslušné přihlašovací údaje.

  3. Restartujte počítač, aby se změna domény projevila.

    Poznámka

    Po restartování počítače se může zobrazit upozornění, že nelze spustit služby nebo ovladače. Pokračujte dalším postupem.

Přesun uživatelských účtů a účtů služeb

Jak je uvedeno na začátku tohoto tématu, přesun účtů je, když s největší pravděpodobností narazíte na potíže, zejména pokud jste migraci uživatelů pečlivě neplánovali. Příkaz TFSConfig Identityies nemůže migrovat žádný účet na účet, který již existuje v Azure DevOps Server.

Pokud jsou názvy účtů v obou doménách stejné a jediným rozdílem je název domény, můžete pomocí dávkového režimu TFSConfig Identityies změnit všechny identity najednou. V opačném případě musíte změnit identity jednotlivě a zadat jiný název cílového účtu, jak je podrobně popsáno níže.

  1. Na serveru aplikační vrstvy pro Azure DevOps otevřete okno příkazového řádku s oprávněními správce, přejděte na %ProgramFiles%\Microsoft Visual Studio 12.0 Team Foundation Server\Tools a spuštěním následujícího příkazu změňte ID služby (SID) účtu služby na novou doménu:

    TFSConfig identities /change /fromdomain:OldComputerorDomainName /todomain:NewDomainName /account:OldTFSServiceAccount /toaccount:NewTFSServiceAccount
    

    Upozornění

    Pokud byl váš účet služby systémovým účtem, jako je síťová služba, nemůžete účet služby migrovat přímo, protože v novém prostředí existuje systémový účet se stejným názvem. Budete muset provést dvoufázovou změnu procesu. Podívejte se na příklad v tématu Identities Command.

  2. Pokud chcete migrovat všechny účty se stejným názvem v novém prostředí, zadejte následující příkaz:

    TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName
    

    Tím se účty dávkově zpracují.

  3. Pokud jste nová doména obsahuje jednu nebo více identit, u kterých se mění název mezi prostředími, budete muset ručně aktualizovat identifikátory SID pro každou z těchto identit. Pokud byl například uživatelský účet Christie Church v předchozím prostředí Fabrikam\CChurch, ale v novém prostředí je NewFabrikam\ChristieC, museli byste její IDENTIFIKÁTOR SID aktualizovat ručně. Pro každý účet, který má tento požadavek, zadejte následující příkaz:

    TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName /account:OldAccountName /toaccount:NewAccountName
    
  4. Teď spuštěním následujícího příkazu aktualizujte účet služby:

    TFSConfig Accounts /change /AccountType:ApplicationTier /account:AccountName /password:Password
    
  5. Pokud vaše nasazení používá vytváření sestav, spuštěním následujícího příkazu aktualizujte účet zdroje dat používaný k vytváření sestav:

    TFSConfig Accounts /change /AccountType:ReportingDataSource /account:AccountName /password:Password
    
  6. Pokud vaše nasazení používá proxy server Azure DevOps, spuštěním následujícího příkazu aktualizujte účet služby používaný pro proxy server:

    TFSConfig Accounts /change /AccountType:Proxy /account:AccountName /password:Password
    

    Poznámka

    Pokud přecházíte na nedůvěryhodnou doménu, možná budete také muset ručně přidat uživatele a skupiny do týmů, projektů, kolekcí a Azure DevOps Server. Další informace najdete v tématech Přidání uživatelů do projektů, Nastavení oprávnění správce pro kolekce projektů a Nastavení oprávnění správce pro Azure DevOps Server.

  7. Pokud je vaše nasazení integrované s Project Serverem, možná budete muset provést další kroky ke konfiguraci účtů služby s oprávněními požadovanými pro operaci. Další informace najdete v tématech Přiřazení oprávnění pro podporu integrace TFS-Project Serveru a Konfigurace integrace systémuTFS-Project Server.

Konfigurace služby Reporting a Analysis Services

Pokud v rámci nasazení nepoužíváte vytváření sestav, můžete tento postup přeskočit.

Pokud jste v rámci tohoto typu přesunu přejmenovali server sestav, musíte Azure DevOps Server přesměrovat na server sestav v novém umístění. Musíte také restartovat sklad a ručně znovu sestavit databázi služby Analysis Services.

  1. Otevřete konzolu pro správu Azure DevOps, přejděte do uzlu Generování sestav a upravte nastavení.

    Sestavy stále odkazují na starý server.

  2. Změňte hodnoty na všech třech kartách tak, aby obsahovaly nový název serveru. Ujistěte se, že jste pro účet zdrojů dat v novém prostředí zadali správné informace.

    Ujistěte se, že jsou informace na všech 3 kartách správné.

  3. Zvolte Spustit úlohy a restartujte vytváření sestav.

  4. Zvolte Spustit opětovné sestavení a znovu sestavte sklad.

Konfigurace zálohování

Pokud se po změně názvu domény změnil název sdílené síťové složky nebo úložné zařízení, budete muset aktualizovat plán naplánovaného zálohování tak, aby odkazoval na tyto přejmenované prostředky.

  • V konzole pro správu přejděte do uzlu Naplánované zálohování a překonfigurujte naplánované zálohy na zálohování Azure DevOps Server databází na novém serveru. Další informace najdete v tématu Create plánu a plánu zálohování.

Restartování služeb

Teď, když jste aktualizovali Azure DevOps Server se všemi informacemi o novém prostředí, restartujte služby.

  1. Na Azure DevOps Server počítači aplikační vrstvy otevřete okno příkazového řádku s oprávněními správce a změňte adresáře na Jednotka:\%programfiles%\TFS 12.0\Tools.

  2. Zadejte následující příkaz TFSServiceControl :

    TFSServiceControl – zrušení

Otázky a odpovědi

Otázka: Chci pro nasazení změnit fyzický server nebo servery, ne domény. Mohu to udělat?

Odpověď: Ano. Tomu se říká přesun založený na hardwaru a kroky jsou uvedené v tématu Přesun nebo klonování z jednoho hardwaru na jiný. Neměli byste se pokoušet kombinovat přesun založený na prostředí s přesunem založeným na hardwaru. Nejprve dokončete přesun hardwaru a pak změňte prostředí.