Saját üzemeltetésű integrációs modul konfigurálása proxyként egy Azure-SSIS integrációs modulhoz

A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics

Tipp.

Data Factory a Microsoft Fabric a Azure Data Factory következő generációja, egyszerűbb architektúrával, beépített AI-vel és új funkciókkal. Ha még nem ismerkedik az adatintegrációval, kezdje a Fabric Data Factoryvel. A meglévő ADF-munkaterhelések a Fabricra frissíthetők az adattudomány, a valós idejű elemzés és a jelentéskészítés új képességeinek eléréséhez.

Ez a cikk bemutatja, hogyan futtathat SQL Server Integration Services-csomagokat (SSIS csomagokat) az Azure-SSIS integrációs futtatókörnyezeten (Azure-SSIS IR) egy proxyként konfigurált saját üzemeltetésű integrációs futtatókörnyezettel (saját üzemeltetésű futtatókörnyezet).

Ezzel a funkcióval anélkül érheti el az adatokat és futtathatja a feladatokat a helyszínen, hogy az Azure-SSIS integrációs modult virtuális hálózathoz kellene csatlakoztatnia. Ez a funkció akkor hasznos, ha a vállalati hálózat konfigurációja túl összetett, vagy túl korlátozó szabályzattal rendelkezik ahhoz, hogy az Azure-SSIS integrációs modult injektálja abba.

Ez a funkció egyelőre csak az SSIS Adatfolyam Tevékenység és SQL/Folyamatfeladatok végrehajtása esetén engedélyezhető.

Az Adatfolyam tevékenységen engedélyezve, ez a funkció adott esetben két átmeneti tevékenységre bontja.

  • Helyszíni előkészítési feladat: Ez a feladat futtatja az adatfolyam-összetevőt, amely egy helyszíni adattárhoz csatlakozik a saját üzemeltetésű integrációs modulon. A helyszíni adattárból áthelyezi az adatokat az Azure Blob Storage átmeneti területére, vagy fordítva.
  • Felhőalapú előkészítési feladat: Ez a feladat futtatja az adatfolyam-összetevőt, amely nem csatlakozik egy helyszíni adattárhoz az Azure-SSIS integrációs modulon. Az Azure Blob Storage átmeneti területéről áthelyezi az adatokat egy felhőalapú adattárba, vagy fordítva.

Ha a Adatfolyam tevékenység adatokat helyez át a helyszínről a felhőbe, akkor az első és a második előkészítési tevékenység a helyszíni és a felhőbeli előkészítési tevékenységek lesznek. Ha a Adatfolyam tevékenység a felhőből a helyszínre helyezi át az adatokat, akkor az első és a második előkészítési tevékenység a felhő, illetve a helyszíni előkészítési tevékenységek lesznek. Ha a Adatfolyam tevékenység áthelyezi az adatokat a helyszínről a helyszínre, akkor az első és a második előkészítési tevékenység a helyszíni előkészítési tevékenységek lesznek. Ha a Adatfolyam feladat adatokat helyez át a felhőből a felhőbe, akkor ez a funkció nem alkalmazható.

Ez a funkció engedélyezve van az SQL/Process feladatok végrehajtásakor, és az önálló integrációs futtatókörnyezeten fogja végrehajtani őket.

A funkció egyéb előnyei és képességei lehetővé teszik például a saját üzemeltetésű integrációs modul beállítását olyan régiókban, amelyeket még nem támogat egy Azure-SSIS integrációs modul, és engedélyezheti a saját üzemeltetésű integrációs modul nyilvános statikus IP-címét az adatforrások tűzfalán.

A saját üzemeltetésű integrációs modul előkészítése

A funkció használatához először létre kell hoznia egy adat-előállítót, és be kell állítania benne egy Azure-SSIS integrációs modult. Ha még nem tette meg, kövesse az Azure-SSIS integrációs modul beállítása című témakör utasításait.

Ezután a saját üzemeltetésű integrációs modult ugyanabban az adat-előállítóban kell beállítania, amelyben az Azure-SSIS integrációs modul be van állítva. Ehhez lásd : Saját üzemeltetésű integrációs modul létrehozása.

Végül töltse le és telepítse a saját üzemeltetésű integrációs modul legújabb verzióját, valamint a további illesztőprogramokat és futtatókörnyezetet a helyszíni gépen vagy az Azure-beli virtuális gépen az alábbiak szerint:

  • Töltse le és telepítse a saját üzemeltetésű integrációs modul legújabb verzióját.

  • Engedélyezze az SSIS-csomagok végrehajtását a saját üzemeltetésű integrációs modul csomópontján, ha a saját üzemeltetésű IR verziója 5.28.0-s vagy újabb.

    Az ExecuteSsisPackage tulajdonság újonnan lett bevezetve az önálló gazda IR 5.28.0 verziójában. Az SSIS-csomagok végrehajtásának engedélyezéséhez vagy letiltásához használja az alábbi, saját üzemeltetésű integrációs modul parancssori műveletét:

    • -EnableExecuteSsisPackage Engedélyezze az SSIS-csomagok futtatását a saját üzemeltetésű IR csomóponton.

    • -DisableExecuteSsisPackage Tiltsa le az SSIS-csomagok végrehajtását a saját hosztolású integrációs csomóponton.

    • -GetExecuteSsisPackage

    A saját üzemeltetésű integrációs modul parancssori adatai a meglévő saját üzemeltetésű integrációs modul helyi PowerShell-lel történő beállítására vonatkoznak.

    Az újonnan telepített, 5.28.0 vagy annál újabb verziójú önállóan üzemeltetett integrációs szolgáltatás csomópontnál az ExecuteSsisPackage tulajdonság alapértelmezetten le van tiltva.

    Az 5.28.0-s vagy újabb verzióra frissített, saját üzemeltetésű integrációs modul meglévő csomópontja alapértelmezés szerint engedélyezve van az ExecuteSsisPackage tulajdonságban

  • Ha az Object Linking and Embedding Database (OLEDB), az Open Database Connectivity (ODBC) vagy az ADO.NET csatlakozókat használja a csomagokban, akkor töltse le és telepítse a megfelelő illesztőprogramokat arra a gépre, amelyen a saját üzemeltetésű integrációs modul található, ha ezt még nem tette meg.

    Ha az SQL Server OLEDB-illesztőprogramjának korábbi verzióját használja (SQL Server Native Client [SQLNCLI]), töltse le a 64 bites verziót.

    Ha az OLEDB-illesztő legújabb verzióját használja az SQL Serverhez (MSOLEDBSQL), töltse le a 64 bites verziót.

    Ha OLEDB/ODBC/ADO.NET illesztőprogramokat használ más adatbázisrendszerekhez, például PostgreSQL-hez, MySQL-hez, Oracle-hez stb., letöltheti a 64 bites verziókat a webhelyükről.

  • Ha az Azure Feature Pack adatfolyam-összetevőit használja a csomagokban, töltse le és telepítse az AZURE Feature Pack for SQL Server 2017-et ugyanazon a gépen, amelyen a saját üzemeltetésű integrációs modul telepítve van, ha még nem tette meg.

  • Ha még nem tette meg, töltse le és telepítse a Visual C++ (VC) futtatókörnyezet 64 bites verzióját ugyanazon a gépen, amelyen a saját üzemeltetésű integrációs modul telepítve van.

Windows-hitelesítés engedélyezése helyszíni feladatokhoz

Ha a helyszíni előkészítési feladatok és az SQL/Folyamatfeladatok végrehajtása a saját üzemeltetésű integrációs modulon Windows-hitelesítést igényelnek, akkor a Windows-hitelesítési funkciót is konfigurálnia kell az Azure-SSIS integrációs modulon.

A helyszíni előkészítési feladatok és az SQL/Process feladatok végrehajtása a saját üzemeltetésű IR szolgáltatásfiókkal (alapértelmezés szerint NT SERVICE\DIAHostService) lesz meghívva, és az adattárak a Windows hitelesítési fiókkal lesznek elérhetők. Mindkét fiókhoz bizonyos biztonsági szabályzatokat kell hozzárendelni. A saját üzemeltetésű integrációs modul gépén lépjen a Helyi biztonsági házirend>> elemre, majd tegye a következőket:

  1. Rendelje hozzá a folyamat memóriakvótáinak módosítása és a folyamatszintű jogkivonat lecserélése szabályzatokat a saját üzemeltetésű integrációs modul szolgáltatásfiókjához. Ez automatikusan megtörténik, amikor az alapértelmezett szolgáltatásfiókkal telepíti a saját üzemeltetésű integrációs modult. Ha nem, manuálisan rendelje hozzá ezeket a szabályzatokat. Ha másik szolgáltatásfiókot használ, rendelje hozzá ugyanazokat a szabályzatokat.

  2. Rendelje hozzá a Bejelentkezés szolgáltatásként házirendet a Windows-hitelesítési fiókhoz.

Azure Blob Storage társított szolgáltatás előkészítése átmeneti tárolásra

Ha még nem tette meg, hozzon létre egy Azure Blob Storage-társított szolgáltatást ugyanabban az adat-előállítóban, amelyben az Azure-SSIS integrációs modul be van állítva. Ehhez lásd : Azure Data Factory társított szolgáltatás létrehozása. Mindenképpen végezze el a következő lépéseket:

  • Adattár esetén válassza az Azure Blob Storage lehetőséget.
  • Az integrációs modulon keresztüli csatlakozáshoz válassza az AutoResolveIntegrationRuntime lehetőséget (nem a saját üzemeltetésű integrációs modult), így figyelmen kívül hagyhatjuk, és az Azure-SSIS integrációs modul használatával lekérhetjük az Azure Blob Storage hozzáférési hitelesítő adatait.
  • A hitelesítési módszerhez válassza a Fiókkulcs, SAS URI, szolgáltatásnév, felügyelt identitás vagy felhasználó által hozzárendelt felügyelt identitás lehetőséget.

Tipp.

Ha az adat-előállító példánya Git-kompatibilis, a kulcshitelesítés nélküli társított szolgáltatás nem lesz azonnal közzétéve, ami azt jelenti, hogy nem mentheti a szolgáltatáság társított szolgáltatásától függő integrációs modult. A fiókkulccsal vagy SAS URI-val történő hitelesítés azonnal közzéteszi a társított szolgáltatást.

Tipp.

Ha a Service Principal metódust választja, adjon legalább egy Storage Blob Data Contributor szerepkört a Service Principalnak. További információ: Azure Blob Storage-összekötő. Ha a Felügyelt Identitás/Felhasználó Által Hozzárendelt Felügyelt Identitás módszert választja, adjon az ADF számára megfelelő szerepkört a megadott rendszer vagy a felhasználó által hozzárendelt felügyelt identitásnak az Azure Blob Storage-hoz való hozzáféréshez. További információ: Az Azure Blob Storage elérése Microsoft Entra-hitelesítéssel az ADF megadott rendszer-/felhasználó által hozzárendelt felügyelt identitásával.

Az Azure Blob Storage-hoz társított szolgáltatás előkészítése előre

Azure-SSIS integrációs modul konfigurálása saját üzemeltetésű integrációs modullal proxyként

Miután előkészítette a saját üzemeltetésű integrációs modult és az Azure Blob Storage társított szolgáltatást az előkészítéshez, most már konfigurálhatja az új vagy meglévő Azure-SSIS IR-t a saját üzemeltetésű integrációs modullal proxyként a data factory portálon vagy alkalmazásban. Azelőtt azonban, hogy ezt megtenné, ha a meglévő Azure-SSIS Integrációs Futási Környezet már fut, leállíthatja, szerkesztheti, majd újraindíthatja.

  1. Az Integrációs modul beállítási paneljén ugorjon át az Általános beállítások és az Üzembehelyezési beállítások lapon a Folytatás gombra kattintva.

  2. A Speciális beállítások lapon tegye a következőket:

    1. Jelölje be a Saját üzemeltetésű integrációs futtatókörnyezet beállítása az Azure-SSIS integrációs futtatókörnyezet proxyjaként jelölőnégyzetet.

    2. A saját üzemeltetésű integrációs modul legördülő listájában válassza ki a meglévő saját üzemeltetésű integrációs modult proxyként az Azure-SSIS integrációs modulhoz.

    3. Az átmeneti tárhoz társított szolgáltatás legördülő listájában válassza ki a meglévő Azure Blob Storage társított szolgáltatást, vagy hozzon létre egy újat az előkészítéshez.

    4. Az Előkészítési útvonal mezőben adjon meg egy blobtárolót a kijelölt Azure Storage-fiókban, vagy hagyja üresen az alapértelmezett tárolót az előkészítéshez.

    5. Válassza a Folytatás gombot.

    Speciális beállítások saját üzemeltetésű integrációs modullal

Az új vagy meglévő Azure-SSIS integrációs modult a saját üzemeltetésű integrációs modullal proxyként is konfigurálhatja a PowerShell használatával.

$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

SSIS-csomagok engedélyezése proxy használatára

Ha a legújabb SSDT-t használja a Visual Studio SSIS-projektek bővítményeként vagy önálló telepítőként, új tulajdonságot találhat ConnectByProxy a kapcsolatkezelőkben a támogatott adatfolyam-összetevőkhöz és ExecuteOnProxy tulajdonsághoz az SQL/Folyamatfeladatok végrehajtása területen.

Ha olyan új csomagokat tervez, amelyek Adatfolyam feladatokat tartalmaznak olyan összetevőkkel, amelyek a helyszínen férnek hozzá az adatokhoz, engedélyezheti a ConnectByProxy tulajdonságot úgy, hogy igaz értékre állítja a megfelelő kapcsolatkezelők Tulajdonságok paneljén.

Ha új csomagokat tervez, amelyek a helyszínen futó Execute SQL/Folyamatfeladatokat tartalmaznak, akkor a ExecuteOnProxy tulajdonságot engedélyezheti, ha igaz értékre állítja a megfelelő feladatok tulajdonságok paneljén.

ConnectByProxy/ExecuteOnProxy tulajdonság engedélyezése

A tulajdonságokat ConnectByProxy/ExecuteOnProxy a meglévő csomagok futtatásakor is engedélyezheti anélkül, hogy egyenként manuálisan kellene módosítania őket. Két lehetőség kínálkozik:

  • A lehetőség: Nyissa meg, építse újra és telepítse újra a legújabb SSDT-vel rendelkező csomagokat tartalmazó projektet az Azure-SSIS IR-en való futtatáshoz. Ezt követően engedélyezheti a ConnectByProxy tulajdonságot, ha Igaz értékre állítja a megfelelő kapcsolatkezelők számára, amelyek az Kapcsolatkezelők lapján a Csomag végrehajtása előugró ablakban jelennek meg, amikor a csomagokat az SSMS-ből futtatja.

    ConnectByProxy/ExecuteOnProxy tulajdonság engedélyezése2

    A tulajdonságot úgy is engedélyezheti, ha "Igaz" értékre állítja a megfelelő kapcsolatkezelőknél, amelyek a Csatlakozáskezelők lapján jelennek meg az SSIS-csomag végrehajtási tevékenység során, amikor csomagokat futtat a Data Factory-folyamatokban.

    ConnectByProxy/ExecuteOnProxy tulajdonság engedélyezése3

  • B. lehetőség: Telepítse újra azokat a csomagokat tartalmazó projektet, amely az SSIS IR-en fut. Ezután engedélyezheti a ConnectByProxy/ExecuteOnProxy tulajdonságokat úgy, hogy megadja a tulajdonságok útvonalát: \Package.Connections[YourConnectionManagerName].Properties[ConnectByProxy]/\Package\YourExecuteSQLTaskName.Properties[ExecuteOnProxy]/\Package\YourExecuteProcessTaskName.Properties[ExecuteOnProxy], és igaz értékre állítva őket tulajdonság felülbírálásként a Speciális lapján a Csomag végrehajtása előugró ablaknak, amikor csomagokat futtat az SSMS-ből.

    ConnectByProxy/ExecuteOnProxy tulajdonság engedélyezése4

    A tulajdonságokat úgy is engedélyezheti, hogy megadja a ConnectByProxy/ExecuteOnProxy tulajdonságok útvonalait, \Package.Connections[YourConnectionManagerName].Properties[ConnectByProxy]/\Package\YourExecuteSQLTaskName.Properties[ExecuteOnProxy]/\Package\YourExecuteProcessTaskName.Properties[ExecuteOnProxy] és True értékre állítja őket tulajdonság-felülbírálásként az SSIS csomag végrehajtása tevékenységTulajdonság felülbírálások fülén, amikor csomagokat futtat a Data Factory folyamatokban.

    ConnectByProxy/ExecuteOnProxy tulajdonság engedélyezése5

A helyszíni és a felhőbeli előkészítési feladatok hibakeresése

A saját üzemeltetésű integrációs modulban megtalálja a futtatókörnyezeti naplókat a C:\ProgramData\SSISTelemetry mappában, valamint a helyszíni előkészítési feladatok végrehajtási naplóit, valamint az SQL/Process Tasks végrehajtását a C:\ProgramData\SSISTelemetry\ExecutionLog mappában. A felhőbeli előkészítési feladatok végrehajtási naplóit megtalálhatja az SSISDB-ben, a megadott naplózási fájlelérési utakon vagy az Azure Monitorban attól függően, hogy a csomagokat az SSISDB-ben tárolja, engedélyezi-e az Azure Monitor-integrációt stb. A helyszíni előkészítési feladatok egyedi azonosítóit a felhőbeli előkészítési feladatok végrehajtási naplóiban is megtalálhatja.

Az első előkészítési tevékenység egyedi azonosítója

Ha ügyfélszolgálati jegyeket nyitott, válassza a Naplók küldése gombot a Diagnosztika lapon a Microsoft Integration Runtime Konfigurációkezelő programban, amely az önkiszolgáló IR-re van telepítve, hogy elküldhesse a legutóbbi műveleti vagy végrehajtási naplókat vizsgálatra.

A helyszíni és a felhőbeli előkészítési feladatok számlázása

A helyszíni előkészítési feladatok és a saját üzemeltetésű integrációs modulon futó SQL/Process Feladatok végrehajtása külön számlázva lesznek, ugyanúgy, mint a saját üzemeltetésű integrációs modulon futó adatáthelyezési tevékenységek. Ezt az Azure Data Factory-adatfolyamat díjszabási cikkében találja.

Az Azure-SSIS IR-en futó felhő-előkészítő feladatok számlázása nem történik külön, de a futó Azure-SSIS IR számlázása az Azure-SSIS IR díjszabásáról szóló cikkben meghatározottak szerint történik.

A TLS 1.2 kényszerítése

Ha olyan adattárakhoz kell hozzáférnie, amelyek úgy lettek konfigurálva, hogy csak a legerősebb titkosítási/legbiztonságosabb hálózati protokollt (TLS 1.2) használják, beleértve az Azure Blob Storage-t is az előkészítéshez, csak a TLS 1.2-t kell engedélyeznie, és egyidejűleg le kell tiltania a régebbi SSL/TLS-verziókat a saját üzemeltetésű integrációs modulon. Ehhez letöltheti és futtathatja a main.cmd szkriptet https://github.com/Azure/Azure-DataFactory/tree/main/SamplesV2/SQLServerIntegrationServices/publicpreview/CustomSetupScript/UserScenarios/TLS%201.2.

Jelenlegi korlátozások

  • Jelenleg csak az Azure-SSIS IR-Standard kiadás beépített/előre telepített adatfolyam-összetevők támogatottak, kivéve a Hadoop/HDFS/DQS összetevőket, lásd az Összes beépített/előre telepített összetevőt az Azure-SSIS IR-ben.
  • Jelenleg csak a felügyelt kódban (.NET-keretrendszer) írt egyéni/harmadik féltől származó adatfolyam-összetevők támogatottak – A natív kódban (C++) írt összetevők jelenleg nem támogatottak.
  • A helyszíni és a felhőbeli előkészítési feladatok változóértékeinek módosítása jelenleg nem támogatott.
  • A helyszíni előkészítési tevékenységekben a típusobjektum változó értékeinek módosítása más tevékenységekben nem fog tükröződni.
  • A ParameterMapping az OLEDB-forrásban jelenleg nem támogatott. Áthidaló megoldásként használja az SQL Command From Variablet AccessMode-ként, és a Kifejezés használatával szúrja be a változókat/paramétereket egy SQL-parancsba. Illusztrációként tekintse meg a ParameterMappingSample.dtsx csomagot, amely a nyilvános előzetes verziójú blobtároló SelfHostedIRProxy/Limitations mappájában található. Az Azure Storage Explorerrel a fenti SAS URI beírásával csatlakozhat a nyilvános előzetes verziójú blobtárolóhoz.

Miután önállóan üzemeltetett IR-ét proxyként konfigurálta az Azure-SSIS IR-hez, telepítheti és futtathatja a csomagokat, hogy hozzáférjen az adatokhoz, vagy bármilyen SQL-utasítást, folyamatot futtathasson a helyszínen az SSIS csomag tevékenységek végrehajtásaként a Data Factory folyamatokban. A megtanulásához lásd SSIS-csomagok futtatása SSIS-csomag tevékenységek végrehajtásaként Data Factory-folyamatokban. Lásd még a blogjainkat: Futtasson bármilyen SQL Anywhere 3 egyszerű lépésben SSIS segítségével az Azure Data Factory-ben és Futtasson bármilyen folyamatot bárhol 3 egyszerű lépésben SSIS segítségével az Azure Data Factory-ben című cikket.