Şirket içinde barındırılan IR'yi Azure-SSIS IR için ara sunucu olarak yapılandırma

UYGULANANLAR: Azure Data Factory Azure Synapse Analytics

Bahşiş

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!

Bu makalede, ara sunucu olarak yapılandırılmış şirket içinde barındırılan tümleştirme çalışma zamanı (şirket içinde barındırılan IR) ile Azure-SSIS Integration Runtime (Azure-SSIS IR) üzerinde SQL Server Integration Services (SSIS) paketlerinin nasıl çalıştırıldığı açıklanmaktadır.

Bu özellik sayesinde Azure-SSIS IR'nizi sanal ağa eklemek zorunda kalmadan verilere erişebilir ve görevleri şirket içinde çalıştırabilirsiniz. Bu özellik, şirket ağınızda yapılandırma çok karmaşık olduğunda veya Azure-SSIS IR'nizi ekleyemeyecek kadar kısıtlayıcı bir ilke olduğunda kullanışlıdır.

Bu özellik şimdilik yalnızca SSIS Veri Akışı Görevinde etkinleştirilebilir ve SQL/İşlem Görevlerini Yürütebilir.

Veri Akışı Görevde etkinleştirilen bu özellik, uygun olduğunda iki hazırlama görevine böler:

  • Şirket içi hazırlama görevi: Bu görev, şirket içinde barındırılan IR'nizdeki bir şirket içi veri deposuna bağlanan veri akışı bileşeninizi çalıştırır. Verileri şirket içi veri deposundan Azure Blob Depolama bir hazırlama alanına (veya tam tersi) taşır.
  • Bulut hazırlama görevi: Bu görev, Azure-SSIS IR'nizdeki şirket içi veri deposuna bağlanmayan veri akışı bileşeninizi çalıştırır. Verileri Azure Blob Depolama hazırlama alanından bir bulut veri deposuna (veya tersi) taşır.

Veri Akışı Göreviniz verileri şirket içinden buluta taşırsa, birinci ve ikinci hazırlama görevleri sırasıyla şirket içi ve bulut hazırlama görevleri olur. Veri Akışı Göreviniz verileri buluttan şirkete taşırsa, birinci ve ikinci hazırlama görevleri sırasıyla bulut ve şirket içi hazırlama görevleri olur. Veri Akışı Göreviniz verileri şirket içinden şirket içine taşırsa, birinci ve ikinci hazırlama görevleri hem şirket içi hazırlama görevleri olur. Veri Akışı Göreviniz verileri buluttan buluta taşırsa bu özellik geçerli değildir.

SQL/İşlem Görevlerini Yürüt'te etkinleştirilen bu özellik, bunları şirket içinde barındırılan IR'nizde çalıştırır.

Bu özelliğin diğer avantajları ve özellikleri, örneğin azure-SSIS IR tarafından henüz desteklenmeyen bölgelerde şirket içinde barındırılan IR'nizi ayarlamanıza ve veri kaynaklarınızın güvenlik duvarında şirket içinde barındırılan IR'nizin genel statik IP adresine izin vermenizi sağlar.

Şirket içinde barındırılan IR'yi hazırlama

Bu özelliği kullanmak için önce bir veri fabrikası oluşturur ve içinde bir Azure-SSIS IR ayarlarsınız. Henüz yapmadıysanız Azure-SSIS IR ayarlama başlığındaki yönergeleri izleyin.

Ardından şirket içinde barındırılan IR'nizi Azure-SSIS IR'nizin ayarlandığı veri fabrikasında ayarlarsınız. Bunu yapmak için bkz . Şirket içinde barındırılan IR oluşturma.

Son olarak şirket içi makinenize veya Azure sanal makinenize (VM) şirket içinde barındırılan IR'nin en son sürümünü ve ek sürücüleri ve çalışma zamanını aşağıdaki gibi indirip yüklersiniz:

  • Şirket içinde barındırılan IR'nin en son sürümünü indirin ve yükleyin.

  • Şirket içinde barındırılan IR sürümü 5.28.0 veya üzeriyse şirket içinde barındırılan tümleştirme çalışma zamanı düğümünde SSIS paketi yürütmeyi etkinleştirin.

    ExecuteSsisPackage özelliği şirket içinde barındırılan IR sürüm 5.28.0'dan yeni kullanıma sunulmuştur. SSIS paketi yürütmesini etkinleştirmek veya devre dışı bırakmak için aşağıdaki şirket içinde barındırılan IR komut satırı eylemini kullanın:

    • -EnableExecuteSsisPackage Şirket içinde barındırılan IR düğümünde SSIS paketi yürütmesini etkinleştirin.

    • -DisableExecuteSsisPackage Şirket içinde barındırılan IR düğümünde SSIS paketi yürütmesini devre dışı bırakın.

    • -GetExecuteSsisPackage

    Şirket içinde barındırılan IR komut satırı ayrıntıları, Yerel PowerShell aracılığıyla şirket içinde barındırılan mevcut bir IR ayarlama bölümüne bakın.

    5.28.0 veya sonraki bir sürüme sahip yeni yüklenen şirket içinde barındırılan IR düğümü, ExecuteSsisPackage özelliği varsayılan olarak devre dışıdır.

    Şirket içinde barındırılan mevcut IR düğümü 5.28.0 veya sonraki bir sürüme güncelleştirildi, ExecuteSsisPackage özelliği varsayılan olarak etkindir

  • Nesne Bağlama ve Ekleme Veritabanı (OLEDB), Açık Veritabanı Bağlan ivity (ODBC) veya paketlerinizde ADO.NET bağlayıcıları kullanıyorsanız, henüz yapmadıysanız, ilgili sürücüleri şirket içinde barındırılan IR'nizin yüklü olduğu makineye indirip yükleyin.

    SQL Server (SQL Server Native Client [SQLNCLI]) için OLEDB sürücüsünün önceki sürümünü kullanıyorsanız 64 bit sürümünü indirin.

    SQL Server (MSOLEDBSQL) için OLEDB sürücüsünün en son sürümünü kullanıyorsanız 64 bit sürümünü indirin.

    PostgreSQL, MySQL, Oracle gibi diğer veritabanı sistemleri için OLEDB/ODBC/ADO.NET sürücüleri kullanıyorsanız, 64 bit sürümleri web sitelerinden indirebilirsiniz.

  • Paketlerinizde Azure Özellik Paketi'ndeki veri akışı bileşenlerini kullanıyorsanız, henüz yapmadıysanız SQL Server 2017 için Azure Özellik Paketi'ni şirket içinde barındırılan IR'nizin yüklü olduğu makineye indirip yükleyin.

  • Henüz yapmadıysanız, Şirket içinde barındırılan IR'nizin yüklü olduğu makineye Visual C++ (VC) çalışma zamanının 64 bit sürümünü indirip yükleyin.

Şirket içi görevler için Windows kimlik doğrulamasını etkinleştirme

Şirket içi hazırlama görevleri ve şirket içinde barındırılan IR'nizde SQL/İşlem Görevlerini Yürütme için Windows kimlik doğrulaması gerekiyorsa, Azure-SSIS IR'nizde Windows kimlik doğrulama özelliğini de yapılandırmanız gerekir.

Şirket içi hazırlama görevleriniz ve SQL/İşlem Görevlerini Yürüt işlemleri, şirket içinde barındırılan IR hizmet hesabıyla (varsayılan olarak NT SERVICE\DIAHostService) çağrılır ve veri depolarınıza Windows kimlik doğrulama hesabıyla erişilir. Her iki hesap da belirli güvenlik ilkelerinin atanmalarını gerektirir. Şirket içinde barındırılan IR makinesinde Yerel Güvenlik İlkesi Yerel İlkeler>>Kullanıcı Hakları Ataması'na gidin ve aşağıdakileri yapın:

  1. İşlem için bellek kotalarını ayarla ve İşlem düzeyi belirteç ilkelerini şirket içinde barındırılan IR hizmet hesabına değiştir'i atayın. Bu, şirket içinde barındırılan IR'nizi varsayılan hizmet hesabıyla yüklediğinizde otomatik olarak gerçekleşmelidir. Yoksa, bu ilkeleri el ile atayın. Farklı bir hizmet hesabı kullanıyorsanız, buna aynı ilkeleri atayın.

  2. Hizmet olarak oturum aç ilkesini Windows Kimlik Doğrulaması hesabına atayın.

Azure Blob Depolama bağlı hizmetini hazırlamaya hazırlama

Henüz yapmadıysanız, Azure-SSIS IR'nizin ayarlandığı aynı veri fabrikasında Azure Blob Depolama bağlı bir hizmet oluşturun. Bunu yapmak için bkz . Azure Data Factory bağlı hizmeti oluşturma. Şunları gerçekleştirdiğinizden emin olun:

  • Veri Deposu için Azure Blob Depolama'ı seçin.
  • Tümleştirme çalışma zamanı aracılığıyla Bağlan için AutoResolveIntegrationRuntime 'ı (şirket içinde barındırılan IR'niz değil) seçin; böylece bunu yoksayabilir ve bunun yerine Azure-SSIS IR'nizi kullanarak Azure Blob Depolama erişim kimlik bilgilerini getirebilirsiniz.
  • Kimlik doğrulama yöntemi için Hesap anahtarı, SAS URI,Hizmet Sorumlusu, Yönetilen Kimlik veya Kullanıcı Tarafından Atanan Yönetilen Kimlik'i seçin.

Bahşiş

Veri fabrikası örneğiniz Git özellikliyse, anahtar kimlik doğrulaması olmayan bağlı bir hizmet hemen yayımlanmaz; bu da özellik dalınızdaki bağlı hizmete bağlı olan tümleştirme çalışma zamanını kaydedemeyeceğiniz anlamına gelir. Hesap anahtarı veya SAS URI'si ile kimlik doğrulaması, bağlı hizmeti hemen yayımlar.

Bahşiş

Hizmet Sorumlusu yöntemini seçerseniz hizmet sorumlunuza en az bir Depolama Blob Verileri Katkıda Bulunanı rolü verin. Daha fazla bilgi için bkz. Azure Blob Depolama bağlayıcısı. Yönetilen Kimlik Kullanıcı Tarafından Atanan Yönetilen Kimlik/ yöntemini seçerseniz, ADF'nize belirtilen sistem/kullanıcı tarafından atanan yönetilen kimliği Azure Blob Depolama erişmek için uygun bir rol verin. Daha fazla bilgi için bkz. ADF'niz için belirtilen sistem/kullanıcı tarafından atanan yönetilen kimlikle Microsoft Entra kimlik doğrulamasını kullanarak erişim Azure Blob Depolama.

Prepare the Azure Blob storage-linked service for staging

Şirket içinde barındırılan IR'niz ile bir Azure-SSIS IR'yi ara sunucu olarak yapılandırma

Hazırlama için şirket içinde barındırılan IR'nizi ve Azure Blob Depolama bağlı hizmetinizi hazırladıktan sonra, artık yeni veya mevcut Azure-SSIS IR'nizi veri fabrikası portalınızda veya uygulamanızda şirket içinde barındırılan IR'yi ara sunucu olarak yapılandırabilirsiniz. Ancak bunu gerçekleştirmeden önce, mevcut Azure-SSIS IR'niz zaten çalışıyorsa bunu durdurabilir, düzenleyebilir ve sonra yeniden başlatabilirsiniz.

  1. Tümleştirme çalışma zamanı kurulumu bölmesinde, Devam düğmesini seçerek Genel ayarlar ve Dağıtım ayarları sayfalarını atlayın.

  2. Gelişmiş ayarlar sayfasında aşağıdakileri yapın:

    1. Azure-SSIS Integration Runtime'ınız için proxy olarak Şirket İçinde Barındırılan Tümleştirme Çalışma Zamanı Ayarla onay kutusunu seçin.

    2. Şirket İçinde Barındırılan Tümleştirme Çalışma Zamanı açılan listesinde Azure-SSIS IR için ara sunucu olarak mevcut şirket içinde barındırılan IR'nizi seçin.

    3. Hazırlama depolama bağlı hizmeti açılan listesinde mevcut Azure Blob Depolama bağlı hizmetinizi seçin veya hazırlama için yeni bir hizmet oluşturun.

    4. Hazırlama yolu kutusunda, seçili Azure Depolama hesabınızda bir blob kapsayıcısı belirtin veya hazırlama için varsayılan kapsayıcıyı kullanmak üzere boş bırakın.

    5. Devam düğmesini seçin.

    Advanced settings with a self-hosted IR

PowerShell kullanarak yeni veya mevcut Azure-SSIS IR'nizi şirket içinde barındırılan IR ile ara sunucu olarak da yapılandırabilirsiniz.

$ResourceGroupName = "[your Azure resource group name]"
$DataFactoryName = "[your data factory name]"
$AzureSSISName = "[your Azure-SSIS IR name]"
# Self-hosted integration runtime info - This can be configured as a proxy for on-premises data access 
$DataProxyIntegrationRuntimeName = "" # OPTIONAL to configure a proxy for on-premises data access 
$DataProxyStagingLinkedServiceName = "" # OPTIONAL to configure a proxy for on-premises data access 
$DataProxyStagingPath = "" # OPTIONAL to configure a proxy for on-premises data access 

# Add self-hosted integration runtime parameters if you configure a proxy for on-premises data access
if(![string]::IsNullOrEmpty($DataProxyIntegrationRuntimeName) -and ![string]::IsNullOrEmpty($DataProxyStagingLinkedServiceName))
{
    Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
        -DataFactoryName $DataFactoryName `
        -Name $AzureSSISName `
        -DataProxyIntegrationRuntimeName $DataProxyIntegrationRuntimeName `
        -DataProxyStagingLinkedServiceName $DataProxyStagingLinkedServiceName

    if(![string]::IsNullOrEmpty($DataProxyStagingPath))
    {
        Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
            -DataFactoryName $DataFactoryName `
            -Name $AzureSSISName `
            -DataProxyStagingPath $DataProxyStagingPath
    }
}
Start-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
    -DataFactoryName $DataFactoryName `
    -Name $AzureSSISName `
    -Force

Ara sunucu kullanmak için SSIS paketlerini etkinleştirme

Visual Studio için SSIS Projeleri uzantısı veya tek başına yükleyici olarak en son SSDT'yi kullanarak, desteklenen veri akışı bileşenleri için bağlantı yöneticilerinde yeni ConnectByProxy bir özellik ve ExecuteOnProxy SQL/İşlem Görevlerini Yürütme bölümünde yeni bir özellik bulabilirsiniz.

Şirket içi verilere erişen bileşenlerle Veri Akışı Görevleri içeren yeni paketler tasarlarken, ilgili bağlantı yöneticilerinin ConnectByProxy Özellikler bölmesinde özelliği True olarak ayarlayarak özelliği etkinleştirebilirsiniz.

Şirket içinde çalışan Execute SQL/Process Tasks içeren yeni paketler tasarlarken, ilgili görevlerin ExecuteOnProxy Özellikler bölmesinde özelliği True olarak ayarlayarak özelliği etkinleştirebilirsiniz.

Enable ConnectByProxy/ExecuteOnProxy property

Ayrıca, mevcut paketleri tek tek el ile değiştirmek zorunda kalmadan, mevcut paketleri çalıştırdığınızda özellikleri etkinleştirebilirsiniz ConnectByProxy/ExecuteOnProxy . İki seçenek vardır:

  • Seçenek A: Azure-SSIS IR'nizde çalıştırılacak en son SSDT ile bu paketleri içeren projeyi açın, yeniden derleyin ve yeniden dağıtın. Ardından SSMS'den paketleri çalıştırırken Paketi Yürüt açılır penceresinin Bağlantı Yöneticisi sekmesindegörüntülenen ilgili bağlantı yöneticileri için özelliği True olarak ayarlayarak etkinleştirebilirsinizConnectByProxy.

    Enable ConnectByProxy/ExecuteOnProxy property2

    Data Factory işlem hatlarında paketleri çalıştırırken SSIS Paketi Yürütme etkinliğinin Bağlantı Yöneticisi sekmesindegörüntülenen ilgili bağlantı yöneticileri için özelliğini True olarak ayarlayarak da etkinleştirebilirsinizConnectByProxy.

    Enable ConnectByProxy/ExecuteOnProxy property3

  • Seçenek B: Bu paketleri içeren projeyi SSIS IR'nizde çalışacak şekilde yeniden dağıtın. Daha sonra özellik yollarını/\Package\YourExecuteSQLTaskName.Properties[ExecuteOnProxy]\Package\YourExecuteProcessTaskName.Properties[ExecuteOnProxy]/\Package.Connections[YourConnectionManagerName].Properties[ConnectByProxy] sağlayarak ve SSMS'den paketleri çalıştırırken Paketi Yürüt açılır penceresinin Gelişmiş sekmesinde özellikleri geçersiz kılma olarak True olarak ayarlayarak özellikleri etkinleştirebilirsiniz.ConnectByProxy/ExecuteOnProxy

    Enable ConnectByProxy/ExecuteOnProxy property4

    Data Factory işlem hatlarında/\Package.Connections[YourConnectionManagerName].Properties[ConnectByProxy]\Package\YourExecuteSQLTaskName.Properties[ExecuteOnProxy]\Package\YourExecuteProcessTaskName.Properties[ExecuteOnProxy]/ paketleri çalıştırırken SSIS Paketini Yürüt etkinliğinin ExecuteOnProxy/ConnectByProxyÖzellik Geçersiz Kılmaları sekmesinde özellik yollarını sağlayarak ve bunları True olarak ayarlayarak da özellikleri etkinleştirebilirsiniz.

    Enable ConnectByProxy/ExecuteOnProxy property5

Şirket içi görevlerde ve bulut hazırlama görevlerinde hata ayıklama

Şirket içinde barındırılan IR'nizde, C:\ProgramData\SSISTelemetry klasöründe çalışma zamanı günlüklerini, şirket içi hazırlama görevlerinin yürütme günlüklerini ve C:\ProgramData\SSISTelemetry\ExecutionLog klasöründe sql/process görevlerini yürütebilirsiniz. Bulut hazırlama görevlerinin yürütme günlüklerini SSISDB'nizde, belirtilen günlük dosyası yollarında veya Azure İzleyici'de, paketlerinizi SSISDB'de depolayıp depolamadığınıza, Azure İzleyici tümleştirmesini etkinleştirip etkinleştirmediğinize bağlı olarak bulabilirsiniz. Şirket içi hazırlama görevlerinin benzersiz kimliklerini bulut hazırlama görevlerinin yürütme günlüklerinde de bulabilirsiniz.

Unique ID of the first staging task

Müşteri destek biletleri ayarladıysanız, araştırmamız için şirket içinde barındırılan IR'nize yüklenen Microsoft Integration Runtime Configuration Manager'ın Tanılama sekmesinde günlükleri gönder düğmesini seçerek son işlem/yürütme günlüklerini gönderebilirsiniz.

Şirket içi görevler ve bulut hazırlama görevleri için faturalama

Şirket içinde barındırılan IR'nizde çalışan şirket içi hazırlama görevleri ve Yürütme SQL/İşlem Görevleri, şirket içinde barındırılan IR üzerinde çalışan tüm veri taşıma etkinliklerinin faturalandırıldığından ayrı olarak faturalandırılır. Bu, Azure Data Factory veri işlem hattı fiyatlandırma makalesinde belirtilir.

Azure-SSIS IR'nizde çalışan bulut hazırlama görevleri ayrı olarak faturalandırılmaz, ancak çalışan Azure-SSIS IR'niz Azure-SSIS IR fiyatlandırma makalesinde belirtildiği şekilde faturalandırılır.

TLS 1.2’yi zorlama

Hazırlama için Azure Blob Depolama dahil olmak üzere yalnızca en güçlü şifreleme/en güvenli ağ protokollerini (TLS 1.2) kullanacak şekilde yapılandırılmış veri depolarına erişmeniz gerekiyorsa, şirket içinde barındırılan IR'nizde aynı anda yalnızca TLS 1.2'yi etkinleştirmeniz ve eski SSL/TLS sürümlerini devre dışı bırakmanız gerekir. Bunu yapmak için, genel önizleme blob kapsayıcımızın CustomSetupScript/UserScenarios/TLS 1.2 klasöründe sağladığımız main.cmd betiğini indirip çalıştırabilirsiniz. Azure Depolama Gezgini kullanarak aşağıdaki SAS URI'sini girerek genel önizleme blob kapsayıcımıza bağlanabilirsiniz:

https://ssisazurefileshare.blob.core.windows.net/publicpreview?sp=rl&st=2020-03-25T04:00:00Z&se=2025-03-25T04:00:00Z&sv=2019-02-02&sr=c&sig=WAD3DATezJjhBCO3ezrQ7TUZ8syEUxZZtGIhhP6Pt4I%3D

Geçerli sınırlamalar

  • Şu anda yalnızca Azure-SSIS IR Standard Sürümü yerleşik/önceden yüklenmiş veri akışı bileşenleri (Hadoop/HDFS/DQS bileşenleri hariç) desteklenmektedir. Azure-SSIS IR'deki tüm yerleşik/önceden yüklenmiş bileşenlere bakın.
  • Şu anda yalnızca yönetilen kodda (.NET Framework) yazılmış özel/3. taraf veri akışı bileşenleri desteklenmektedir. Yerel kodda (C++) yazılanlar şu anda desteklenmiyor.
  • Hem şirket içi hem de bulut hazırlama görevlerinde değişken değerlerinin değiştirilmesi şu anda desteklenmiyor.
  • Şirket içi hazırlama görevlerinde nesne türündeki değişken değerlerinin değiştirilmesi diğer görevlere yansıtılmayacaktır.
  • OLEDB Kaynağında ParameterMapping şu anda desteklenmiyor. Geçici bir çözüm olarak lütfen AccessMode olarak Değişkenden SQL Komutu'nı kullanın ve bir SQL komutuna değişkenlerinizi/parametrelerinizi eklemek için İfade'yi kullanın. Çizim olarak, genel önizleme blob kapsayıcımızın SelfHostedIRProxy/Limitations klasöründe bulunabilen ParameterMappingSample.dtsx paketine bakın. Azure Depolama Gezgini kullanarak yukarıdaki SAS URI'sini girerek genel önizleme blob kapsayıcımıza bağlanabilirsiniz.

Şirket içinde barındırılan IR'nizi Azure-SSIS IR'niz için ara sunucu olarak yapılandırdıktan sonra, verilere erişmek için paketlerinizi dağıtabilir ve çalıştırabilir veya şirket içinde Data Factory işlem hatlarında SSIS Paketi etkinlikleri yürüt olarak sql deyimlerini/işlemlerini çalıştırabilirsiniz. Nasıl yapılacağını öğrenmek için bkz . SSIS paketlerini Data Factory işlem hatlarında SSIS Paketi etkinliklerini yürütme olarak çalıştırma. Ayrıca bloglarımıza bakın: Azure Data Factory'de SSIS ile 3 Kolay Adımda Herhangi Bir SQL'i Her Yerde Çalıştırma ve Azure Data Factory'de SSIS ile 3 Kolay Adımda Herhangi Bir İşlemi Her Yerde Çalıştırma.