Usare Istanza gestita di SQL di Azure con SQL Server Integration Services (SSIS) in Azure Data Factory o Azure Synapse Analytics

SI APPLICA A: Azure Data Factory Azure Synapse Analytics

Suggerimento

Provare Data Factory in Microsoft Fabric, una soluzione di analisi completa per le aziende. Microsoft Fabric copre tutti gli elementi, dallo spostamento dei dati all'analisi scientifica dei dati, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Scopri come avviare gratuitamente una nuova versione di valutazione .

È ora possibile spostare progetti, pacchetti e carichi di lavoro di SQL Server Integration Services (SSIS) nel cloud di Azure. Distribuire, eseguire e gestire progetti e pacchetti SSIS in database SQL di Azure o Istanza gestita di SQL con strumenti familiari, ad esempio SQL Server Management Studio (SSMS). Questo articolo illustra le aree specifiche seguenti quando si usa Istanza gestita di SQL di Azure con azure-SSIS Integration Runtime (IR):

Effettuare il provisioning di Azure-SSIS IR con SSISDB ospitato da Istanza gestita di SQL di Azure

Prerequisiti

  1. Abilitare Microsoft Entra ID in Istanza gestita di SQL di Azure, quando si sceglie l'autenticazione di Microsoft Entra.

  2. Scegliere come connettersi Istanza gestita di SQL, tramite endpoint privato o tramite endpoint pubblico:

    • Tramite endpoint privato (scelta consigliata)

      1. Scegliere la rete virtuale a cui aggiungere Azure-SSIS IR:

        • All'interno della stessa rete virtuale dell'istanza gestita, con subnet diversa.
        • All'interno di una rete virtuale diversa rispetto all'istanza gestita, tramite il peering di rete virtuale (limitato alla stessa area a causa di vincoli di peering reti virtuali globali) o una connessione dalla rete virtuale alla rete virtuale.

        Per altre informazioni sulla connettività Istanza gestita di SQL, vedi Connessione'applicazione per Istanza gestita di SQL di Azure.

      2. Configurare la rete virtuale.

    • Tramite endpoint pubblico

      Istanza gestita di SQL di Azure possono fornire connettività su endpoint pubblici. I requisiti in ingresso e in uscita devono soddisfare per consentire il traffico tra Istanza gestita di SQL e Azure-SSIS IR:

      • Azure-SSIS IR non all'interno di una rete virtuale (scelta consigliata)

        Requisito in ingresso di Istanza gestita di SQL, per consentire il traffico in ingresso da Azure-SSIS IR.

        Protocollo di trasporto Origine Intervallo di porte di origine Destinazione Intervallo di porte di destinazione
        TCP Tag del servizio cloud di Azure * VirtualNetwork 3342

        Per altre informazioni, vedere Consentire il traffico dell'endpoint pubblico nel gruppo di sicurezza di rete.

      • Azure-SSIS IR all'interno di una rete virtuale

        Esiste uno scenario speciale quando Istanza gestita di SQL si trova in un'area che azure-SSIS IR non supporta, Azure-SSIS IR si trova all'interno di una rete virtuale senza peering reti virtuali a causa della limitazione del peering reti virtuali globali. In questo scenario, il runtime di integrazione Azure-SSIS all'interno di una rete virtuale si connette Istanza gestita di SQL tramite endpoint pubblico. Usare le regole del gruppo di sicurezza di rete seguenti per consentire il traffico tra Istanza gestita di SQL e Azure-SSIS IR:

        1. Requisito in ingresso di Istanza gestita di SQL, per consentire il traffico in ingresso da Azure-SSIS IR.

          Protocollo di trasporto Origine Intervallo di porte di origine Destinazione Intervallo di porte di destinazione
          TCP Indirizzo IP statico di Azure-SSIS IR
          Per informazioni dettagliate, vedere Usare un indirizzo IP pubblico personalizzato per Azure-SSIS IR.
          * VirtualNetwork 3342
        2. Requisito in uscita di Azure-SSIS IR, per consentire il traffico in uscita a Istanza gestita di SQL.

          Protocollo di trasporto Origine Intervallo di porte di origine Destinazione Intervallo di porte di destinazione
          TCP VirtualNetwork * Istanza gestita di SQL indirizzo IP dell'endpoint pubblico 3342

Configurare la rete virtuale

  1. Autorizzazione utente. Per l'utente che crea l'istanza di Azure-SSIS IR è necessaria un'assegnazione di ruolo almeno nella risorsa Azure Data Factory, con una delle opzioni descritte di seguito.

    • Usare il ruolo predefinito Collaboratore Rete. Questo ruolo include l'autorizzazione Microsoft.Network/* che ha un ambito molto più ampio del necessario.
    • Creare un ruolo personalizzato che includa solo l'autorizzazione Microsoft.Network/virtualNetworks/*/join/action necessaria. Se si vogliono usare indirizzi IP pubblici personalizzati per Azure-SSIS IR, quando viene aggiunto a una rete virtuale di Azure Resource Manager, includere nel ruolo anche l'autorizzazione Microsoft.Network/publicIPAddresses/*/join/action.
  2. Rete virtuale.

    1. Verificare che il gruppo di risorse della rete virtuale possa creare ed eliminare determinate risorse di rete di Azure.

      Il runtime di integrazione Azure-SSIS deve creare alcune risorse di rete nello stesso gruppo di risorse della rete virtuale. Tali risorse includono:

      • Un servizio di bilanciamento del carico di Azure, con il nome <Guid-azurebatch-cloudserviceloadbalancer>
      • Un gruppo di sicurezza di rete, con il nome *<Guid-azurebatch-cloudservicenetworksecuritygroup>
      • Un indirizzo IP pubblico di Azure denominato -azurebatch-cloudservicepublicip

      Queste risorse verranno create all'avvio di Azure-SSIS IR e verranno eliminate all'arresto di Azure-SSIS IR. Per evitare di impedire l'arresto di Azure-SSIS IR, non riusare queste risorse di rete in altre risorse.

    2. Verificare che non sia presente alcun blocco delle risorse per il gruppo di risorse o la sottoscrizione a cui appartiene la rete virtuale. Se si configura un blocco di sola lettura/eliminazione, l'avvio e l'arresto di Azure-SSIS IR avranno esito negativo o si bloccheranno.

    3. Assicurarsi di non avere una definizione di Criteri di Azure che impedisca la creazione delle risorse seguenti nel gruppo di risorse o nella sottoscrizione a cui appartiene la rete virtuale:

      • Microsoft.Network/LoadBalancers
      • Microsoft.Network/NetworkSecurityGroups
    4. Consentire il traffico nella regola del gruppo di sicurezza di rete (NSG), per consentire il traffico tra Istanza gestita di SQL e Azure-SSIS IR e il traffico necessario per Azure-SSIS IR.

      1. Requisito in ingresso di Istanza gestita di SQL, per consentire il traffico in ingresso da Azure-SSIS IR.

        Protocollo di trasporto Origine Intervallo di porte di origine Destinazione Intervallo di porte di destinazione Commenti
        TCP VirtualNetwork * VirtualNetwork 1433, 11000-11999 Se il criterio di connessione del server di database SQL è impostato su Proxy anziché su Reindirizzamento, è necessaria solo la porta 1433.
      2. Requisito in uscita di Azure-SSIS IR, per consentire il traffico in uscita verso Istanza gestita di SQL e altro traffico necessario per Azure-SSIS IR.

        Protocollo di trasporto Origine Intervallo di porte di origine Destinazione Intervallo di porte di destinazione Commenti
        TCP VirtualNetwork * VirtualNetwork 1433, 11000-11999 Consentire il traffico in uscita per Istanza gestita di SQL. Se il criterio di connessione è impostato su Proxy anziché su Reindirizzamento, è necessaria solo la porta 1433.
        TCP VirtualNetwork * AzureCloud 443 I nodi di Azure-SSIS IR nella rete virtuale usano questa porta per accedere ai servizi di Azure, ad esempio Archiviazione di Azure e Hub eventi di Azure.
        TCP VirtualNetwork * Internet 80 (Facoltativo) I nodi di Azure-SSIS IR nella rete virtuale usano questa porta per scaricare un elenco di revoche di certificati da Internet. Se si blocca questo traffico, si potrebbe verificare un downgrade delle prestazioni all'avvio del runtime di integrazione e si potrebbe perdere la possibilità di controllare l'elenco di revoche per l'utilizzo dei certificati. Se si vuole restringere ulteriormente la destinazione a determinati nomi di dominio completi, vedere Configurare route definite dall'utente.If you want to further narrow down destination to certain FQDN, refer to Configure User Defined Routes (UDR).
        TCP VirtualNetwork * Storage 445 (Facoltativo) Questa regola è necessaria solo quando si vuole eseguire un pacchetto SSIS archiviato in File di Azure.
      3. Requisito in ingresso di Azure-SSIS IR, per consentire il traffico necessario per Azure-SSIS IR:

        Protocollo di trasporto Origine Intervallo di porte di origine Destinazione Intervallo di porte di destinazione Commenti
        TCP BatchNodeManagement * VirtualNetwork 29876, 29877 (se si aggiunge il runtime di integrazione a una rete virtuale di Resource Manager)

        10100, 20100, 30100 (se si aggiunge il runtime di integrazione a una rete virtuale classica)
        Il servizio Data Factory usa queste porte per comunicare con i nodi di Azure-SSIS IR nella rete virtuale.

        Sia che si crei o meno un gruppo di sicurezza di rete a livello di subnet, Data Factory configura sempre un gruppo di sicurezza di rete al livello delle schede di interfaccia di rete collegate alle macchine virtuali che ospitano Azure-SSIS IR. Il gruppo di sicurezza di rete a livello di scheda di interfaccia di rete consente solo il traffico in entrata dagli indirizzi IP di Data Factory nelle porte specificate. Anche se si aprono queste porte al traffico Internet a livello di subnet, il traffico proveniente da indirizzi IP diversi dagli indirizzi IP di Data Factory viene bloccato a livello di scheda di interfaccia di rete.
        TCP CorpNetSaw * VirtualNetwork 3389 (Facoltativo) Questa regola è necessaria solo quando il supporto tecnico Microsoft richiede al cliente l'apertura per la risoluzione dei problemi avanzata. È possibile chiudere subito dopo la risoluzione dei problemi. Il tag di servizio CorpNetSaw consente l'uso del desktop remoto solo alle workstation con accesso sicuro nella rete aziendale Microsoft. Questo tag di servizio non può essere selezionato dal portale ed è disponibile solo tramite Azure PowerShell o l'interfaccia della riga di comando di Azure.

        La porta 3389 è aperta per impostazione predefinita nel gruppo di sicurezza di rete a livello di scheda di interfaccia di rete e Microsoft consente di controllare tale porta nel gruppo di sicurezza di rete a livello di subnet. Nel frattempo, per impostazione predefinita, la porta 3389 in uscita è stata disabilitata a scopo di protezione da Azure-SSIS IR nella regola di Windows Firewall per ogni nodo del runtime di integrazione.
    5. Per altre informazioni, vedere Configurazione della rete virtuale:

      • Se si usano indirizzi IP pubblici personalizzati per Azure-SSIS IR
      • Se si usa un server DNS (Domain Name System) personalizzato
      • Se si usa Azure ExpressRoute o una route definita dall'utente
      • Se si usa un'istanza personalizzata di Azure-SSIS IR

Effettuare il provisioning di Azure-SSIS Integration Runtime

  1. Selezionare Istanza gestita di SQL endpoint privato o endpoint pubblico.

    Quando si esegue il provisioning di Azure-SSIS IR nell'app portale di Azure/ADF, nella pagina SQL Impostazioni usare Istanza gestita di SQL endpoint privato o endpoint pubblico durante la creazione del catalogo SSIS (SSISDB).

    Il nome host dell'endpoint pubblico viene fornito nel formato <mi_name.public>.<>dns_zone.database.windows.net e che la porta usata per la connessione è 3342.

    Screenshot shows Integration runtime setup with Create S S I S catalog selected and Catalog database server endpoint entered.

  2. Selezionare Autenticazione Di Microsoft Entra quando si applica.

    catalog-public-endpoint

    Per altre info su come abilitare l'autenticazione di Microsoft Entra, vedere Abilitare l'ID Di Microsoft Entra in Istanza gestita di SQL di Azure.

  3. Aggiungere Azure-SSIS IR alla rete virtuale, quando applicabile.

    Nella pagina Impostazioni avanzate selezionare la rete virtuale e la subnet a cui eseguire l'aggiunta.

    Quando si trova all'interno della stessa rete virtuale di Istanza gestita di SQL, scegliere una subnet diversa da Istanza gestita di SQL.

    Per altre informazioni su come aggiungere Azure-SSIS IR a una rete virtuale, vedere Aggiungere Azure-SSIS Integration Runtime a una rete virtuale.

    Screenshot shows the Integration runtime setup Advanced settings, where you can select a virtual network for your runtime to join.

Per altre informazioni su come creare Azure-SSIS IR, vedere Creare un runtime di integrazione SSIS di Azure in Azure Data Factory.

Eseguire la pulizia dei log di SSISDB

I criteri di conservazione dei log di SSISDB sono definiti dalle proprietà seguenti in catalog.catalog_properties:

  • OPERATION_CLEANUP_ENABLED

    Se il valore è TRUE, i dettagli e i messaggi delle operazioni anteriori a RETENTION_WINDOW (giorni) vengono eliminati dal catalogo. Se il valore è FALSE, tutti i dettagli e i messaggi delle operazioni vengono archiviati nel catalogo. Nota: la pulizia delle operazioni viene eseguita da un processo di SQL Server.

  • RETENTION_WINDOW

    Numero di giorni di archiviazione nel catalogo dei dettagli e dei messaggi dell'operazione. Quando il valore è -1, il periodo di conservazione è infinito. Nota: se non si vuole effettuare la pulizia, impostare OPERATION_CLEANUP_ENABLED su FALSE.

Per rimuovere i log di SSISDB non inclusi nel periodo di conservazione impostato dall'amministratore, è possibile attivare la stored procedure [internal].[cleanup_server_retention_window_exclusive]. Facoltativamente, è possibile pianificare Istanza gestita di SQL'esecuzione del processo dell'agente per attivare la stored procedure.