Şirket içi Azure DevOps için bir donanımdan diğerine taşıma veya kopyalama

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

Azure DevOps Server yazılımı dağıtımınızı taşıyabilir veya kopyalayabilirsiniz. Azure DevOps Server yeni donanıma (geri yükleme tabanlı taşıma olarak adlandırılır) geri yükleyerek bir makineden diğerine taşırsınız. Örneğin, Azure DevOps Server daha yüksek kapasiteye veya geliştirilmiş işleme hızına sahip bir sunucuya taşımak isteyebilirsiniz. Yeni bir sunucuya geçtiğinizde proje geçmişinizden hiçbirini kaybetmezsiniz.

Azure DevOps Server dağıtımınızı kopyalamak için, taşıma işlemiyle aynı adımları ve birkaç ek adımı daha gerçekleştirirsiniz.

Özgün donanımın ve Azure DevOps Server dağıtımının kullanımını sonlandırmayı planladığınızda bir taşıma işlemi gerçekleştirirsiniz. Özgün Azure DevOps Server örneğini kullanmaya devam etmek istediğinizde bir kopya gerçekleştirirsiniz.

Önemli

Bazı durumlarda, Azure DevOps Server dağıtımının etki alanını ve donanımını değiştirmek isteyebilirsiniz. Etki alanını değiştirmek ortam tabanlı bir taşımadır ve iki taşıma türünü hiçbir zaman birleştirmemelisiniz. Önce donanım taşıma işlemini tamamlayın ve ardından ortamı değiştirin.

İzinlerinizi denetleyin

Azure DevOps Server başarıyla taşımak için her iki donanım kümesinde de (eski ve yeni) yönetici olmanız gerekir. Buna ek olarak, Azure DevOps Server için yönetici olmanız (veya eşdeğer izinlere sahip olmanız) ve dağıtımınızın bağımlı olduğu tüm yazılımlara sahip olmanız gerekir: SQL Server, raporlama ve dağıtımınızın birlikte çalıştığı Project Server gibi diğer yazılımlar.

Aşağıdaki grupların üyesi olduğunuzdan emin olun:

  • Sunucular: Yöneticiler (yerel Yöneticiler grubu veya eşdeğeri)
  • Azure DevOps Server: Team Foundation Yöneticileri ve Yönetici Konsolu Kullanıcıları
  • SQL Server: sysadmin

Bu gruplardan birinin veya daha fazlasının üyesi değilseniz , şimdi izinleri alın.

Veritabanlarını ve şifreleme anahtarını yedekleme

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

    İş tamamlarken pencereyi kapatabilirsiniz

    (Yedekleri yapılandırmadıysanız, 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ğunu ve bu yedeklemeye yeni donanımdan erişebildiğinizden emin olun.

Yeni veri katmanı sunucusunda SQL Server yükleme ve yapılandırma

  • yeni sunucuya SQL Server yükleyin ve çalışır durumda olduğundan emin olun. Önceki dağıtımınız raporlamayı kullandıysa raporlama ve analiz hizmetleri bileşenlerini eklediğinizden emin olun. Hizmet paketi ve toplu güncelleştirme düzeyleri de dahil olmak üzere daha önce kullandığınız sürüm ve sürümü yüklemeniz gerekir.

    SQL Server 2008 R2 Yükleme - Özellikler

    Alternatif olarak, zaten eşleşen bir sürümün yüklü olduğu bir sunucuda SQL Server örneği oluşturabilir ve Azure DevOps Server veritabanlarını bu örneğe geri yükleyebilirsiniz, ancak bu işlem geri yükleme sonrası daha fazla yapılandırma gerektirir.

    SQL Server yükleme ve yapılandırma seçenekleri hakkında daha fazla bilgi için buraya gidin.

    SQL Server yükledikten sonra dağıtımınız raporlama içeriyorsa SQL Server Management Studio açın ve ReportServer ve ReportServerTempDB veritabanlarını ayırın. Aksi takdirde, bu veritabanlarını Azure DevOps Server veritabanları için oluşturduğunuz yedeklemeyle geri yükleyemeyebilirsiniz.

    Mevcut veritabanları geri yüklemeden önce ayrılmalıdır

Yeni uygulama katmanı sunucusuna yazılım yükleme ve yapılandırma

Azure DevOps Server için yeni bir sunucu veya sunucu yapılandırmak için, önce onu desteklemek için gereken yazılımı yüklemeniz ve yapılandırmanız gerekir. Bu yazılım aşağıdaki bileşenleri içerir:

  • dağıtım yapılandırmanız için desteklenen bir işletim sistemi

  • Windows, IIS 'yi (varsayılan olarak yapılandırılmadıysa) yükleyip yapılandırın ve sunucunun ve yazılımının çalışır durumda olduğundan emin olun. 

    Daha fazla bilgi için bkz. Azure DevOps Server için sistem gereksinimleri.

Azure DevOps Server veritabanlarını geri yükleme

Geri yükleme aracını kullanarak Azure DevOps Server veritabanlarını geri yüklemek için, yeni veri katmanı sunucusunda Azure DevOps Server yüklemeli ancak yapılandırmamalı ve ardından Zamanlanmış Yedeklemeler düğümündeki geri yükleme işlevini kullanmalısınız.

SQL Server geri yükleme araçlarını kullanarak Azure DevOps Server veritabanlarını el ile geri yüklemek istiyorsanız, bunu yapabilirsiniz, ancak bu daha zor bir yordamdır. Ayrıca, yeni dağıtımda veritabanlarını el ile kaldırmanız gerekir. Azure DevOps Server'daki geri yükleme sihirbazı bunu geri yükleme işleminin bir parçası olarak sizin için otomatik olarak yapar, ancak bu işlevsellik SQL Server geri yükleme araçlarının bir parçası değildir.

  1. Azure DevOps Server yükleme medyasını başlatın. Team Foundation Server Kurulumu sayfasında Yükle'yi seçin.

  2. Yükleme tamamlandığında Team Foundation Server Yapılandırma Merkezi açılır. Kapatın.

    Yönetim konsolu otomatik olarak yapılandırılmamış durumda açılır. Bu beklenen bir durumdur.

  3. Geri Yükleme sihirbazını başlatmak için Azure DevOps Server için yönetim konsolunu açın ve Zamanlanmış Yedeklemeler'i açın.

    Geri Yükleme sihirbazını başlatma

  4. Yedekleme kümesinin yolunu belirtin ve eski dağıtımı sessize aldıktan sonra oluşturduğunuz kümeyi seçin.

    Ağ yolunu ve ardından geri yükleme kümesini seçin

  5. Sihirbazı tamamlayın ve veritabanlarını yeni SQL Server örneğine geri yükleyin.

    Veritabanları yeni sunucuya geri yüklenir

(Kopyala seçeneği) Sunucu kimliklerini yeniden yapılandırma ve veritabanlarını yeniden eşleme

Not

PrepareClone, başka bir sunucuda zaten üretimde olan bir veritabanı yedeklemesini kullanarak yeni bir Azure DevOps Server dağıtımına hazırlanmadan önce kullanılması önerilir. İşlevselliğini yapılandırma sihirbazındaki Üretim Öncesi Yükseltme ve Kopyalama senaryolarına eklediğimizden bu komut artık gerekli değildir.

Özgün Azure DevOps Server örneğini kullanmaya devam etmek istiyorsanız yeni uygulama katmanı sunucusunda sonraki adım kümesini gerçekleştirin. Bu adımlar, dağıtımlardan birinin veya her ikisinin bozulma riskini önlemek için gereklidir. Her iki sunucu da canlıysa, özellikle de aynı raporlama kaynaklarını işaret ediyorlarsa bozulmayla sonuçlanabilir.

  1. Yönetici olarak bir Komut İstemi penceresi açın ve dizinleri Drive:%programfiles%\TFS 12.0\Tools olarak değiştirin. Bir Komut İstemi penceresi açın ve şunu girin:

  2. Zamanlanmış yedeklemeler ve raporlama kaynakları hakkındaki bilgileri kaldırmak için TFSConfig PrepareClone komutunu çalıştırın.

    TFSConfig PrepareClone /SQLInstance:ServerName /DatabaseName:DatabaseName /notificationURL: ApplicationTierURL
    
  3. Veritabanlarıyla ilişkili sunucu GUID'lerini değiştirmek için TFSConfig ChangeServerID komutunu çalıştırın. GUID'ler Azure DevOps Server dağıtımda benzersiz olmalıdır.

    TFSConfig ChangeServerID /SQLInstance:ServerName] /DatabaseName:ConfigurationDatabaseName [/ProjectCollectionsOnly] [/ConfigDBOnly] [/usesqlalwayson]
    
  4. Kopyalanan Azure DevOps Server veritabanlarına yeniden yönlendirmek için TFSConfig RemapDBs komutunu çalıştırın.

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

Uygulama katmanı sunucusunu yapılandırma

  1. yapılandırma merkezini başlatmak için Azure DevOps Server yönetim konsolunda Yüklü Özellikleri Yapılandır'ı seçin.

  2. Yalnızca Application-Tier sihirbazını başlatın ve Veritabanları'nda, Azure DevOps Server veritabanlarını geri yüklediğiniz yeni SQL Server örneğini belirtin. Listeden Tfs_Configuration veritabanını seçin.

    SQL Server ve veritabanı yedekleme kümesini seçin

  3. Sihirbazın son sayfasını kapatmadan önce "i" simgesini arayın. Gelecekte başvurmak isteyebileceğiniz bilgileri gösterir. Son sayfa, yapılandırma günlüğünün konumunu da içerir.

    Tüm sorunları ve günlük dosyasının konumunu not alın

Azure DevOps Server URL'lerini güncelleştirme

  1. Uygulama katmanı düğümüne gidin ve bildirime ve web portalı URL'lerine bakın. Yine de eski dağıtımın konumunu işaret ettiklerini unutmayın. Bunları güncelleştirin.

    Bildirim ve Web URL'leri güncel değil

  2. URL'leri yeni sunucunun adıyla güncelleştirdikten sonra, doğru olduğundan emin olmak için bilgileri gözden geçirin.

    Sunucu URL'si hala localhost kullanıyor

Tüm hizmet hesaplarını güncelleştirme

Azure DevOps Server (TFSService) ve veri kaynakları hesabı (TFSReports) için hizmet hesabını güncelleştirmeniz gerekir. Bu hesaplar değişmemiş olsa bile, hesapların kimliğinin ve biçiminin yeni sunucu için uygun olduğundan emin olmak için bilgileri güncelleştirmeniz gerekir.

  1. Yönetici olarak bir Komut İstemi penceresi açın ve dizinleri Sürücü:\%programfiles%\TFS 12.0\Araçlar olarak değiştirin.

  2. Komut isteminde aşağıdaki komutu yazarak Azure DevOps için hizmet hesabını ekleyin; burada DatabaseName yapılandırma veritabanının adıdır (varsayılan olarak TFS_Configuration):

    TfsConfig Hesapları /add /AccountType:ApplicationTier /account:AccountName/SQLInstance:ServerName/DatabaseName:DatabaseName

  3. Komut isteminde, veri kaynakları hesabını eklemek için aşağıdaki komutu yazın:

    TfsConfig Hesapları /add /AccountType:ReportingDataSource /account:AccountName/SQLInstance:ServerName/DatabaseName:DatabaseName

    Daha fazla bilgi için bkz . Hesaplar Komutu.

Derleme sunucularını güncelleştirme

Şimdi, taşınan Azure DevOps Server dağıtımına işaret etmek için derleme sunucularınızı yeniden yönlendirmeniz gerekir.

  1. Her derleme sunucusunda yönetim konsolunu açın ve derleme hizmetini durdurun.

  2. Derleme hizmetinin özelliklerinde iletişim özelliklerini güncelleştirin.

    Hizmeti durdurun ve sonra değişiklik yapın

Raporlama ve Analysis Services'ı yapılandırma

Dağıtımınız bir rapor sunucusu kullanıyorsa Azure DevOps Server konumuna yeniden yönlendirmeniz, ambarı yeniden başlatmanız ve Veritabanını Analysis Services için el ile yeniden oluşturmanız gerekir. Raporlama kullanmıyorsanız bu yordamı atlayın.

  1. Raporlama düğümüne gidin. Listelenen rapor sunucusu değerleri yeni olanlar değil eski değerlerdir, bu nedenle bunları düzenleyin.

    Raporlar hala eski sunucuya işaret ediyor

  2. Üç sekmedeki değerleri de yeni sunucuya işaret etmek için değiştirin. Yeni dağıtımda veri kaynakları hesabı için doğru bilgileri sağladığınıza emin olun.

    3 sekmede de bilgilerin doğru olduğundan emin olun

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

  4. Ambarı yeniden derlemek için Yeniden Derlemeyi Başlat'ı seçin.

Kullanıcılar, gruplar ve hizmet hesapları için izinleri doğrulama

Yeni donanıma geçtikten sonra, dağıtımınız için tüm kullanıcıların, grupların ve hizmet hesaplarının her sunucuda düzgün çalışması için gereken izinlerle yapılandırıldığından emin olun. SQL Server veya yerel bilgisayardaki ek izinler gibi bazı izinler otomatik olarak geçirilemez. Örneğin, Azure DevOps yöneticilerinin yönetim konsolunu açmak için uygulama katmanı sunucusundaki yerel Yöneticiler grubunun üyesi olması gerekir, bu nedenle bunları bu gruba el ile eklemeniz gerekir.

  • Sunucuda oturum açın ve kullanıcıların, grupların ve hizmet hesaplarının işlem için gereken izinlerle yapılandırıldığından emin olun. Proje gruplarında ve ekiplerde üyeliği el ile işaretleyin ve bu grupların ve ekiplerin beklediğiniz izinlere sahip olduğunu doğrulayın.

  • Bir proje koleksiyonuna göz atın ve bu koleksiyondaki tüm projelerin beklendiği gibi göründüğüne ve bu projelerdeki kullanıcıların iş öğelerine uygun şekilde erişebildiğinden emin olun.

  • Web portalını açın ve ekip sitelerinin ve ekiplerin beklendiği gibi göründüğünü doğrulayın.

Hangi grupların ve izinlerin beklenip beklenmeyeceğini emin değil misiniz? Daha fazla bilgi için bkz. Projelere kullanıcı ekleme, Proje koleksiyonları için yönetici izinlerini ayarlama, Azure DevOps Server için yönetici izinlerini ayarlama ve Azure DevOps Server hizmet hesapları ve bağımlılıkları.

İstemci bilgisayarlarda veri önbelleğini yenileme

  • Sunucuda oturum açın ve istemcileri iş öğelerini izlemek ve Azure DevOps sürüm denetimi için önbelleği güncelleştirmeye zorlamak için ClientService Web hizmetini kullanın.

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

    Daha fazla bilgi için bkz. İstemci bilgisayarlardaki veri önbelleklerini yenileme.

    Bir sonraki oturum açışında tüm kullanıcılar için önbelleğin tamamını yenilemek istiyorsanız witadmin rebuildcache komutunu kullanın.

    Not

    Veritabanlarınızı farklı bir zamana geri yüklediyseniz, istemci bilgisayarlardaki veri önbelleklerini yenileme bölümünde açıklandığı gibi sürüm denetimi önbelleğini yenilemeniz de gerekir.

Kullanıcılara bildirme

artık Azure DevOps Server taşıdığınıza göre, kullanıcılarınıza taşınan dağıtıma nasıl bağlanacaklarını söylemeniz gerekir. Özellikle, onlara aşağıdaki bilgileri vermeniz gerekir:

  • Projelerine yeniden bağlanabilmeleri için yeni sunucunun adı ve web portalının URL'si

  • Raporlama dağıtımınızın bir parçasıysa raporlama için yeni veritabanı adları

  • Git kullanan bir projenin üyesiyse, bu projenin her deposu için sahip oldukları her kopyayı yerel olarak güncelleştirme yönergeleri. Özellikle, her kopya için aşağıdaki komutu çalıştırmaları gerekir:

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

    Kullanıcılar, Gezgin sekmesinden projeye göz atarak her kopya için URL'nin ne olduğunu görebilir.

    bir depoyu el ile kopyalamak için URL'yi kopyalama

Yedeklemeleri yapılandırma

Eski dağıtımınız için zamanlanmış yedeklemeleriniz olsa da, bu zamanlanmış yedeklemeler taşınan dağıtımınızı yedeklemek için değiştirilmedi. Bunları yapılandırmanız gerekir.

  • Yönetim konsolunda Zamanlanmış Yedeklemeler düğümüne gidin ve yeni sunucudaki Azure DevOps Server veritabanlarını yedeklemek için zamanlanmış yedeklemeleri yeniden yapılandırın. Daha fazla bilgi için bkz . Yedekleme zamanlaması ve planı oluşturma.

Soru-Cevap

S: Fiziksel sunucuları değil etki alanlarını değiştirmek istiyorum. Bunu yapabilir miyim?

Y: Evet. Buna ortam tabanlı taşıma denir ve adımlar burada bulunabilir. Ortam tabanlı taşımayı donanım tabanlı taşıma ile birleştirmeyi denememelisiniz. Önce donanım taşıma işlemini tamamlayın ve ardından ortamı değiştirin.

S: Yeni donanıma geçtikten sonra eski Azure DevOps Server kullanmaya devam etmek istediğimi fark ettim. Bunu yapabilir miyim?

A: Evet, ancak ek adımları hemen gerçekleştirmeniz çok önemlidir. İdeal olarak, taşıma veya kopyalama adımlarının bir parçası olarak bu adımları gerçekleştirmiş olmanız gerekir. Bu, dağıtımlardan birinin veya her ikisinin bozulma riskini önlemenin en iyi yoludur. Her iki sunucu da canlıysa, özellikle de aynı raporlama kaynaklarına işaret ediyorlarsa bozulmayla sonuçlanabilir.

Bu sorunu çözmek için:

  1. Yeni sunucuda TFSConfig PrepareClone komutunu çalıştırın

  2. Yeni sunucuda TFSConfig ChangeServerID Komutunu çalıştırın

  3. Yeni sunucuda TFSConfig RemapDBs Komutunu çalıştırın

S: Project Server ile tümleşen bir dağıtımım var. Taşınan Azure DevOps Server çalışmak için ek adımlar gerçekleştirmem gerekiyor mu?

A: Evet, donanım taşıma işlemini tamamladıktan sonra Azure DevOps Server Project Server'a yeniden kaydetmek için TFSAdmin ProjectServer/RegisterPWA komutunu /tfs, /force ve /pwa seçenekleriyle kullanmanız gerekir. Project Server ile Azure DevOps Server tümleştirmesi hakkında daha fazla bilgiyi burada bulabilirsiniz.