Delen via


Betaalde of gelicentieerde aangepaste onderdelen installeren voor Azure-SSIS Integration Runtime

VAN TOEPASSING OP: Azure Data Factory Azure Synapse Analytics> [! TIP] > Probeer Data Factory uit in Microsoft Fabric, een alles-in-één analyseoplossing voor ondernemingen. Microsoft Fabric omvat alles, van gegevensverplaatsing tot gegevenswetenschap, realtime analyses, business intelligence en rapportage. Meer informatie over het gratis starten van een nieuwe proefversie !]

In dit artikel wordt beschreven hoe een ISV betaalde of gelicentieerde aangepaste onderdelen kan ontwikkelen en installeren voor SSIS-pakketten (SQL Server Integration Services) die worden uitgevoerd in Azure in de Azure-SSIS Integration Runtime en proxy met zelf-hostende Integration Runtime.

Betaalde of gelicentieerde aangepaste onderdelen installeren voor Azure-SSIS Integration Runtime

Het probleem

De aard van de Azure-SSIS Integration Runtime brengt verschillende uitdagingen met zich mee, waardoor de typische licentiemethoden die worden gebruikt voor de on-premises installatie van aangepaste onderdelen ontoereikend zijn. Als gevolg hiervan vereist de Azure-SSIS IR een andere benadering.

  • De knooppunten van de Azure-SSIS IR zijn vluchtig en kunnen op elk gewenst moment worden toegewezen of vrijgegeven. U kunt bijvoorbeeld knooppunten starten of stoppen om de kosten te beheren, of omhoog en omlaag schalen via verschillende knooppuntgrootten. Als gevolg hiervan is het binden van een licentie van een onderdeel van derden aan een bepaald knooppunt met behulp van computerspecifieke informatie, zoals MAC-adres of CPU-id, niet langer haalbaar.

  • U kunt de Azure-SSIS IR ook in- of uitschalen, zodat het aantal knooppunten op elk gewenst moment kan worden verkleind of uitgebreid.

De oplossing

Als gevolg van de beperkingen van traditionele licentiemethoden die in de vorige sectie worden beschreven, biedt de Azure-SSIS IR een nieuwe oplossing. Deze oplossing maakt gebruik van Windows-omgevingsvariabelen en SSIS-systeemvariabelen voor de licentiebinding en validatie van onderdelen van derden. ISV's kunnen deze variabelen gebruiken om unieke en permanente informatie te verkrijgen voor een Azure-SSIS IR, zoals cluster-id en aantal clusterknooppunten. Met deze informatie kunnen ISV's vervolgens de licentie voor hun onderdeel als cluster binden aan een Azure-SSIS IR. Deze binding maakt gebruik van een id die niet verandert wanneer klanten de Azure-SSIS IR op welke manier dan ook starten of stoppen, omhoog of omlaag schalen, in- of uitschalen of opnieuw configureren.

In het volgende diagram ziet u de gebruikelijke installatie-, activerings- en licentiebindingen en validatiestromen voor onderdelen van derden die gebruikmaken van deze nieuwe variabelen:

Installatie van gelicentieerde onderdelen

Instructies

  1. ISV's kunnen hun gelicentieerde onderdelen aanbieden in verschillende SKU's of lagen (bijvoorbeeld één knooppunt, maximaal 5 knooppunten, maximaal 10 knooppunten, enzovoort). De ISV levert de bijbehorende productcode wanneer klanten een product kopen. De ISV kan ook een Azure Storage-blobcontainer bieden die een ISV-installatiescript en bijbehorende bestanden bevat. Klanten kunnen deze bestanden kopiëren naar hun eigen opslagcontainer en deze wijzigen met hun eigen productcode (bijvoorbeeld door uit te voeren IsvSetup.exe -pid xxxx-xxxx-xxxx). Klanten kunnen vervolgens de Azure-SSIS IR inrichten of opnieuw configureren met de SAS-URI van hun container als parameter. Zie Aangepaste instelling voor de Azure-SSIS-integratieruntime voor meer informatie.

  2. Wanneer de Azure-SSIS IR is ingericht of opnieuw is geconfigureerd, wordt ISV Setup uitgevoerd op elk knooppunt om een query uit te voeren op de Windows-omgevingsvariabelen en SSIS_CLUSTERID SSIS_CLUSTERNODECOUNT. Vervolgens verzendt de Azure-SSIS IR de cluster-id en de productcode voor het gelicentieerde product naar de ISV-activeringsserver om een activeringssleutel te genereren.

  3. Na ontvangst van de activeringssleutel kan de ISV-installatie de sleutel lokaal opslaan op elk knooppunt (bijvoorbeeld in het register).

  4. Wanneer klanten een pakket uitvoeren dat gebruikmaakt van het gelicentieerde onderdeel van de ISV op een knooppunt van de Azure-SSIS IR, leest het pakket de lokaal opgeslagen activeringssleutel en valideert het op basis van de cluster-id van het knooppunt. Het pakket kan eventueel ook het aantal clusterknooppunten rapporteren aan de ISV-activeringsserver.

    Hier volgt een voorbeeld van code waarmee de activeringssleutel wordt gevalideerd en het aantal clusterknooppunten wordt gerapporteerd:

    public override DTSExecResult Validate(Connections, VariableDispenser, IDTSComponentEvents componentEvents, IDTSLogging log) 
    
    {                                                                                                                             
    
    Variables vars = null;                                                                                                        
    
    variableDispenser.LockForRead("System::ClusterID");                                                                           
    
    variableDispenser.LockForRead("System::ClusterNodeCount");                                                                    
    
    variableDispenser.GetVariables(ref vars);                                                                                     
    
    // Validate Activation Key with ClusterID                                                                                     
    
    // Report on ClusterNodeCount                                                                                                 
    
    vars.Unlock();                                                                                                                
    
    return base.Validate(connections, variableDispenser, componentEvents, log);                                                   
    
    }
    

Aangepaste/externe gegevensstroomonderdelen inschakelen met behulp van zelf-hostende IR als proxy

Volg deze instructies om uw aangepaste/externe gegevensstroomonderdelen toegang te geven tot gegevens on-premises met behulp van zelf-hostende IR als proxy voor Azure-SSIS IR:

  1. Installeer uw aangepaste/externe gegevensstroomonderdelen die gericht zijn op SQL Server 2017 op Azure-SSIS IR via aangepaste standaard-/express-instellingen.

  2. Maak de volgende DTSPath-registersleutels op zelf-hostende IR als deze nog niet bestaan:

    1. Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\140\SSIS\Setup\DTSPath ingesteld op C:\Program Files\Microsoft SQL Server\140\DTS\
    2. Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Microsoft SQL Server\140\SSIS\Setup\DTSPath ingesteld op C:\Program Files (x86)\Microsoft SQL Server\140\DTS\
  3. Installeer uw aangepaste/externe gegevensstroomonderdelen die gericht zijn op SQL Server 2017 op zelf-hostende IR onder het DTSPath hierboven en zorg ervoor dat uw installatieproces:

    1. Hiermee maakt <DTSPath>u mappen <DTSPath>/Connections<DTSPath>/PipelineComponentsen <DTSPath>/UpgradeMappings mappen als deze nog niet bestaan.

    2. Hiermee maakt u uw eigen XML-bestand voor extensietoewijzingen in <DTSPath>/UpgradeMappings de map.

    3. Installeert alle assembly's waarnaar wordt verwezen door uw aangepaste/externe gegevensstroomonderdeelassembly's in de algemene assemblycache (GAC).

Hier volgt een voorbeeld van onze partner, Aecorsoft, die hun gegevensstroomonderdelen heeft aangepast om onze express aangepaste installatie en zelf-hostende IR te gebruiken als proxy voor Azure-SSIS IR.

ISV-partners

U vindt een lijst met ISV-partners die hun onderdelen en extensies hebben aangepast voor de Azure-SSIS IR aan het einde van dit blogbericht : Enterprise Edition, Custom Setup en 3rd Party Extensibility for SSIS in ADF.