Configurare la disponibilità tramite il mirroring dei database di SQL Server (SharePoint Server 2010)

 

Si applica a: SharePoint Foundation 2010, SharePoint Server 2010

Ultima modifica dell'argomento: 2016-11-30

In questo articolo viene descritto come utilizzare il mirroring dei database a disponibilità elevata per configurare la disponibilità in una farm di Microsoft SharePoint Server 2010. Nell'articolo si presuppone la familiarità con i concetti e i termini presentati in Pianificare la disponibilità (SharePoint Server 2010).

Il mirroring dei database di Microsoft SQL Server garantisce il supporto della disponibilità mediante l'invio diretto di transazioni da un database e un server principali a un database e a un server mirror ogni volta che il buffer del registro delle transazioni del database principale viene scritto su disco. Per la disponibilità in una farm di Microsoft SharePoint Server 2010, è consigliabile utilizzare il mirroring dei database a disponibilità elevata, o modalità di protezione elevata con failover automatico, che prevede tre istanze di server, ovvero un server principale, un server mirror e un server di controllo. Quest'ultimo consente a SQL Server di eseguire automaticamente il failover dal server principale al server mirror, operazione che solitamente richiede alcuni secondi.

In una farm di SharePoint Server 2010 il mirroring può garantire la ridondanza per i database del contenuto e di configurazione e per molti database di servizio. Anche se per i propri database il mirroring viene eseguito nello stesso server, il failover ha luogo singolarmente per ogni database. Nella figura seguente viene illustrato come configurare il mirroring per garantire la disponibilità in una farm di SharePoint Server 2010.

Diagramma del mirroring di tutti i database in una farm

SharePoint Server 2010 riconosce il mirroring. Per utilizzare il mirroring nel proprio ambiente, innanzitutto configurare il mirroring e quindi impostare il valore del database di failover in SharePoint Server.

Contenuto dell'articolo:

Prima di iniziare a configurare il mirroring, verificare che l'amministratore di database conosca i requisiti e le topologie supportate seguenti.

Acquisire familiarità con le informazioni riportate di seguito e verificare che i database e il sistema in uso soddisfino i requisiti previsti prima di configurare il mirroring dei database per un ambiente SharePoint Server:

  • È consigliabile impostare per il sistema una latenza non superiore a 1 millisecondo.

  • È preferibile che la larghezza di banda del sistema sia impostata su 1 gigabyte al secondo.

  • I registri vengono copiati in tempo reale tra il server principale e il server mirror e l'operazione di copia può incidere sulle prestazioni. Verificare di disporre di memoria e larghezza di banda sufficienti sia nel server principale che nel server mirror.

  • Il server principale e il server mirror devono eseguire la stessa versione ed edizione di SQL Server e devono utilizzare la stessa lingua. Il mirroring dei database è disponibile solo nelle edizioni Standard, Developer ed Enterprise. Il server di controllo invece può eseguire qualsiasi versione di SQL Server, incluso SQL Server 2008 Express.

  • Il mirroring funziona solo con i database che utilizzano il modello di recupero con registrazione completa.

    Per impostazione predefinita, i database di SharePoint Server 2010 sono configurati per l'utilizzo del modello di recupero con registrazione minima. Per configurare il mirroring dei database, il modello di recupero del database deve essere impostato per la registrazione completa. Per informazioni su come impostare il modello di recupero per un database, vedere Procedura: Visualizzazione o modifica del modello di recupero di un database (SQL Server Management Studio) (http://go.microsoft.com/fwlink/?linkid=132075&clcid=0x410).

  • Se si prevede di eseguire il mirroring dei database, considerare che i registri delle transazioni di questi database possono raggiungere dimensioni molto elevate. Per ovviare al problema, è possibile definire un piano di recupero che tronchi i registri delle transazioni a seconda delle esigenze. Per ulteriori informazioni, vedere l'articolo seguente nella Microsoft Knowledge Base: Arresto della crescita imprevista del registro delle transazioni di un database SQL Server (http://go.microsoft.com/fwlink/?linkid=111458&clcid=0x410).

  • Ogni sessione di mirroring dei database crea almeno due thread per ogni database. Verificare che il server di database disponga di thread sufficienti da allocare per il mirroring di tutti i database supportati. Se non si dispone di thread sufficienti, man mano che vengono aggiunti database a una sessione, può verificarsi un peggioramento progressivo delle prestazioni.

Per ulteriori informazioni sulle prestazioni per il mirroring dei database, vedere Procedure consigliate per il mirroring del database e considerazioni sulle prestazioni (http://go.microsoft.com/fwlink/?linkid=185119&clcid=0x410).

product logo for Microsoft Project   Se il mirroring viene configurato per database di Microsoft Project Server 2010, vedere Configure availability by using SQL Server database mirroring (Project Server 2010) per informazioni specifiche su Project Server.

Il mirroring dei database utilizza sessioni TCP per trasportare il registro delle transazioni da un server a un altro e per monitorare lo stato corrente di integrità del sistema per i failover automatici. L'autenticazione viene eseguita a livello di sessione quando viene aperta una porta per la connessione. Il mirroring dei database supporta i certificati e l'autenticazione di Windows (NTLM o Kerberos).

A meno che la rete non sia sicura, i dati trasmessi durante la sessione devono essere crittografati. Il mirroring dei database supporta gli algoritmi di crittografia AES (Advanced Encryption Standard) e RC4. Per ulteriori informazioni sulla sicurezza associata al mirroring dei database, vedere Protezione del trasporto per il mirroring del database (http://go.microsoft.com/fwlink/?linkid=83569&clcid=0x410).

Quando si configura un database con mirroring, gli account di accesso e le autorizzazioni di SQL Server per il database da utilizzare con una farm di SharePoint non vengono configurati automaticamente nei database master e msdb nel server mirror. Si dovranno pertanto configurare le autorizzazioni per gli account di accesso necessari, tra cui i seguenti:

  • L'account del pool di applicazioni di Amministrazione centrale deve essere membro dei ruoli predefiniti del server dbcreator e securityadmin.

  • Tutti gli account dei pool di applicazioni, gli account di accesso al contenuto predefiniti e gli account necessari per le applicazioni di servizio devono disporre di account di accesso di SQL Server, anche se non devono essere assegnati a ruoli predefiniti del server o del database di SQL Server.

  • I membri del gruppo di SharePoint Amministratori farm devono inoltre disporre di account di accesso di SQL Server e devono essere membri degli stessi ruoli di SQL Server dell'account del pool di applicazioni di Amministrazione centrale.

È consigliabile trasferire gli account di accesso e le autorizzazioni dal server principale al server mirror eseguendo uno script. Uno script di esempio è disponibile nell'articolo 918992 della Knowledge Base, Come trasferire gli account di accesso e le password tra istanze di SQL Server 2005 (http://go.microsoft.com/fwlink/?linkid=122053&clcid=0x410). Per ulteriori informazioni su come trasferire i metadati di SQL Server tra le istanze, vedere l'articolo della documentazione online di SQL ServerGestione dei metadati quando si rende disponibile un database in un'altra istanza del server (http://go.microsoft.com/fwlink/?linkid=122055&clcid=0x410).

È consigliabile mantenere un mapping uno-a-uno tra il server principale/istanza di database e il server mirror/istanza di database per garantire la compatibilità con SharePoint Server 2010.

Le topologie supportate includono il mirroring di tutti i database del contenuto, del database di configurazione, del database del contenuto di Amministrazione centrale e dei database delle applicazioni di servizio, tranne il database dell'area di gestione temporanea Web Analytics e il database di sincronizzazione dei profili utente.

NotaNote
Non è consigliabile eseguire il mirroring del database di registrazione della raccolta dati di utilizzo e integrità. Un ambiente SharePoint può continuare a funzionare anche in caso di problemi relativi a questo database e tali dati possono essere generati rapidamente.

Evitare topologie in cui non sono presenti un server principale con istanze di database e un server mirror con istanze di database corrispondenti. Mantenere inoltre il database di configurazione e il database del contenuto di amministrazione nello stesso server.

È consigliabile che un amministratore di database di SQL Server configuri il mirroring a disponibilità elevata per un ambiente di produzione. Per un ambiente di testing, sono stati forniti script Transact-SQL che è possibile utilizzare per configurare l'ambiente in uso. Per ulteriori informazioni, vedere Sample script for configuring SQL Server mirroring (SharePoint Foundation).

Per configurare SharePoint Server 2010 in modo che riconosca l'esistenza di database con mirroring di failover, eseguire la procedura seguente per tutti i database di configurazione e del contenuto.

NotaNote
È consigliabile utilizzare i cmdlet di Windows PowerShell per impostare i valori dei database di failover. Il sito Web Amministrazione centrale consente infatti di impostare alcuni di questi valori, ma non può essere utilizzato per tutti i database.
Per configurare i prodotti SharePoint 2010 in modo che riconoscano i database con mirroring tramite Windows PowerShell
  1. Verificare che vengano soddisfatti i requisiti minimi seguenti: vedere Add-SPShellAdmin.

  2. Fare clic sul pulsante Start e scegliere Tutti i programmi.

  3. Fare clic su Prodotti Microsoft SharePoint 2010.

  4. Fare clic su Shell di gestione SharePoint 2010.

  5. Al prompt dei comandi di Windows PowerShell digitare i comandi seguenti e quindi premere INVIO:

    $db = get-spdatabase | where {$_.Name -eq " nome database "}

    $db.AddFailoverServiceInstance(" nome database con mirroring ")

    $db.Update()

Per ulteriori informazioni, vedere Get-SPDatabase.

Mentre SQL Server passa a un database con mirroring, gli utenti di un sito di SharePoint che viene eseguito con il database possono riscontrare temporanei problemi di connettività e perdite di dati.

Per monitorare lo stato e le prestazioni del mirroring all'interno di una farm, gli amministratori di database possono utilizzare lo strumento Monitoraggio mirroring del database. Il monitoraggio consente di stabilire se i dati vengono trasferiti e se il trasferimento avviene correttamente nella sessione di mirroring dei database. Monitoraggio mirroring del database è inoltre utile per risalire alla causa di un flusso dati ridotto. Per ulteriori informazioni, vedere Panoramica di Monitoraggio mirroring del database (http://go.microsoft.com/fwlink/?linkid=185068&clcid=0x410). Un'altra risorsa da utilizzare per la risoluzione dei problemi è l'articolo della documentazione online di SQL Server Risoluzione dei problemi relativi all'impostazione del mirroring del database (http://go.microsoft.com/fwlink/?linkid=185069&clcid=0x410).

Mostra: