Configurazione di Integration Services in un cluster

In Integration Services il clustering non è consigliato poiché Integration Services non è un servizio cluster o compatibile con i cluster né supporta il failover tra nodi del cluster. In un ambiente cluster è pertanto necessario installare e avviare Integration Services come servizio autonomo in ogni nodo del cluster.

Nota importanteImportante

Microsoft non consiglia la configurazione del servizio Integration Services come risorsa cluster.

Sebbene il servizio Integration Services non sia un servizio cluster, è possibile configurarlo manualmente per il funzionamento come risorsa cluster dopo avere installato Integration Services separatamente in ogni nodo del cluster. In questo argomento vengono fornite informazioni per la configurazione del servizio come risorsa cluster per gli utenti che ritengono che i vantaggi di questa configurazione siano prevalenti rispetto agli svantaggi.

Se tuttavia la disponibilità elevata rappresenta l'obiettivo della configurazione di un ambiente hardware cluster, è consigliabile evitare di configurare il servizio Integration Services come risorsa cluster. Per gestire i pacchetti in qualsiasi nodo del cluster da qualsiasi altro nodo del cluster, modificare il file di configurazione per il servizio Integration Services in ogni nodo nel cluster. I file di configurazione devono essere modificati in modo da puntare a tutte le istanze disponibili di SQL Server in cui sono archiviati i pacchetti. Questa soluzione garantisce l'elevata disponibilità di cui necessita la maggior parte degli utenti, senza i problemi potenziali riscontrati quando il servizio Integration Services è configurato come risorsa cluster. Per ulteriori informazioni sulla modifica del file di configurazione, vedere Configurazione del servizio Integration Services (SSIS).

Informazioni sul ruolo del servizio Integration Services

Per prendere decisioni appropriate sulla configurazione del servizio Integration Services in un ambiente cluster, è importante comprendere il ruolo di tale servizio.

Il servizio Integration Services supporta l'interfaccia amministrativa di SQL Server Management Studio per elencare, avviare, arrestare, monitorare, importare ed esportare pacchetti di Integration Services. Il servizio Integration Services non è necessario per la progettazione di pacchetti. Il servizio Integration Services non è inoltre necessario per l'esecuzione di pacchetti o la pianificazione di processi di SQL Server Agent che eseguono pacchetti.

Di seguito sono elencate alcune attività che è possibile eseguire anche quando il servizio Integration Services non è in esecuzione:

  • Progettare ed eseguire pacchetti in Business Intelligence Development Studio.

  • Eseguire pacchetti utilizzando l'utilità della riga di comando dtexec (dtexec.exe), l'Utilità di esecuzione pacchetti (dtexecui.exe), SQL Server Agent o l'Importazione/Esportazione guidata SQL Server.

  • Elencare i pacchetti archiviati nel database msdb utilizzando una query Transact-SQL ed elencare i pacchetti archiviati nel file system utilizzando Esplora risorse.

  • Creare ed eseguire piani di manutenzione e processi di SQL Server Agent.

Informazioni sugli svantaggi della configurazione di Integration Services come risorsa cluster

Tra i potenziali svantaggi della configurazione del servizio Integration Services come risorsa cluster sono inclusi i seguenti:

  • In caso failover, i pacchetti in esecuzione non si riavviano. È possibile risolvere gli errori relativi ai pacchetti riavviando i pacchetti dai checkpoint. È possibile eseguire il riavvio dai checkpoint senza configurare il servizio come risorsa cluster. Per ulteriori informazioni, vedere Riavvio dei pacchetti non riusciti tramite checkpoint.

  • Quando si configura il servizio Integration Services in un gruppo di risorse diverso da SQL Server, non è possibile utilizzare Management Studio dai computer client per gestire i pacchetti archiviati nel database msdb. Tramite il servizio Integration Services non è possibile delegare le credenziali in questo scenario a doppio hop.

  • Quando sono presenti più gruppi di risorse SQL Server che includono il servizio Integration Services in un cluster, un failover potrebbe provocare risultati imprevisti. Si consideri lo scenario seguente. Il Gruppo 1, che include il servizio SQL Server e il servizio Integration Services, è in esecuzione nel Nodo A. Il Gruppo 2, che come il Gruppo 1 include il servizio SQL Server e il servizio Integration Services, è in esecuzione nel Nodo B. Si verifica il failover del Gruppo 2 nel Nodo A. Il tentativo di avviare un'altra istanza del servizio Integration Services nel Nodo A ha esito negativo in quanto il servizio Integration Services è un servizio a istanza singola. L'esito del tentativo di failover del servizio SQL Server nel Nodo A dipende dalla configurazione del servizio Integration Services nel Gruppo 2. Se il servizio Integration Services è stato configurato in modo da influire sugli altri servizi nel gruppo di risorse, il failover del servizio SQL Server ha esito negativo a causa dell'errore del servizio Integration Services. Se il servizio è stato configurato per non influire sugli altri servizi nel gruppo di risorse, verrà eseguito il failover del servizio SQL Server nel Nodo A. A meno che il servizio Integration Services nel Gruppo 2 non sia stato configurato in modo da non influire sugli altri servizi nel gruppo di risorse, l'errore di failover del servizio Integration Services potrebbe provocare anche un errore di failover del servizio SQL Server.

Configurazione del servizio Integration Services come risorsa cluster

In questa sezione vengono fornite le informazioni necessarie per la configurazione per gli utenti che ritengono che i vantaggi della configurazione del servizio Integration Services come risorsa cluster siano prevalenti rispetto agli svantaggi. Microsoft non consiglia tuttavia la configurazione del servizio Integration Services come risorsa cluster.

Per configurare il servizio Integration Services come risorsa cluster, eseguire la procedura seguente:

  • Installare Integration Services in un cluster.

  • Configurare Integration Services come risorsa cluster.

  • Configurare il servizio Integration Services e l'archivio pacchetti.

  • Portare il servizio Integration Services online come risorsa cluster.

Installazione di Integration Services in un cluster

Per installare Integration Services in un cluster, è necessario installare Integration Services in ogni nodo del cluster.

Per installare Integration Services in un cluster

  1. Installare e configurare un cluster con uno o più nodi.

  2. (Facoltativo) Installare i servizi del cluster, ad esempio il Motore di database di SQL Server.

  3. Installare Integration Services in ogni nodo del cluster.

Configurazione di Integration Services come risorsa cluster

Dopo avere installato Integration Services in ogni nodo nel cluster, è necessario configurarlo come risorsa cluster. Quando si configura il servizio Integration Services come risorsa cluster, è possibile aggiungere il servizio allo stesso gruppo di risorse del Motore di database di SQL Server o a un gruppo diverso. Nella tabella seguente vengono descritti i possibili vantaggi e svantaggi nella selezione di un gruppo di risorse.

Quando Integration Services e SQL Server sono nello stesso gruppo di risorse

Quando Integration Services e SQL Server sono in gruppi di risorse diversi

Nei computer client è possibile utilizzare SQL Server Management Studio per gestire i pacchetti archiviati nel database msdb in quanto sia il Motore di database di SQL Server sia il servizio Integration Services sono in esecuzione nello stesso server virtuale. Questa configurazione consente di evitare i problemi di delega dello scenario a doppio hop.

Nei computer client non è possibile utilizzare SQL Server Management Studio per gestire i pacchetti archiviati nel database msdb. Tramite il client è possibile stabilire una connessione al server virtuale in cui è in esecuzione il servizio Integration Services. Tramite tale computer non è possibile tuttavia delegare le credenziali dell'utente al server virtuale in cui è in esecuzione SQL Server. Questa situazione è nota come scenario a doppio hop.

Il servizio Integration Services e gli altri servizi SQL Server si contendono la CPU e altre risorse del computer.

Il servizio Integration Services e gli altri servizi SQL Server non si contendono la CPU e altre risorse del computer in quanto i diversi gruppi di risorse sono configurati in nodi diversi.

Il caricamento e il salvataggio di pacchetti nel database msdb sono più veloci e generano un minore traffico di rete in quanto entrambi i servizi sono in esecuzione nello stesso computer.

Il caricamento e il salvataggio di pacchetti nel database msdb potrebbero essere più lenti e generare un maggiore traffico di rete.

Entrambi i servizi sono online o offline contemporaneamente.

Il servizio Integration Services potrebbe essere online mentre il Motore di database di SQL Server è offline. Pertanto, i pacchetti archiviati nel database msdb del Motore di database di SQL Server non sono disponibili.

Non è possibile spostare rapidamente il servizio Integration Services in un altro nodo, se necessario.

È possibile spostare il servizio Integration Services in un altro nodo più rapidamente, se necessario.

Dopo avere deciso a quale gruppo di risorse aggiungere Integration Services, è necessario configurare Integration Services come risorsa cluster in tale gruppo.

Per configurare Integration Services come risorsa cluster

  1. Aprire Amministrazione cluster.

  2. Nell'albero della console selezionare la cartella Gruppi.

  3. Nel riquadro dei risultati selezionare il gruppo a cui si desidera aggiungere Integration Services:

    • Per aggiungere Integration Services come risorsa cluster allo stesso gruppo di risorse di SQL Server, selezionare il gruppo a cui appartiene SQL Server.

    • Per aggiungere Integration Services come risorsa cluster a un gruppo diverso rispetto a quello di SQL Server, selezionare un gruppo diverso da quello a cui appartiene SQL Server.

  4. Scegliere Nuovo dal menu File, quindi fare clic su Risorsa.

  5. Nella pagina Nuova risorsa della procedura guidata di creazione di una nuova risorsa selezionare "Servizio generico" come Tipo di servizio. Non modificare il valore di Gruppo. Fare clic su Avanti.

  6. Nella pagina Proprietari possibili aggiungere o rimuovere i nodi del cluster come possibili proprietari della risorsa. Fare clic su Avanti.

  7. Per aggiungere dipendenze, nella pagina Relazioni di dipendenza selezionare una risorsa in Risorse disponibili, quindi fare clic su Aggiungi. In caso di failover, è necessario che sia SQL Server che il disco condiviso in cui sono archiviati i pacchetti di Integration Services tornino online prima di poter riportare Integration Services online. Dopo avere selezionato le dipendenze, fare clic su Avanti.

  8. Nella pagina Parametri servizio generico digitare MsDtsServer100 come nome del servizio. Scegliere Avanti.

  9. Nella pagina Replica Registro di sistema fare clic su Aggiungi per aggiungere la chiave del Registro di sistema che identifica il percorso del file di configurazione per il servizio Integration Services. Tale file deve trovarsi in un disco condiviso nello stesso gruppo di risorse del servizio Integration Services.

  10. Nella finestra di dialogo Chiave del Registro di sistema digitare SOFTWARE\Microsoft\Microsoft SQL Server\100\SSIS\ServiceConfigFile. Scegliere OK, quindi Fine.

  11. A questo punto, il servizio Integration Services è stato aggiunto come risorsa cluster.

Configurazione del servizio Integration Services e dell'archivio pacchetti

Dopo aver configurato Integration Services come risorsa cluster, è necessario modificare il percorso e il contenuto del file di configurazione per il servizio Integration Services in ogni nodo del cluster. Queste modifiche consentono di rendere disponibili sia il file di configurazione che l'archivio pacchetti in tutti i nodi in caso di failover. Dopo aver modificato il percorso e il contenuto del file di configurazione, portare il servizio online.

Per configurare il servizio Integration Services e l'archivio pacchetti

  1. Individuare il file di configurazione in %Programmi%\Microsoft SQL Server\100\DTS\Binn\MsDtsSrvr.ini.xml. Copiarlo nel disco condiviso per il gruppo al quale è stato aggiunto il servizio Integration Services.

  2. Nel disco condiviso creare una nuova cartella denominata Pacchetti da utilizzare come archivio pacchetti. Concedere le autorizzazioni di visualizzazione delle cartelle e di scrittura per la nuova cartella agli utenti e ai gruppi appropriati.

  3. Nel disco condiviso aprire il file di configurazione in un editor di testo o XML. Modificare il valore dell'elemento ServerName impostando il nome del server SQL Server virtuale presente nello stesso gruppo di risorse.

  4. Modificare il valore dell'elemento StorePath impostando il percorso completo della cartella Pacchetti creata sul disco condiviso in uno dei passaggi precedenti.

  5. Aggiornare il valore di HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\SSIS\ServiceConfigFile nel Registro di sistema specificando il nome e il percorso completo del file di configurazione del servizio nel disco condiviso.

Per portare online il servizio Integration Services

  • In Amministrazione cluster selezionare il servizio Integration Services, fare clic con il pulsante destro del mouse e scegliere Online dal menu di scelta rapida. A questo punto, il servizio Integration Services è online come risorsa cluster.

Connessione a Integration Services in un cluster

Dopo aver configurato il servizio Integration Services in un cluster o in un server, potrebbe essere necessario configurare le autorizzazioni DCOM per potersi connettere al servizio da un computer client. Per ulteriori informazioni, vedere Connessione a un server remoto di Integration Services.

Tramite il servizio Integration Services non è possibile delegare le credenziali. Non è pertanto possibile utilizzare Management Studio per gestire i pacchetti archiviati nel database msdb quando si verificano le condizioni seguenti:

  • Il servizio Integration Services e SQL Server sono in esecuzione in server separati o in server virtuali.

  • Il client in cui è in esecuzione SQL Server Management Studio è un terzo computer.

Il client può connettersi al server virtuale in cui è in esecuzione il servizio Integration Services. Tale computer non può tuttavia delegare le credenziali dell'utente al server virtuale in cui è in esecuzione SQL Server. Questa situazione è nota come scenario a doppio hop.

Icona di Integration Services (piccola) Rimanere aggiornati con Integration Services

Per informazioni sui download, gli articoli, gli esempi e i video Microsoft più recenti, nonché sulle soluzioni selezionate dalla community, visitare la pagina Integration Services su MSDN:


Per ricevere notifiche automatiche su questi aggiornamenti, sottoscrivere i feed RSS disponibili nella pagina.