Aracılığıyla paylaş


İş sürekliliği ve olağanüstü durum kurtarma (BCDR) için Azure-SSIS tümleştirme çalışma zamanını yapılandırma

UYGULANANLAR: Azure Data Factory Azure Synapse Analytics

İpucu

Kuruluşlar için hepsi bir arada analiz çözümü olan Microsoft Fabric'te Data Factory'yi deneyin. Microsoft Fabric , veri taşımadan veri bilimine, gerçek zamanlı analize, iş zekasına ve raporlamaya kadar her şeyi kapsar. Yeni bir deneme sürümünü ücretsiz olarak başlatmayı öğrenin!

Azure Data Factory (ADF) veya Synapse Pipelines'da Azure SQL Veritabanı/Yönetilen Örnek ve SQL Server Integration Services (SSIS), SQL Server geçişi için önerilen tüm Hizmet Olarak Platform (PaaS) çözümü olarak birleştirilebilir. SSIS projelerinizi Azure SQL Veritabanı/Yönetilen Örnek tarafından barındırılan SSIS katalog veritabanına (SSISDB) dağıtabilir ve SSIS paketlerinizi ADF veya Synapse Pipelines'da Azure SSIS tümleştirme çalışma zamanı (IR) üzerinde çalıştırabilirsiniz.

İş sürekliliği ve olağanüstü durum kurtarma (BCDR) için Azure SQL Veritabanı/Yönetilen Örnek, okuma-yazma erişimine (birincil rol) sahip birincil Azure bölgesinde SSISDB'nin salt okunur erişim (ikincil rol) ile sürekli olarak ikincil bir bölgeye çoğaltılacağı coğrafi çoğaltma/yük devretme grubuyla yapılandırılabilir. Birincil bölgede olağanüstü durum oluştuğunda, birincil ve ikincil SSISDB'lerin rolleri değiştireceği bir yük devretme tetiklenir.

BCDR için, Azure SQL Veritabanı/Yönetilen Örnek yük devretme grubuyla eşitlenmiş olarak çalışan bir çift bekleyen Azure SSIS IR çifti de yapılandırabilirsiniz. Bu, belirli bir zamanda yalnızca birinin paketleri getirmek ve yürütmek için birincil SSISDB'ye erişebildiği ve paket yürütme günlüklerini (birincil rol) yazabildiği bir çift Azure-SSIS IR'sine sahip olmanıza olanak tanırken, diğeri yalnızca Azure Dosyalar (ikincil rol) gibi başka bir yere dağıtılan paketler için aynı işlemi gerçekleştirebilir. SSISDB yük devretme gerçekleştiğinde, birincil ve ikincil Azure-SSIS IR'leri de rolleri değiştirir ve her ikisi de çalışıyorsa neredeyse sıfır kapalı kalma süresi olur.

Bu makalede, BCDR için Azure SQL Veritabanı/Yönetilen Örnek yük devretme grubuyla Azure-SSIS IR'nin nasıl yapılandırıldığı açıklanmaktadır.

Azure SQL Veritabanı yük devretme grubuyla çift hazır bekleyen Azure-SSIS IR çifti yapılandırma

Azure SQL Veritabanı yük devretme grubuyla eşitlenmiş olarak çalışan bir çift hazır bekleyen Azure-SSIS IR çifti yapılandırmak için aşağıdaki adımları tamamlayın.

  1. Azure portalı/ADF kullanıcı arabirimini kullanarak, SSISDB'yi birincil bölgede barındırmak için birincil Azure SQL Veritabanı sunucunuzla yeni bir Azure-SSIS IR oluşturabilirsiniz. Birincil Azure SQL Veritabanı sunucunuz tarafından barındırılan SSIDB'ye zaten eklenmiş bir Azure-SSIS IR'niz varsa ve hala çalışıyorsa, yeniden yapılandırmak için önce durdurmanız gerekir. Bu, birincil Azure-SSIS IR'niz olacaktır.

    Tümleştirme çalışma zamanı kurulum bölmesinin Dağıtım ayarları sayfasında SSISDB'yi kullanmayı seçerken, SSISDB yük devretmesi ile çift bekleyen Azure-SSIS Integration Runtime çiftini kullan onay kutusunu da seçin. İkili bekleme çifti adı için, birincil ve ikincil Azure-SSIS IR çiftinizi tanımlamak için bir ad girin. Birincil Azure-SSIS IR'nizin oluşturulmasını tamamladığınızda başlatılır ve okuma-yazma erişimiyle sizin yerinize oluşturulacak bir birincil SSISDB'ye eklenir. Yeni yapılandırdıysanız yeniden başlatmanız gerekir.

  2. Azure portalını kullanarak birincil SSISDB'nin oluşturulup oluşturulmadığını birincil Azure SQL Veritabanı sunucunuzun Genel Bakış sayfasından de kontrol edebilirsiniz. Oluşturulduktan sonra, birincil ve ikincil Azure SQL Veritabanı sunucularınız için bir yük devretme grubu oluşturabilir ve yük devretme grupları sayfasında SSISDB'yi buna ekleyebilirsiniz. Yük devretme grubunuz oluşturulduktan sonra, birincil SSISDB'nin salt okunur erişime sahip ikincil bir SSISDB'ye çoğaltılıp çoğaltılmadığını ikincil Azure SQL Veritabanı sunucunuzun Genel Bakış sayfasından de kontrol edebilirsiniz.

  3. Azure portalı/ADF kullanıcı arabirimini kullanarak, SSISDB'yi ikincil bölgede barındırmak için ikincil Azure SQL Veritabanı sunucunuzla başka bir Azure-SSIS IR oluşturabilirsiniz. Bu, ikincil Azure-SSIS IR'niz olacaktır. Tam BCDR için, bağımlı olduğu tüm kaynakların ikincil bölgede de oluşturulduğundan emin olun. Örneğin, özel kurulum betiğini/dosyalarını depolamak için Azure Depolama, paket yürütmelerini düzenleme/zamanlama için ADF vb.

    Tümleştirme çalışma zamanı kurulum bölmesinin Dağıtım ayarları sayfasında SSISDB'yi kullanmayı seçerken, SSISDB yük devretmesi ile çift bekleyen Azure-SSIS Integration Runtime çiftini kullan onay kutusunu da seçin. İkili bekleme çifti adı için, birincil ve ikincil Azure-SSIS IR çiftinizi tanımlamak için aynı adı girin. İkincil Azure-SSIS IR'nizin oluşturulmasını tamamladığınızda başlatılır ve ikincil SSISDB'ye eklenir.

  4. SSISDB yük devretmesi gerçekleştiğinde neredeyse sıfır kapalı kalma süresine sahip olmak istiyorsanız her iki Azure-SSIS IR'nizi de çalışır durumda tutun. Yalnızca birincil Azure-SSIS IR'niz paketleri getirmek ve yürütmek ve paket yürütme günlüklerini yazmak için birincil SSISDB'ye erişebilirken, ikincil Azure-SSIS IR'niz aynı işlemi yalnızca başka bir yere dağıtılan paketler için (örneğin, Azure Dosyalar) gerçekleştirebilir.

    Çalıştırma maliyetinizi en aza indirmek istiyorsanız, ikincil Azure-SSIS IR'nizi oluşturulduktan sonra durdurabilirsiniz. SSISDB yük devretmesi gerçekleştiğinde birincil ve ikincil Azure-SSIS IR'leriniz rolleri değiştirir. Birincil Azure-SSIS IR'niz durdurulduysa yeniden başlatmanız gerekir. Sanal ağa eklenip eklenmediğine ve kullanılan ekleme yöntemine bağlı olarak, 5 dakika içinde veya yaklaşık 20 -30 dakika içinde çalışır.

  5. Paket yürütmelerini düzenleme/zamanlama için ADF kullanıyorsanız, SSIS Paketi Yürütme etkinlikleri ve ilişkili tetikleyicileri olan tüm ilgili ADF işlem hatlarının başlangıçta devre dışı bırakılmış tetikleyicilerle ikincil ADF'nize kopyalandığından emin olun. SSISDB yük devretmesi gerçekleştiğinde bunları etkinleştirmeniz gerekir.

  6. Azure SQL Veritabanı yük devretme grubunuzu test edebilir ve ADF portalındaki Azure-SSIS IR izleme sayfasında birincil ve ikincil Azure-SSIS IR'lerinizin rolleri değiştirip değiştirmediğini kontrol edebilirsiniz.

Azure SQL Yönetilen Örneği yük devretme grubuyla çift hazır bekleyen Azure-SSIS IR çifti yapılandırma

Azure SQL Yönetilen Örneği yük devretme grubuyla eşitlenmiş olarak çalışan bir çift hazır bekleyen Azure-SSIS IR çifti yapılandırmak için aşağıdaki adımları tamamlayın.

  1. Azure portalını kullanarak, birincil Azure SQL Yönetilen Örneği yük devretme grupları sayfasında birincil ve ikincil Azure SQL Yönetilen Örneği için bir yük devretme grubu oluşturabilirsiniz.

  2. Azure portalı/ADF kullanıcı arabirimini kullanarak, SSISDB'yi birincil bölgede barındırmak için birincil Azure SQL Yönetilen Örneği yeni bir Azure-SSIS IR oluşturabilirsiniz. Birincil Azure SQL Yönetilen Örneği tarafından barındırılan SSIDB'ye zaten eklenmiş bir Azure-SSIS IR'niz varsa ve hala çalışıyorsa, yeniden yapılandırmak için önce bunu durdurmanız gerekir. Bu, birincil Azure-SSIS IR'niz olacaktır.

    Tümleştirme çalışma zamanı kurulum bölmesinin Dağıtım ayarları sayfasında SSISDB'yi kullanmayı seçerken, SSISDB yük devretmesi ile çift bekleyen Azure-SSIS Integration Runtime çiftini kullan onay kutusunu da seçin. İkili bekleme çifti adı için, birincil ve ikincil Azure-SSIS IR çiftinizi tanımlamak için bir ad girin. Birincil Azure-SSIS IR'nizin oluşturulmasını tamamladığınızda başlatılır ve okuma-yazma erişimiyle sizin yerinize oluşturulacak bir birincil SSISDB'ye eklenir. Yeni yapılandırdıysanız yeniden başlatmanız gerekir. Ayrıca, birincil SSISDB'nin salt okunur erişime sahip ikincil bir SSISDB'ye çoğaltılıp çoğaltılmadığını ikincil Azure SQL Yönetilen Örneği Genel Bakış sayfasında da de kontrol edebilirsiniz.

  3. Azure portalı/ADF kullanıcı arabirimini kullanarak, ikincil bölgede SSISDB barındırmak için ikincil Azure SQL Yönetilen Örneği başka bir Azure-SSIS IR oluşturabilirsiniz. Bu, ikincil Azure-SSIS IR'niz olacaktır. Tam BCDR için, bağımlı olduğu tüm kaynakların ikincil bölgede de oluşturulduğundan emin olun. Örneğin, özel kurulum betiğini/dosyalarını depolamak için Azure Depolama, paket yürütmelerini düzenleme/zamanlama için ADF vb.

    Tümleştirme çalışma zamanı kurulum bölmesinin Dağıtım ayarları sayfasında SSISDB'yi kullanmayı seçerken, SSISDB yük devretmesi ile çift bekleyen Azure-SSIS Integration Runtime çiftini kullan onay kutusunu da seçin. İkili bekleme çifti adı için, birincil ve ikincil Azure-SSIS IR çiftinizi tanımlamak için aynı adı girin. İkincil Azure-SSIS IR'nizin oluşturulmasını tamamladığınızda başlatılır ve ikincil SSISDB'ye eklenir.

  4. Azure SQL Yönetilen Örneği, SSISDB gibi veritabanlarındaki hassas verileri Veritabanı Ana Anahtarı (DMK) kullanarak şifreleyerek güvenli hale getirebilirsiniz. DMK'nin kendisi de varsayılan olarak Hizmet Ana Anahtarı (SMK) kullanılarak şifrelenir. Eylül 2021'den bu yana SMK, yük devretme grubu oluşturulurken birincil Azure SQL Yönetilen Örneği ikincil Azure SQL Yönetilen Örneği çoğaltılır. Yük devretme grubunuz daha önce oluşturulduysa, lütfen SSISDB dahil olmak üzere tüm kullanıcı veritabanlarını ikincil Azure SQL Yönetilen Örneği silin ve yük devretme grubunuzu yeniden oluşturun.

  5. SSISDB yük devretmesi gerçekleştiğinde neredeyse sıfır kapalı kalma süresine sahip olmak istiyorsanız her iki Azure-SSIS IR'nizi de çalışır durumda tutun. Yalnızca birincil Azure-SSIS IR'niz paketleri getirmek ve yürütmek ve paket yürütme günlüklerini yazmak için birincil SSISDB'ye erişebilirken, ikincil Azure-SSIS IR'niz aynı işlemi yalnızca başka bir yere dağıtılan paketler için (örneğin, Azure Dosyalar) gerçekleştirebilir.

    Çalıştırma maliyetinizi en aza indirmek istiyorsanız, ikincil Azure-SSIS IR'nizi oluşturulduktan sonra durdurabilirsiniz. SSISDB yük devretmesi gerçekleştiğinde birincil ve ikincil Azure-SSIS IR'leriniz rolleri değiştirir. Birincil Azure-SSIS IR'niz durdurulduysa yeniden başlatmanız gerekir. Sanal ağa eklenip eklenmediğine ve kullanılan ekleme yöntemine bağlı olarak, 5 dakika içinde veya yaklaşık 20 -30 dakika içinde çalışır.

  6. Paket yürütmelerini düzenleme/zamanlama için Azure SQL Yönetilen Örneği Aracısı kullanıyorsanız, iş adımları ve ilişkili zamanlamaları olan tüm ilgili SSIS işlerinin, zamanlamaları başlangıçta devre dışı bırakılmış şekilde ikincil Azure SQL Yönetilen Örneği kopyalandığından emin olun. SSMS'yi kullanarak aşağıdaki adımları tamamlayın.

    1. Her SSIS işi için betiği oluşturmak için sağ tıklayın ve Betik İşi olarak, CREATE To ve New Sorgu Düzenleyicisi Window açılan menüsü öğelerine tıklayın ve seçin.

      SSIS iş betiği oluşturma

    2. Oluşturulan her SSIS iş betiği için saklı yordamı yürütmek sp_add_job için komutunu bulun ve bağımsız değişkene gereken değer atamasını @owner_login_name değiştirin/kaldırın.

    3. Güncelleştirilen her SSIS iş betiğinde, işi iş adımları ve ilişkili zamanlamalarıyla kopyalamak için ikincil Azure SQL Yönetilen Örneği çalıştırın.

    4. Aşağıdaki betiği kullanarak, hem birincil hem de ikincil Azure SQL Yönetilen Örneği sırasıyla birincil/ikincil SSISDB rolüne dayalı SSIS iş zamanlamalarını etkinleştirmek/devre dışı bırakmak ve düzenli olarak çalıştırmak için yeni bir T-SQL işi oluşturun. SSISDB yük devretmesi gerçekleştiğinde, devre dışı bırakılan SSIS iş zamanlamaları etkinleştirilir ve tam tersi de geçerlidir.

      IF (SELECT Top 1 role_desc FROM SSISDB.sys.dm_geo_replication_link_status WHERE partner_database = 'SSISDB') = 'PRIMARY'
         BEGIN
            IF (SELECT enabled FROM msdb.dbo.sysschedules WHERE schedule_id = <ScheduleID>) = 0
               EXEC msdb.dbo.sp_update_schedule @schedule_id = <ScheduleID >, @enabled = 1
         END
      ELSE
         BEGIN
            IF (SELECT enabled FROM msdb.dbo.sysschedules WHERE schedule_id = <ScheduleID>) = 1
               EXEC msdb.dbo.sp_update_schedule @schedule_id = <ScheduleID >, @enabled = 0
         END
      
  7. Paket yürütmelerini düzenleme/zamanlama için ADF kullanıyorsanız, SSIS Paketi Yürütme etkinlikleri ve ilişkili tetikleyicileri olan tüm ilgili ADF işlem hatlarının başlangıçta devre dışı bırakılmış tetikleyicilerle ikincil ADF'nize kopyalandığından emin olun. SSISDB yük devretmesi gerçekleştiğinde bunları etkinleştirmeniz gerekir.

  8. Azure SQL Yönetilen Örneği yük devretme grubunuzu test edebilir ve ADF portalındaki Azure-SSIS IR izleme sayfasında birincil ve ikincil Azure-SSIS IR'lerinizin rolleri değiştirip değiştirmediğini kontrol edebilirsiniz.

Azure SQL Veritabanı/Yönetilen Örnek tarafından barındırılan mevcut SSISDB'ye yeni bir Azure-SSIS IR ekleme

Bir olağanüstü durum oluşur ve mevcut Azure-SSIS IR'nizi etkiler ancak aynı bölgedeki Azure SQL Veritabanı/Yönetilen Örneğinizi etkilemezse, bunu başka bir bölgede yenisiyle değiştirebilirsiniz. Azure SQL Veritabanı/Yönetilen Örnek tarafından barındırılan mevcut SSISDB'nizi yeni bir Azure-SSIS IR'ye eklemek için aşağıdaki adımları tamamlayın.

  1. Mevcut Azure-SSIS IR'niz hala çalışıyorsa, önce Azure portalı/ADF kullanıcı arabirimini veya Azure PowerShell'i kullanarak durdurmanız gerekir. Olağanüstü durum aynı bölgedeki ADF'yi de etkiliyorsa bu adımı atlayabilirsiniz.

  2. SSMS kullanarak, yeni ADF/Azure-SSIS IR'nizden bağlantılara izin verecek meta verileri güncelleştirmek için Azure SQL Veritabanı/Yönetilen Örneğinizde SSISDB için aşağıdaki komutu çalıştırın.

    EXEC [catalog].[failover_integration_runtime] @data_factory_name = 'YourNewADF', @integration_runtime_name = 'YourNewAzureSSISIR'
    
  3. Azure portalı/ADF kullanıcı arabirimini veya Azure PowerShell'i kullanarak sırasıyla Başka bir bölgede YourNewADF YourNewAzureSSISIR adlı yeni ADF//Azure-SSIS IR'nizi oluşturun. Azure portalı/ADF kullanıcı arabirimini kullanıyorsanız, Tümleştirme çalışma zamanı kurulum bölmesinin Dağıtım ayarları sayfasında test bağlantısı hatasını yoksayabilirsiniz.

Azure-SSIS IR'niz için şu diğer yapılandırma seçeneklerini göz önünde bulundurabilirsiniz: