Şirket içi Azure DevOps için bir ortamdan diğerine geçme

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018-TFS 2013

Not

Azure DevOps Server daha önce Visual Studio Team Foundation Server olarak adlandırılmıştı.

En yaygın ortam tabanlı taşıma senaryosu, bir etki alanı adı değişikliği veya bir çalışma grubundan etki alanına geçme gibi Azure DevOps Server dağıtımının etki alanını değiştiriyor.

Önemli

Bazı durumlarda, bir Azure DevOps Server dağıtımının etki alanını ve donanımını değiştirmek isteyebilirsiniz. Donanımın değiştirilmesi, geri yükleme tabanlı bir taşımadır ve iki taşıma türünü asla birleştirmemelisiniz. Önce donanımı taşımayıtamamlayıp ortamı değiştirin.

Ayrıca, çevre taşımanın bir parçası olarak Azure DevOps Server kimlikleri değiştirmek, en sık çakışmalar veya sorunlara neden olur. Kimlikler komutu güçlü bir araçtır, ancak belirli sınırlamalar vardır. Taşımanızı planlamanın bir parçası olarak BT hakkında bilgi edinin. Başarılı bir taşımanın sağlanmasına yardımcı olmak için aşağıdaki gereksinimleri anladığınızdan emin olun:

  • Azure DevOps Server bir kullanıcı hesabı varsa, bu, kaldırılamaz veya başka bir hesaba eşlenmiş hale gelir. Örneğin, DomainA/UserA 'yı DomainB/UserB 'ye taşıyorsanız, Kimlikler komutu yalnızca DomainB/UserB Azure DevOps Server ' de zaten mevcut değilse kullanıcıyı geçirmeye çalışır.
  • Yerel Yöneticiler grubunun üyeleri Azure DevOps Server otomatik olarak eklendiğinden, etki alanını veya ortamı değiştirmeden önce bu gruptan geçirilmesini istediğiniz hesapları kaldırdığınızdan emin olun.

Daha fazla arka plan bilgisi için, aracın sınırlamaları da dahil olmak üzere Azure DevOps Server çalışmadaki kimlik değişikliklerinin ayrıntılı bir açıklaması için buraya gidin .

Aşağıdaki bölümlerde Azure DevOps Server dağıtımınızın ortamını değiştirme adımlarında İzlenecek adımları inceleyeceğiz:

  1. İzinleri ve hesapları denetleme
  2. Azure DevOps Server hizmetlerini durdur
  3. Verileri yedekleme
  4. Azure DevOps Server yeni etki alanına ekleyin
  5. Yeni ortam için SharePoint ürünlerini yapılandırma
  6. Kullanıcı ve hizmet hesaplarını Azure DevOps Server taşıma
  7. Raporlamayı ve Analysis Services yapılandırma
  8. Azure DevOps Server hizmetlerini yeniden başlatın

İzinleri ve hesapları denetleme

Azure DevOps Server için ortamı başarıyla değiştirmek üzere, yerel bilgisayarda bir yönetici olmanız ve Azure DevOps Server ve dağıtımınızın bağımlı olduğu tüm yazılımlar için SQL Server, raporlama, SharePoint ürünleri (Dağıtımınız raporlama veya SharePoint kullanıyorsa) ve dağıtımınız birlikte çalışan diğer yazılımlar (örneğin, proje sunucusu) olması gerekir. Ancak, yerel Administrators grubunun tüm üyeleri Azure DevOps Server otomatik olarak dahil edilir ve bu da hesapları geçirmeye çalışırken sorunlara yol açabilir. Bu nedenle, ortam taşımanın bir parçası olarak geçirmek istemediğiniz bir hesabı kullanmanız gerekir. Taşıma işlemi için özel bir yönetim hesabı eklemeyi ve bu hesabı kullanarak geçişi yapmayı düşünebilirsiniz.

Yönetici düzeyindeki izinleri doğrulamak için

  • Kullanmakta olduğunuz hesabın aşağıdaki grupların bir üyesi olduğundan emin olun:
    • Sunucular: Yöneticiler (yerel Yöneticiler grubu veya eşdeğeri)
    • Azure DevOps Server: Team Foundation yöneticileri ve yönetim konsolu kullanıcıları
    • SQL Server: sysadmin
    • SharePoint ürünleri: Grup yöneticileri (Azure DevOps Server dağıtımınız SharePoint ürünleri ile tümleştiriliyorsa)

Bu gruplardan bir veya daha fazla üye değilseniz, izinleri şimdi alın.

Artık gereken tüm izinlere sahip bir hesap kullandığınızdan emin olduğunuza göre, taşınmakta olduğunuz ortamdaki adlarla veya gruplarla ilgili herhangi bir çakışma olup olmadığını görmek için hesapları denetlemeye başlayacaksınız. Yerel Yöneticiler grubunun üyesi olan hesapların geçirilemediğini zaten biliyoruz, bu nedenle önce bunları kaldıralım.

Yerel Yöneticiler grubundan geçirilecek hesapları kaldır

  • Yerel Yöneticiler grubunu açın ve yeni ortama geçirmek istediğiniz hesapları kaldırın. Etkilenebilecek diğer gruplar için bu adımı tekrarlayın.

Şimdi geçerli Azure DevOps Server ortamındaki kimlik listesini denetleyin ve yeni ortamda mevcut olabilecek gruplar veya bireysel kullanıcı hesaplarıyla ilgili olası sorunları arayın.

İpucu

Ortam taşımanın bir parçası olarak taşınacak kimliklerin bir tablo veya geçiş Haritası oluşturmayı, hangi hesapların otomatik olarak geçirilmeyeceğini ayrıntılarıyla de göz önünde bulundurun.

Kimlikleri denetle

  1. Azure DevOps için uygulama katmanı sunucusunda, yönetici izinleriyle bir komut Istemi penceresi açın, *% ProgramFiles% *\ Microsoft Visual Studio 12,0 Team Foundation Server \ araçları' na gidin ve şu anda sistemde bulunan kimlikleri görüntülemek için aşağıdaki komutu çalıştırın:

    TFSConfig Identities
    
  2. Kimliklerin bir listesi görüntülenir. Azure DevOps Server taşıyacağınız ortamdaki kimliklerle ilgili olası yineleme veya bir sorun olmadığından emin olmak için bu kullanıcıları ve grupları denetleyin ve olası çakışmaların etkisini azaltmak için adımları uygulayın.

Hizmetleri Durdur

Hizmetleri durdurma, kullanıcıların iş öğelerinde değişiklik yapamemelerini veya taşıma işlemi sırasında veya sonrasında özgün dağıtıma kaynak kodu iade olmamasını sağlamaya yardımcı olur.

  1. Uygulama katmanı bilgisayarında, bir komut Istemi penceresi açın ve dizinleri sürücü: \ % programfiles% \ TFS 12,0 araçları ile değiştirin \ .

  2. Aşağıdaki TFSServiceControl komutunu yazın:

    TFSServiceControl sessiz moda al

Veritabanlarını ve SQL Server Reporting Services şifreleme anahtarını yedekleme

  1. Azure DevOps Server için yönetim konsolunu açın ve Zamanlanmış yedeklemeler sayfasında tam yedekleme gerçekleştirin. Yedekleme, yedekleme planınızda yedekleme için yapılandırdığınız her şeyi yedekler, ancak bu işlem, planda zamanlanan saate göre değil hemen yapılır. Dağıtımınız raporlama kullanıyorsa, bu yedekleme kümesinin bir parçası olarak şifreleme anahtarını yedekleyebilirsiniz.

    İş tamamlanırken pencereyi kapatabilirsiniz

    (Yedeklemeleriniz yoksa, tam yedekleme yapmadan önce bir plan oluşturmanız gerekir.)

  2. Yedekleme tamamlandıktan sonra, yedeklemenin depolama cihazında veya ağ paylaşımında kullanılabilir olduğundan ve bu yedeğe yeni donanımdan erişebildiğinizi doğrulayın.

Uygulama katmanı sunucusunu yeni etki alanına ekleyin

  1. Her bir sunucuda, bilgisayarın özelliklerini açın.

  2. Bilgisayarın ayarlarını, sunucuya katmak istediğiniz etki alanı veya çalışma grubu ile değiştirin.

    Bu bilgisayarı etki alanına ekleme izinlerine sahip olan bir hesabın kullanıcı adını ve parolasını sağlamanız istenirse, uygun kimlik bilgilerini sağlayın.

  3. Etki alanı değişikliğinin etkili olması için bilgisayarı yeniden başlatın.

    Not

    Bilgisayarı yeniden başlattıktan sonra, hizmet veya sürücülerin başlatılamadığına ilişkin bir uyarı görüntülenebilir. Sonraki yordamla devam edin.

Yeni ortam için SharePoint ürünlerini yapılandırma

Ortamı, önceki ortamınız ile güven olmadığı bir yerde değiştiriyorsanız, doğru çalışmadan önce SharePoint ürünlerini yapılandırmanız gerekebilir. Dizin hizmetlerinden içeri aktarılan kullanıcılar hakkında bilgiler, SharePoint sitelerinde kişiler Seçicisi Web denetiminden alınabilir. Site yöneticileri ve diğer kullanıcılar, izinleri atarken kişileri ve grupları seçmek için kişiler seçicisini kullanır. Kullanıcılar hakkında bilgiler, tüm kullanıcılar için güven ilişkisi olmadan birden çok ormanda veya bir ormanda bulunuyorsa, tüm kişilerin ve grupların bu Web denetiminden kullanılabilir olmasını sağlamak için ek adımlar gerekli olabilir.

Dağıtımınızda SharePoint ürünlerini kullanmıyorsanız, bu yordamı atlayın. yeni ortamınız eski ortama iki yönlü bir güvene sahipse veya SharePoint Web uygulamanız için herhangi bir hata, Azure DevOps yönetim konsolunda görünmezse.

  1. SharePoint grubunun bir parçası olan ve Azure DevOps Server dağıtımınızı destekleyen her sunucuda, yönetici izinleriyle bir komut Istemi penceresi açın ve dizinleri% ProgramFiles% \ Common Files \ Microsoft Shared \ Web Server Extensions \ 15 \ BIN olarak değiştirin.

  2. Aşağıdaki komutu yazın; burada anahtar , SharePoint Ürünleri dağıtımınızda kullanmak istediğiniz şifreleme anahtarıdır:

    stsadm.exe-o setapppassword-parola anahtarı

    Not

    Bu anahtar, ormana veya etki alanına erişmek için kullanılan hesabın parolasını şifrelemek için kullanılan bir şifreleme dizesidir. Şifreleme dizesinin gruptaki her sunucu için aynı olması gerekir, ancak her grup için benzersiz bir dize kullanılmalıdır.

  3. Aşağıdaki komutu yazın; burada etki alanı: DnsName hedef orman veya etki alanı ve DNS adı, Kullanıcı, parola hedef ormana veya etki alanına erişimi olan bir hesabın Kullanıcı adı ve parolasıdır ve WebApp , Azure DevOps Server dağıtımınızı destekleyen Web uygulamasının adıdır:

    stsadm.exe-o setproperty-pn peoplepicker-searchadormanları-BD etki alanı: DnsName,User,Password -URL http://WebApp

  4. Aşağıdaki komutu yazın; burada URL , bir proje koleksiyonunu destekleyen bir site koleksiyonunun URL 'Sidir, bağlantı noktası söz konusu site koleksiyonuna atanan bağlantı noktası numarasıdır ve Kullanıcı adı bu site koleksiyonu için sahip olarak görev yapacak hesabın kullanıcı adıdır:

    stsadm.exe-o siteowner-URL http:// URL 'si : bağlantı noktası -ownerLogin Kullanıcı adı

  5. Azure DevOps Server dağıtımınızın kullandığı her site koleksiyonu için önceki adımı tekrarlayın.

Kullanıcı hesaplarını ve hizmet hesaplarını taşıma

Bu konunun başlangıcında belirtildiği gibi, hesapları taşımak, özellikle de Kullanıcı geçişi için dikkatli bir şekilde planlanmadığınız durumlarda, zorluklardan çok karşılaşmanız durumunda olur. TFSConfig kimlikleri komutu, Azure DevOps Server bir hesabı zaten var olan bir hesaba geçiremez.

Hesap adları her iki etki alanında da aynıysa ve tek fark etki alanı adı ise, tüm kimlikleri tek seferde değiştirmek için TFSConfig kimliklerinin Batch modunu kullanabilirsiniz. Aksi takdirde, kimlikleri tek tek değiştirmeniz ve aşağıda açıklandığı gibi farklı bir hedef hesap adı belirtmeniz gerekir.

  1. Azure DevOps için uygulama katmanı sunucusunda, yönetici izinleriyle bir komut Istemi penceresi açın, *% ProgramFiles% *\ Microsoft Visual Studio 12,0 Team Foundation Server \ araçlara gidin ve hizmet hesabının hizmet kimliklerini (SID) yeni etki alanına değiştirmek için aşağıdaki komutu çalıştırın:

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

    Uyarı

    Hizmet hesabınız ağ hizmeti gibi bir sistem hesabındaysanız, yeni ortamda aynı ada sahip bir sistem hesabı olduğundan, hizmet hesabını doğrudan geçiremezsiniz. İki aşamalı bir işlem değişikliği gerçekleştirmeniz gerekecektir. Kimlikler komutundaörneğe bakın.

  2. Yeni ortamda aynı ada sahip tüm hesaplara geçiş yapmak için aşağıdaki komutu yazın:

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

    Bu, hesapları toplu olarak işleyecek.

  3. Yeni etki alanınız, adın ortamlar arasında değiştiği bir veya daha fazla kimlik içeriyorsa, bu kimliklerin her biri için SID 'Leri el ile güncelleştirmeniz gerekir. Örneğin, Hristie Church 'ın Kullanıcı hesabı \ önceki ortamda fabrikam cchurch ise, ancak \ yeni ortamda newfabrikam vaistiec Ise, SID 'sini el ile güncelleştirmeniz gerekir. Bu gereksinime sahip her hesap için aşağıdaki komutu yazın:

    TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName /account:OldAccountName /toaccount:NewAccountName
    
  4. Hizmet hesabını güncelleştirmek için şu komutu çalıştırın:

    TFSConfig Accounts /change /AccountType:ApplicationTier /account:AccountName /password:Password
    
  5. Dağıtımınız raporlama kullanıyorsa, raporlama için kullanılan veri kaynağı hesabını güncelleştirmek için aşağıdaki komutu çalıştırın:

    TFSConfig Accounts /change /AccountType:ReportingDataSource /account:AccountName /password:Password
    
  6. Dağıtımınız Azure DevOps proxy sunucusu kullanıyorsa, ara sunucu için kullanılan hizmet hesabını güncelleştirmek için aşağıdaki komutu çalıştırın:

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

    Not

    Güvenilmeyen bir etki alanına taşıyorsanız, kullanıcıları ve grupları takımlara, projelere, koleksiyonlara ve Azure DevOps Server aynı zamanda el ile eklemeniz gerekebilir. Daha fazla bilgi için bkz. projelere Kullanıcı ekleme, proje koleksiyonları için yönetici izinleri ayarlamave Azure DevOps Server için yönetici izinleri ayarlama.

  7. Dağıtımınız Project Server ile tümleşikse, hizmet hesaplarını işlem için gereken izinlerle yapılandırmak için ek adımlar gerçekleştirmeniz gerekebilir. Daha fazla bilgi için bkz. TFS-Project Server Integration ve Configuretfs-Project Server tümleştirmesini desteklemek için izin atama .

Raporlamayı ve Analysis Services yapılandırma

Dağıtımınızın bir parçası olarak raporlama kullanmıyorsanız, bu yordamı atlayabilirsiniz.

Bu tür bir taşıma kapsamında rapor sunucusunu yeniden adlandırdıysanız, Azure DevOps Server yeni konumundaki rapor sunucusuna yeniden yönlendirmeniz gerekir. Ayrıca, ambarı yeniden başlatmanız ve veritabanını Analysis Services el ile yeniden oluşturmanız gerekir.

  1. Azure DevOps yönetim konsolunu açın, raporlama düğümüne gidin ve ayarları düzenleyin.

    Raporlar hala eski sunucuyu işaret ediyor

  2. Her üç sekmeden oluşan değerleri, sunucunun yeni adını içerecek şekilde değiştirin. Yeni ortamda veri kaynakları hesabı için doğru bilgileri sağladığınızdan emin olun.

    Bilgilerin tüm 3 sekmelerde doğru olduğundan emin olun

  3. Raporlamayı yeniden başlatmak için Işleri Başlat ' ı seçin.

  4. Ambarı yeniden derlemek için yeniden oluşturmayı Başlat ' ı seçin.

Yedeklemeleri yapılandırma

Ağ paylaşımının adı veya depolama cihazı etki alanı adı değişikliğine değiştiyse, bu yeniden adlandırılmış kaynakları işaret etmek için zamanlanmış yedekleme planını güncelleştirmeniz gerekir.

  • Yönetim konsolunda, zamanlanmış yedeklemeler düğümüne gidin ve zamanlanan yedeklemeleri yeni sunucudaki Azure DevOps Server veritabanlarını yedekleyecek şekilde yeniden yapılandırın. Daha fazla bilgi için bkz. yedekleme zamanlaması ve planı oluşturma.

Hizmetleri yeniden Başlat

Yeni ortamla ilgili tüm bilgilerle Azure DevOps Server güncelleştirmiş olduğunuza göre hizmetleri yeniden başlatın.

  1. Azure DevOps Server uygulama katmanı bilgisayarında, yönetici izinleri ile bir komut Istemi penceresi açın ve dizinleri şu sürücü ile değiştirin: \ % programfiles% \ TFS 12,0 \ araçları.

  2. Aşağıdaki TFSServiceControl komutunu yazın:

    TFSServiceControl sessiz moda al

Soru-Cevap

S: etki alanlarını değil, dağıtımımın fiziksel sunucusunu veya sunucularını değiştirmek istiyorum. Bunu yapabilir miyim?

Y: Evet. Bu, donanım tabanlı taşıma olarak adlandırılır ve adımlar bir donanımdan diğerine taşıma veya kopyalamasırasında sağlanır. Donanım tabanlı bir taşıma ile ortam tabanlı bir taşıma birleştirmeyi denememelisiniz. Önce donanımı taşımayı tamamlayıp ortamı değiştirin.