Riepilogo: le istanze del cluster di failover e i gruppi di disponibilità

Guida all'architettura AlwaysOn: creazione di una soluzione per
disponibilità elevata e ripristino di emergenza con istanze del cluster
di failover e gruppi di disponibilità
Articolo tecnico su SQL Server
Autori: Joseph Sack (SQLskills.com), Sanjay Mishra (Microsoft)
Revisori tecnici: Min He (Microsoft), Chuck Heinzelman (Microsoft), Alexi Khalyako (Microsoft),
Charles Mathews (Microsoft), Prem Mehra (Microsoft), Juergen Thomas (Microsoft), Mike
Weiner (Microsoft), Amitabh Tamhane (Microsoft), Brent Ozar (Brent Ozar PLF), Gianluca Hotz
(SolidQ), David P. Smith (ServiceU), Michael Steineke (Edgenet), Glenn Berry (SQLskills.com)
Content Program Manager: Glenn Minch (Microsoft)
Data di pubblicazione: giugno 2012
Contesto di applicazione: SQL Server 2012
Riepilogo: le istanze del cluster di failover e i gruppi di disponibilità di SQL Server 2012 AlwaysOn
forniscono una soluzione completa per la disponibilità elevata e il ripristino di emergenza. Prima
di SQL Server 2012, molti clienti utilizzavano le istanze del cluster di failover per assicurare
elevata disponibilità locale all'interno di un data center e il mirroring del database per il ripristino
di emergenza in un data center remoto. Con SQL Server 2012 è possibile sostituire questo
modello di progettazione con un'architettura basata sulle istanze del cluster di failover per
assicurare disponibilità elevata e i gruppi di disponibilità per soddisfare le esigenze aziendali di
ripristino di emergenza. I gruppi di disponibilità sfruttano la tecnologia Windows Server Failover
Clustering (WSFC) e includono molte funzionalità non disponibili nel mirroring del database. In
questo documento verranno trattati in dettaglio i requisiti fondamentali della topologia di questo
specifico modello di progettazione, con particolare attenzione alle considerazioni sull'archiviazione
asimmetrica, la scelta del modello di quorum, i voti del quorum, i passaggi necessari per creare
l'ambiente e un flusso di lavoro in cui viene illustrata la ripartizione della gestione di un evento di
ripristino di emergenza nella nuova topologia tra i diversi ruoli partecipanti.
Copyright
Il documento viene fornito “com'è”. Le informazioni e le opinioni espresse nel presente documento,
inclusi gli URL e altri riferimenti a siti Web, possono essere soggette a modifiche senza preavviso.
L'utente accetta di utilizzarlo a proprio rischio.
Alcuni esempi utilizzati in questo documento vengono forniti a scopo puramente illustrativo e sono
fittizi. Nessuna associazione reale o connessione è intenzionale o può essere desunta.
Il presente documento non implica la concessione di alcun diritto di proprietà intellettuale relativo ai
prodotti Microsoft. È possibile copiare e utilizzare questo documento per fini di riferimento interno.
© 2012 Microsoft. Tutti i diritti sono riservati.
2
Sommario
Introduzione.................................................................................................................................................. 4
Istanze del cluster di failover per HA e mirroring del database per DR........................................................ 4
Istanze del cluster di failover per HA locale e gruppi di disponibilità per DR ............................................... 5
Pianificazione e considerazioni ..................................................................................................................... 7
Requisiti WSFC .......................................................................................................................................... 7
Archiviazione asimmetrica ........................................................................................................................ 7
Denominazione e percorso di file delle istanze ........................................................................................ 7
Modalità di disponibilità e modalità di failover ........................................................................................ 8
Modello di quorum e voti dei nodi ........................................................................................................... 8
Strumenti per visualizzare e modificare il modello di quorum e i voti dei nodi ................................. 11
Configurazione del modello di quorum WSFC .................................................................................... 11
Utilizzo delle DMV e del dashboard AlwaysOn per visualizzare le informazioni sul quorum............. 12
Configurazione dei voti dei nodi ......................................................................................................... 13
Connettività dei client ............................................................................................................................. 14
Carichi di lavoro di lettura/scrittura ................................................................................................... 14
Carichi di lavoro di sola lettura ........................................................................................................... 14
Supporto per la connessione a più subnet ......................................................................................... 15
Configurazione della soluzione FCI+AG ...................................................................................................... 15
Prerequisiti di installazione ..................................................................................................................... 15
Configurazione della soluzione nel data center primario ....................................................................... 16
Configurazione della soluzione nel data center di DR ............................................................................ 21
Considerazioni sul monitoraggio ................................................................................................................ 26
Ripristino in seguito a un'emergenza ......................................................................................................... 27
Ripristino del data center primario ............................................................................................................. 33
Conclusione ................................................................................................................................................. 38
Riferimenti .................................................................................................................................................. 38
3
Introduzione
Microsoft SQL Server 2012 AlwaysOn offre opzioni di progettazione flessibili per realizzare la soluzione
per la disponibilità elevata (HA, High Availability) e il ripristino di emergenza (DR, Disaster Recovery) più
adeguata alle proprie esigenze. Per ulteriori informazioni sulle scelte disponibili, vedere il post sui
modelli di progettazione per la disponibilità elevata e il ripristino di emergenza di SQL Server 2012 AlwaysOn.
In questo white paper viene descritta una soluzione che utilizza le istanze del cluster di failover (FCI,
Failover Cluster Instance) per la disponibilità elevata e i gruppi di disponibilità (AG, Availability Group)
per il ripristino di emergenza. Questa architettura combina una soluzione di archiviazione condivisa
(FCI) e una soluzione di archiviazione non condivisa (AG).
Prima di SQL Server 2012, un'architettura di distribuzione per HA e DR richiedeva normalmente l'uso
delle istanze del cluster di failover per la disponibilità elevata locale e il mirroring del database (DBM,
Database Mirroring) per il ripristino di emergenza remoto. Con SQL Server 2012 i gruppi di disponibilità
possono sostituire la componente di mirroring del database della soluzione.
Questo documento contiene alcune considerazioni sulla pianificazione e la descrizione dettagliata della
procedura di creazione di questa soluzione. Vengono inoltre illustrati i passaggi necessari per il ripristino in
seguito a una situazione di emergenza e le modalità per tornare al data center primario dopo tale
operazione.
Gli argomenti trattati in questo documento presuppongono una conoscenza di base dei concetti di istanza
del cluster di failover, gruppo di disponibilità, disponibilità elevata e ripristino di emergenza. Per ulteriori
informazioni sulla serie completa di funzionalità delle soluzioni AlwaysOn, vedere il white paper Guida
alle soluzioni Microsoft SQL Server AlwaysOn per la disponibilità elevata e il ripristino di emergenza. Per
ulteriori informazioni sui passaggi relativi alla migrazione, vedere il white paper Guida alla migrazione:
migrazione al clustering di failover e ai gruppi di disponibilità di SQL Server 2012 da distribuzioni
precedenti basate su clustering e mirroring.
Il white paper è destinato agli amministratori di database e agli architetti della tecnologia SQL Server,
nonché agli amministratori di sistema che collaborano con il ruolo di amministratore di database per
gestire Windows Server, Servizi di dominio Active Directory, WSFC e i servizi di rete.
Istanze del cluster di failover per HA e mirroring del database per DR
Come già detto nell'introduzione, prima di SQL Server 2012 un'architettura di distribuzione di SQL Server
richiedeva normalmente l'uso delle istanze del cluster di failover per la disponibilità elevata locale e del
mirroring del database per il ripristino di emergenza tra data center. Questa soluzione è stata definita
FCI+DBM. In questo tipo di soluzione, viene configurata un'istanza del cluster di failover nel data center
primario utilizzando l'archiviazione su disco condivisa (ad esempio tramite rete SAN) per assicurare
protezione a livello di istanza di SQL Server. Se si verifica un errore hardware su uno dei nodi, un altro
nodo può assumere il ruolo di host dell'istanza del cluster di failover all'interno dello stesso data center.
Tra il sito primario e il sito di ripristino di emergenza viene utilizzato il mirroring del database per assicurare
protezione a livello di database. In caso di interruzione del data center primario o di errore delle risorse
di archiviazione condivisa nel data center primario, è possibile utilizzare il mirror nel data center di ripristino
di emergenza (DR) per ripristinare il servizio alle applicazioni. Nel data center di DR viene ospitata un'altra
istanza del cluster di failover su un cluster WSFC separato, con risorse di archiviazione condivisa proprie.
L'architettura di questa soluzione è illustrata nella Figura 1.
4
Data center primario
Data center di ripristino di emergenza
Cluster
Cluster WSFC
WSFC "B"
"A"
Cluster WSFC "A"
SQLFCIPrimary\INST_A
SQLFCIDR\INST_A
Mirroring del
database
Database
principale
Database
mirror
Figura 1: istanza del cluster di failover per la disponibilità elevata e mirroring del database per il ripristino di emergenza
In genere il data center di DR è situato a una certa distanza dal data center primario e la sessione di
mirroring è impostata sulla modalità asincrona a prestazioni elevate per ridurre al minimo l'overhead
delle transazioni. In alcuni casi viene anche utilizzato il mirroring del database sincrono tra i data center.
Per ulteriori informazioni, incluso un esempio pratico di questa specifica soluzione, vedere Disponibilità
elevata e ripristino di emergenza in ServiceU: case study tecnico su SQL Server 2008.
Istanze del cluster di failover per HA locale e gruppi di disponibilità per DR
Con SQL Server 2012 una soluzione simile comporta l'utilizzo delle istanze del cluster di failover per la
disponibilità elevata locale, come nella soluzione FCI+DBM, ma utilizzando i gruppi di disponibilità per il
ripristino di emergenza. Questa soluzione è definita FCI+AG.
La Figura 2 mostra la soluzione con le istanze del cluster di failover per la disponibilità elevata locale
e i gruppi di disponibilità per il ripristino di emergenza tra data center.
Figura 2: istanze del cluster di failover per la disponibilità elevata e gruppi di disponibilità per il ripristino di emergenza
La Figura 2 mostra due istanze del cluster di failover, una nel data center primario e l'altra nel data
center di ripristino di emergenza. Ciascuna istanza include due nodi e risorse di archiviazione condivisa
proprie. Tutti e quattro i nodi, tuttavia, fanno parte dello stesso cluster WSFC. L'appartenenza di tutti
i nodi allo stesso cluster WSFC è un requisito per i gruppi di disponibilità.
5
La topologia illustrata nella Figura 2 corrisponde a uno scenario semplice con due data center, in
ciascuno dei quali è ospitata una replica del gruppo di disponibilità su un'istanza del cluster di failover
con due nodi. L'architettura consente variazioni a questa topologia:





Più data center
Più repliche: fino a cinque, inclusa una replica primaria e da una a quattro repliche secondarie
Più di due nodi in ogni istanza del cluster di failover se si desidera aggiungere nodi passivi
a scopo di HA
Non tutte le repliche in un gruppo di disponibilità devono trovarsi su istanze del cluster di
failover; alcune possono trovarsi su istanze di SQL Server autonome e non del cluster di failover
Più gruppi di disponibilità basati sul raggruppamento logico di database per l'ambiente applicativo
Benché gli argomenti trattati in questo white paper siano incentrati sulla topologia mostrata nella Figura 2,
i concetti generali si applicano anche ad altre variazioni.
Poiché i quattro nodi dei due siti fanno parte dello stesso cluster WSFC, è necessario considerare alcuni
aspetti aggiuntivi riguardanti l'utilizzo delle risorse di archiviazione condivisa visibili solo ai nodi del data
center locale. Ulteriori considerazioni vanno dedicate ai voti del quorum e al modello di quorum. Il
documento tratterà questo e altri aspetti.
È possibile configurare il gruppo di disponibilità con uno o più database utente e impostarlo sullo
spostamento sincrono o asincrono dei dati. Le repliche sincrone aggiungono latenza alle transazioni del
database perché, prima di eseguire il commit di una transazione, la replica primaria deve ricevere la
conferma che i record del log sono stati finalizzati nei log delle repliche secondarie.
È anche importante notare che l'istanza di SQL Server di ripristino di emergenza non deve necessariamente
essere un'istanza del cluster di failover. Un gruppo di disponibilità potrebbe includere anche un'istanza
di SQL Server autonoma per la replica secondaria. Con i gruppi di disponibilità, è possibile combinare
istanze autonome e istanze del cluster di failover in una sola topologia sullo stesso cluster WSFC. Nella
Figura 3 viene illustrata una topologia mista.
Data center primario
Data center di ripristino di emergenza
Cluster WSFC (Windows Server Failover Clustering)
SQLFCIPrimary\INST_A
SQLDR\INST_B
Gruppo di
disponibilità
Database
primari
Database
secondari
Figura 3: istanza del cluster di failover per HA e gruppi di disponibilità per DR, con un'istanza autonoma con la funzione di
istanza di DR
La parte restante del documento si basa sul presupposto che la replica primaria e le repliche secondarie
siano tutte istanze del cluster di failover ospitate e non istanze autonome.
6
Pianificazione e considerazioni
In questa sezione vengono trattati in dettaglio i requisiti, i prerequisiti e alcune considerazioni relative
alla pianificazione di cui tenere conto prima di implementare una soluzione FCI+AG per la disponibilità
elevata e il ripristino di emergenza.
Requisiti WSFC
Una differenza fondamentale tra una soluzione FCI+DBM e una soluzione FCI+AG è che nella prima si
utilizzano due istanze del cluster di failover in due cluster WSFC separati, mentre nella seconda le due
istanze del cluster di failover si trovano in un unico cluster WSFC. Tutte le repliche di un gruppo di
disponibilità devono trovarsi in un unico cluster WSFC all'interno di un singolo dominio Active Directory,
anche tra data center.
Archiviazione asimmetrica
In presenza di due istanze del cluster di failover, una in ciascun sito del cluster WSFC multisito, è necessario
valutare in che modo gestire l'archiviazione condivisa. Ciascuna istanza del cluster di failover dispone
delle proprie risorse di archiviazione condivisa. I nodi nel sito primario condividono le risorse di archiviazione
tra loro per formare un'istanza del cluster di failover con archiviazione condivisa; analogamente, i nodi
nel sito di DR condividono le risorse di archiviazione fra loro per formare un'altra istanza del cluster di
failover con archiviazione condivisa. Le risorse di archiviazione nel sito primario non sono visibili ai nodi
nel sito di ripristino di emergenza e viceversa. Questa organizzazione delle risorse di archiviazione, in cui
un disco del cluster è condiviso tra un subset di nodi all'interno di un cluster WSFC, viene definita
archiviazione asimmetrica. Prima dell'introduzione della funzionalità di archiviazione asimmetrica, le
risorse di archiviazione condivisa dovevano essere visibili a tutti i nodi del cluster WSFC (archiviazione
simmetrica). L'archiviazione asimmetrica è stata introdotta come opzione di distribuzione per Windows
Server 2008 tramite un hotfix. È supportata anche in Windows Server 2008 R2 tramite Service Pack 1.
Per ulteriori informazioni, vedere l'articolo della Knowledge Base sull'hotfix per aggiungere supporto per
le archiviazioni asimmetriche allo snap-in MMC Gestione cluster di failover per un cluster di failover che
esegue Windows Server 2008 o Windows Server 2008 R2.
Questo miglioramento di Windows Server è l'elemento chiave che rende possibile l'architettura FCI+AG
descritta in questo white paper. Questa funzionalità consente infatti di combinare la soluzione di
archiviazione condivisa (istanze del cluster di failover) e la soluzione di archiviazione non condivisa
(gruppi di disponibilità) in un'unica soluzione per HA+DR. Di conseguenza, consente anche di utilizzare
lettere di unità identiche per le risorse disco condivise tra data center.
Notare che quando si configura l'archiviazione asimmetrica, durante i test di convalida del cluster WSFC
potrebbe apparire il messaggio “Il disco con ID XYZ è visibile o impostabile come disco di tipo cluster solo
da un sottoinsieme di nodi”. Per l'archiviazione asimmetrica si tratta di un comportamento previsto
e non indica la presenza di problemi.
Denominazione e percorso di file delle istanze
Le due istanze del cluster di failover devono utilizzare nomi diversi all'interno dello stesso cluster WSFC,
ad esempio “INST_A” come nome dell'istanza del cluster di failover primaria e ”INST_B” come nome
dell'istanza del cluster di failover di DR. Contrariamente ai gruppi di disponibilità, il mirroring del
database consente a ogni istanza del cluster di failover di utilizzare lo stesso nome se le istanze si
trovano in cluster WSFC separati. Nella Figura 1, che rappresenta la soluzione FCI+DBM, le due istanze
del cluster di failover hanno lo stesso nome, INST_A.
7
Ogni istanza del cluster di failover ha risorse di archiviazione condivisa proprie che non sono accessibili
ai nodi presenti nell'altro data center. È opportuno utilizzare lettere di unità identiche per i dischi
e percorsi identici per i file di database e i log delle transazioni di entrambe le istanze. Benché non si
tratti di un requisito obbligatorio, se i percorsi di file differiscono sarà necessario eseguire un'azione
RESTORE WITH MOVE manuale nel momento del ripristino dei database di replica sulla replica secondaria.
Inoltre, percorsi eterogenei nelle due istanze del cluster di failover invalideranno le successive
operazioni di aggiunta di file, quali la creazione di gruppi di file o di file di dati o di log secondari. Per
ulteriori informazioni, incluso uno scenario di risoluzione del problema, vedere Risolvere i problemi
relativi a una operazione di aggiunta file non riuscita (Gruppi di disponibilità AlwaysOn).
Modalità di disponibilità e modalità di failover
Per il gruppo di disponibilità creato tra le due istanze del cluster di failover è possibile definire la modalità
di disponibilità con commit sincrono o asincrono. Se la modalità di disponibilità è sincrona, la replica
primaria attende che le transazioni utente siano state inviate e finalizzate nelle repliche secondarie
prima di eseguirne il commit. Questo meccanismo può comportare l'aggiunta di latenza alle transazioni
utente, ma riduce la possibilità di perdita dei dati nella replica secondaria facendo sì che le transazioni
vengano inviate all'istanza del cluster di failover di ripristino di emergenza prima che venga segnalato un
commit sulla transazione della replica primaria.
Se la modalità di disponibilità è asincrona, la replica primaria esegue il commit delle transazioni utente
senza attendere la finalizzazione delle transazioni nei log delle repliche secondarie. In tal modo viene
ridotta la latenza delle transazioni, ma aumenta il rischio di perdita di dati nell'eventualità di un'interruzione.
Per quanto riguarda le modalità di failover, quando le istanze del cluster di failover vengono utilizzate
nella topologia con i gruppi di disponibilità, la modalità di failover dei gruppi di disponibilità deve essere
manuale (non automatica). Tuttavia, all'interno di ogni istanza del cluster di failover, il failover dell'istanza
di SQL Server sugli altri nodi è automatico.
Modello di quorum e voti dei nodi
Nota: la trattazione sui modelli di quorum e le informazioni correlate in questo white paper si
riferiscono alle soluzioni in esecuzione sui sistemi operativi Windows Server 2008 e Windows
Server 2008 R2, con gli appropriati Service Pack e aggiornamenti software.
Poiché l'infrastruttura alla base della soluzione FCI+AG è un cluster WSFC, è importante valutare il modello
di quorum appropriato. La configurazione del quorum è gestita a livello di WSFC, indipendentemente dal
numero di istanze del cluster di failover, dal numero di repliche e dal numero di gruppi di disponibilità
ospitati nel cluster WSFC.
In WSFC sono disponibili quattro modelli di quorum: Maggioranza dei nodi, Maggioranza dei nodi
e delle condivisioni file, Maggioranza dei nodi e dei dischi, Nessuna maggioranza: Solo disco. Per
ulteriori informazioni sui modelli di quorum, vedere la sezione della guida dettagliata ai cluster di
failover relativa alla configurazione del quorum in un cluster di failover.
8
Prima di selezionare un modello di quorum è importante prendere in considerazione il numero di nodi
votanti. L'assegnazione dei voti ai nodi appropriati svolge un ruolo importante nella progettazione
HA+DR. Benché per impostazione predefinita ogni nodo in un cluster di failover possieda un voto,
questa configurazione potrebbe non essere adeguata a una specifica soluzione per HA+DR, a seconda
della distribuzione dei nodi nel data center primario e nel data center di ripristino di emergenza.
È disponibile un hotfix (http://support.microsoft.com/kb/2494036) che consente di assegnare 1 voto ad
alcuni nodi e 0 voti ad altri nel cluster WSFC. La proprietà NodeWeight del nodo WSFC rappresenta il
voto per quel particolare nodo. Il valore “0” indica che il nodo non ha voti. Il valore “1” indica che il nodo
dispone di un voto di quorum. Questo hotfix deve essere installato in ogni nodo nella topologia.
Suggerimenti di carattere generale per i voti del quorum relativi a una soluzione AlwaysOn per HA+DR
vengono forniti nell'argomento Modifiche consigliate ai voti quorum nella documentazione online di
SQL Server. Tali suggerimenti vanno considerati come linee guida per definire lo schema di voto della
soluzione AlwaysOn. In base a queste linee guida, per evitare che il quorum dei nodi nel data center
primario venga compromesso da interruzioni nel data center di DR o dalla perdita di connettività tra
i due data center, lo schema di voto per la soluzione FCI+AG presentata nella Figura 2 sarà:


1 voto per ogni nodo nel data center primario
0 voti per ogni nodo nel data center di ripristino di emergenza
Questa assegnazione di voti si traduce in un totale di 2 voti per il cluster WSFC. In base alla procedura
consigliata il numero totale di voti per il cluster WSFC dovrebbe essere un numero dispari. In presenza di
un numero pari di nodi votanti (come nella topologia di esempio), valutare l'aggiunta di una condivisione
file di controllo, quindi scegliere il modello di quorum Maggioranza dei nodi e delle condivisioni file.
Nota: in molti ambienti aziendali la condivisione file è spesso di proprietà di un team diverso,
che si occupa anche della sua gestione. In questo caso il team controlla il voto di un nodo
e quindi ha influenza sullo stato del cluster di failover. Una condivisione file diventa un voto
e deve pertanto essere sempre disponibile. Per assicurare la disponibilità del voto della
condivisione file, si consiglia di utilizzare funzionalità di clustering o altre tecnologie di HA.
In alternativa, è possibile aggiungere un altro nodo e utilizzare il modello di quorum Maggioranza dei
nodi. Il nodo aggiuntivo deve trovarsi all'interno del cluster WSFC ma non deve necessariamente fare
parte della configurazione delle istanze del cluster di failover. Deve inoltre essere situato nello stesso
data center primario, insieme agli altri due nodi WSFC presenti nel data center.
Nella Figura 4 viene mostrata l'allocazione dei voti basata sul modello di quorum Maggioranza dei nodi
e delle condivisioni file.
9
Figura 4: soluzione FCI+AG per HA/DR con assegnazione dei voti ai nodi
Nella Figura 4 ciascuno dei due nodi nel data center primario possiede un voto. Nel data center primario
è definita anche una condivisione file di controllo, che possiede anch'essa un voto. I due nodi nel data
center di ripristino di emergenza non possiedono voti e non possono influire sul quorum.
Gli altri possibili modelli di quorum selezionabili per questa architettura di distribuzione sono Maggioranza
dei nodi e dei dischi (con un disco asimmetrico) o Nessuna maggioranza: Solo disco (con un disco
asimmetrico). Prima che l'archiviazione asimmetrica fosse disponibile per i cluster WSFC, un disco condiviso
poteva fungere da risorsa di quorum se visibile a tutti i nodi WSFC. Con l'archiviazione asimmetrica, le risorse
di archiviazione del cluster possono essere visibili a un subset di nodi ed essere comunque utilizzate
come risorsa quorum. Con il modello di quorum asimmetrico Nessuna maggioranza: Solo disco, è possibile
implementare uno scenario di tipo “ultimo rimasto”, in cui il cluster WSFC mantiene il quorum purché
un singolo nodo abbia contatto con il disco asimmetrico che funge da risorsa quorum.
È possibile abilitare questa configurazione utilizzando la riga di comando cluster.exe, ma non tramite
Gestione cluster di failover o Windows PowerShell. Per un esempio di questa configurazione, vedere la
sezione sulla modifica della configurazione del quorum in un cluster di failover con archiviazione
asimmetrica nella sezione della guida dettagliata ai cluster di failover relativa alla configurazione del
quorum in un cluster di failover.
Importante: l'uso di un disco asimmetrico come risorsa quorum offre numerosi vantaggi, ma richiede
anche un livello molto più alto di competenza sui cluster e di pianificazione. È necessario acquisire
grande familiarità con questa configurazione prima di distribuirla in un ambiente di produzione.
In caso di un'interruzione del data center primario che richieda l'attivazione del servizio nel data center
di ripristino di emergenza, è necessario valutare nuovamente la configurazione del quorum. A ogni nodo
nel data center di ripristino di emergenza deve essere assegnato un voto, mentre è necessario rimuovere il
voto (impostandolo su “0”) di ogni nodo nel data center primario fino al ripristino del servizio.
Presupponendo la presenza di due nodi nell'istanza del cluster di failover e un'interruzione di lunga
durata del data center primario, è inoltre necessario configurare una condivisione file di controllo (o un
altro tipo di voto aggiuntivo) nel data center di DR e impostare di conseguenza il modello di quorum.
Quando il data center primario è pronto per tornare operativo, lo schema di voto deve essere nuovamente
modificato e il modello di quorum nuovamente valutato. Più avanti in questo documento verrà descritto
dettagliatamente uno scenario di ripristino di emergenza e il flusso di processi associato.
10
Nel modello di quorum e nelle assegnazioni dei voti illustrati nella Figura 4 si presuppone che la soluzione
comprenda due repliche, una per ogni data center. Se sono presenti più data center e si prevede di
includere una parte della soluzione in un terzo data center, le decisioni sul modello di quorum e le
assegnazioni dei voti possono variare.
Strumenti per visualizzare e modificare il modello di quorum e i voti dei nodi
Sono disponibili più modalità per visualizzare e modificare il modello di quorum e/o i voti del quorum
del cluster. Nella tabella seguente sono elencati i vari strumenti per queste attività.
Per visualizzare il modello di quorum
Gestione cluster di failover di Windows
Windows PowerShell
Cluster.exe
DMV di SQL Server
Dashboard AlwaysOn in SQL Server
Management Studio
Per modificare il modello di quorum
Gestione cluster di failover di Windows
Windows PowerShell
Cluster.exe
Nota: è possibile utilizzare solo Cluster.exe per
impostare il modello di quorum su “Maggioranza
dei nodi e dei dischi (asimmetrici)” o su “Nessuna
maggioranza: Solo disco (asimmetrico)”
Per visualizzare i voti dei nodi
Per modificare i voti dei nodi
Windows PowerShell
Cluster.exe
DMV di SQL Server
Dashboard AlwaysOn
Windows PowerShell
Cluster.exe
Configurazione del modello di quorum WSFC
Di seguito sono disponibili alcuni esempi dell'utilizzo di Windows PowerShell tramite riga di comando
per visualizzare l'attuale modello di quorum e modificarlo.
Per visualizzare il modello di quorum esistente
Get-ClusterQuorum
Per impostare il modello di quorum Maggioranza dei nodi
Set-ClusterQuorum -NodeMajority
Per impostare il modello di quorum su Maggioranza dei nodi e delle condivisioni file
Set-ClusterQuorum -NodeAndFileShareMajority \\FileShare\Witness
La condivisione file di controllo scelta non deve trovarsi su un nodo che fa già parte della configurazione
WSFC AlwaysOn, ma può essere aggiunta come condivisione in un'altra configurazione WSFC e deve
trovarsi all'interno dello stesso dominio Active Directory del cluster WSFC. Inoltre, l'account del servizio
cluster WSFC deve disporre di autorizzazioni di lettura e scrittura per la condivisione file di controllo.
Gestione cluster di failover include la logica per aggiungere queste autorizzazioni alla condivisione file di
controllo, purché l'account utilizzato per modificare il modello di quorum disponga delle autorizzazioni
per la condivisione file.
11
Utilizzo delle DMV e del dashboard AlwaysOn per visualizzare le informazioni sul quorum
Non è possibile impostare o modificare il modello di quorum o i voti dei nodi tramite gli strumenti SQL
Server, ma è possibile utilizzare query Transact-SQL sulle DMV e il dashboard AlwaysOn in SQL Server
Management Studio per visualizzare i voti dei nodi e il modello di quorum del cluster di Windows che
ospita il gruppo di disponibilità.
Per visualizzare il modello di quorum del cluster di Windows che ospita il gruppo di disponibilità,
eseguire una query sulla DMV sys.dm_hadr_cluster
(http://technet.microsoft.com/it-it/library/hh212952(v=sql.110).aspx).
SELECT
FROM
cluster_name, quorum_type_desc, quorum_state_desc
sys.dm_hadr_cluster;
Quando questa query viene eseguita nell'ambiente di esempio illustrato in questo white paper,
restituisce il risultato seguente.
cluster_name
-----------contosocluster
quorum_type_desc
---------------NODE_AND_FILE_SHARE_MAJORITY
quorum_state_desc
----------------NORMAL_QUORUM
Per visualizzare i voti dei nodi, eseguire una query sulla DMV sys.dm_hadr_cluster_members.
SELECT
FROM
member_name, number_of_quorum_votes
sys.dm_hadr_cluster_members;
Quando questa query viene eseguita nell'ambiente di esempio illustrato in questo white paper,
restituisce il risultato seguente (l'allocazione dei voti verrà trattata in una sezione successiva).
member_name
-----------------PrimaryNode1
PrimaryNode2
DRNode1
DRNode2
File Share Witness
number_of_quorum_votes
---------------------1
1
0
0
1
È possibile utilizzare anche il dashboard AlwaysOn in SQL Server Management Studio per visualizzare
i voti del quorum e lo stato del cluster. Nella Figura 5 vengono mostrate queste informazioni per un
cluster di Windows con il modello di quorum Maggioranza dei nodi (lo stato del cluster e i voti del
quorum sono evidenziati).
12
Figura 5: visualizzazione dei voti del quorum e dello stato del cluster nel dashboard AlwaysOn
Anche se la colonna Voti del quorum non viene visualizzata per impostazione predefinita, è possibile
aggiungerla al dashboard facendo clic con il pulsante destro del mouse sull'intestazione di colonna nella
tabella Replica di disponibilità e selezionando la colonna da visualizzare.
Per un modello di quorum Maggioranza dei nodi e delle condivisioni file, in questa vista del dashboard
AlwaysOn vengono mostrati solo i nodi, non la condivisione file. Per visualizzare le informazioni complete
sul quorum, fare clic su Visualizza informazioni sul quorum del cluster a destra. Verrà visualizzata una
finestra popup simile a quella illustrata nella Figura 6.
Figura 6: informazioni sul quorum del cluster per il modello di quorum Maggioranza dei nodi e delle condivisioni file
Configurazione dei voti dei nodi
La proprietà NodeWeight del nodo WSFC rappresenta il voto per quel particolare nodo. Negli esempi
seguenti viene mostrato come configurare il nodo NodeWeight da un nodo in un cluster WSFC utilizzando
Windows PowerShell. Per l'esecuzione di Windows PowerShell sul nodo server, fare clic su Start,
scegliere Strumenti di amministrazione, quindi Moduli di Windows PowerShell. In questo esempio
DRNode1 rappresenta un nodo WSFC specifico situato nel data center di ripristino di emergenza.
13
Per visualizzare le impostazioni di voto correnti per tutti i nodi
Get-ClusterNode | fl NodeName, NodeWeight
Per impostare il voto di un nodo su “0”
(Get-ClusterNode “DRNode1”).NodeWeight=0
Nota: il valore “0” indica che il nodo non ha voti. Il valore “1” indica che il nodo dispone di un
voto di quorum.
Connettività dei client
I metodi di connessione delle istanze del cluster di failover in SQL Server 2012 sono gli stessi delle versioni
precedenti, ma per le migrazioni dal mirroring del database ai gruppi di disponibilità è necessario
prendere in considerazione e pianificare alcune modifiche prima di poter utilizzare la nuova funzionalità
delle repliche secondarie leggibili. Per ulteriori informazioni sulla migrazione, inclusi alcuni passaggi
e considerazioni approfondite, vedere il white paper Guida alla migrazione: migrazione al clustering di
failover e ai gruppi di disponibilità di SQL Server 2012 da distribuzioni precedenti basate su clustering
e mirroring.
Carichi di lavoro di lettura/scrittura
Per i carichi di lavoro di lettura/scrittura eseguiti nei database di disponibilità in un gruppo di disponibilità,
è possibile connettersi alla replica primaria utilizzando due opzioni. La prima opzione consiste nel
connettersi direttamente al nome di rete virtuale (VNN) dell'istanza del cluster di failover, che è diverso
per ogni replica. La seconda opzione consiste nell'utilizzare il nome del listener del gruppo di disponibilità.
Questa è l'opzione preferita perché consente il reindirizzamento automatico e trasparente alla replica
primaria corrente e consente di mantenere lo stesso nome nella stringa di connessione per tutte le
istanze. Il listener del gruppo di disponibilità è un VNN che viene associato a uno o più indirizzi TCP/IP
e porte di attesa e utilizzato per connettersi automaticamente a qualsiasi replica senza dover definire in
modo esplicito ogni possibile replica del gruppo di disponibilità nella stringa di connessione.
Se si esegue la migrazione delle connessioni dell'applicazione dei carichi di lavoro di lettura/scrittura da
una soluzione basata sul mirroring del database che utilizza l'attributo Partner di failover, è comunque
possibile continuare a utilizzare la stringa di connessione per il mirroring del database, ma solo se il gruppo
di disponibilità viene configurato con una sola replica secondaria impostata per l'attività di
lettura/scrittura. È quindi possibile utilizzare il nome server della replica primaria iniziale come origine dati e,
facoltativamente, il nome della replica secondaria come partner di failover. Questa configurazione non va
tuttavia utilizzata come soluzione a lungo termine.
Carichi di lavoro di sola lettura
Anche per le connessioni dei carichi di lavoro di sola lettura sono disponibili due opzioni. È possibile
utilizzare il VNN dell'istanza del cluster di failover oppure il listener del gruppo di disponibilità
e specificare il nuovo attributo ApplicationIntent nella stringa di connessione come “ReadOnly”.
Se si utilizza una stringa di connessione per il mirroring del database legacy, è possibile connettersi al
gruppo di disponibilità solo se questo viene impostato come singola replica secondaria configurata per
l'attività di lettura/scrittura.
14
Se si desidera sfruttare il routing di sola lettura, è necessario utilizzare il nome del listener del gruppo di
disponibilità insieme all'attributo ApplicationIntent e al valore “ReadOnly”. È inoltre necessario fare
riferimento a un database di disponibilità all'interno del gruppo di disponibilità. Il gruppo di disponibilità
deve essere configurato anche per il routing di sola lettura alle repliche secondarie leggibili tramite la
creazione di URL di routing di sola lettura ed elenchi di routing di sola lettura. Per ulteriori informazioni
su questo processo, vedere Configurare il routing di sola lettura per un gruppo di disponibilità (SQL Server).
Supporto per la connessione a più subnet
Il listener del gruppo di disponibilità può sfruttare anche l'attributo di connessione MultiSubnetFailover
nelle librerie client. È consigliabile inserire nelle stringhe di connessione dei gruppi di disponibilità l'attributo
MultiSubnetFailover per le topologie a più subnet che fanno riferimento a un nome di listener del
gruppo di disponibilità. L'opzione di connessione MultiSubnetFailover abilita il supporto per le connessioni
a più subnet e apre socket TCP per gli indirizzi IP del listener del gruppo di disponibilità in parallelo. Per
le librerie client legacy che non supportano l'attributo MultiSubnetFailover, è necessario valutare la
definizione di un appropriato timeout di accesso client.
Per ulteriori informazioni sulla connettività dei client e il failover delle applicazioni, vedere Listener del
gruppo di disponibilità, connettività client e failover dell'applicazione (SQL Server) nella documentazione
online di SQL Server.
Configurazione della soluzione FCI+AG
In questo flusso di lavoro vengono descritti i passaggi necessari alla compilazione della soluzione
FCI+AG. Benché in questa sede non vengano approfonditi tutti i dettagli, l'obiettivo è chiarire i passaggi
di implementazione del flusso di lavoro e le attività di competenza di ciascun ruolo partecipante. Nei casi
appropriati viene fatto riferimento alla documentazione di supporto. I passaggi sono suddivisi per ruolo
perché la maggior parte degli ambienti delle grandi aziende prevede una separazione dei compiti tra
i ruoli di amministratore del database, amministratore di Windows (o del cluster) e amministratore di
rete. Per questo motivo è importante che tra i diversi ruoli si stabilisca una corretta comunicazione e un
efficace coordinamento delle attività.
Prerequisiti di installazione
Prima di distribuire la soluzione Gruppi di disponibilità AlwaysOn, è importante verificare che il sistema
soddisfi i requisiti, inclusi gli aggiornamenti. Per ulteriori informazioni sui prerequisiti della distribuzione
di una soluzione Gruppi di disponibilità AlwaysOn, vedere Prerequisiti, restrizioni e consigli per i gruppi
di disponibilità AlwaysOn (SQL Server). Si consiglia di leggere con molta attenzione questo argomento
prima di continuare.
Su tutti i nodi deve essere installata la stessa versione del sistema operativo Windows Server e degli
aggiornamenti software. Il sistema operativo server deve essere almeno Windows Server 2008 SP2
o Windows Server 2008 R2 SP1 con gli aggiornamenti minimi seguenti:



Archiviazione asimmetrica (se si utilizza Windows Server 2008):
http://support.microsoft.com/kb/976097
Voti dei nodi: http://support.microsoft.com/kb/2494036
Test di convalida dei dischi durante la convalida del cluster:
http://support.microsoft.com/kb/2531907
Potrebbero essere necessari aggiornamenti aggiuntivi.
15
Configurazione della soluzione nel data center primario
La Tabella 1 illustra il flusso di lavoro per la configurazione dei nodi del data center primario,
presupponendo la presenza di due nodi.
Passaggio
1. Aggiungere la funzionalità Clustering di
failover ai due nodi situati nel data
center primario. Per ulteriori
informazioni sul processo, vedere
Installare la funzionalità Clustering di
failover. Per ulteriori informazioni sulla
convalida dell'infrastruttura di rete
e gli altri requisiti, vedere Informazioni
sui requisiti per i cluster di failover.
2. Controllare i prerequisiti e installare gli
aggiornamenti di Windows Server
necessari in ogni nodo nel data center
primario.
3. Assicurarsi che i volumi di archiviazione
condivisa definiti per l'istanza del
cluster di failover del data center
primario siano formattati e provvisti di
lettera di unità.
È consigliabile che le lettere di unità e il
percorso di directory dell'istanza del
cluster di failover di DR corrispondano
a quelli dell'istanza del cluster di
failover primaria. Tenere presente
questo aspetto durante l'assegnazione
delle lettere di unità nell'istanza del
cluster di failover primaria.
16
Amministratore Amministratore
del database
di Windows
Server/
del cluster
Sì, per il
Sì
coordinamento
delle attività tra
i ruoli
Sì
Sì
Amministratore
di rete
Passaggio
4. Verificare che l'account che verrà
utilizzato per installare e configurare il
cluster WSFC sia un account di dominio.
Questo account deve disporre anche
delle autorizzazioni di amministratore
per ogni nodo del cluster e delle
autorizzazioni Create Computer
Objects e Read All Properties per il
contenitore utilizzato per gli account
dei computer del dominio.
In alternativa, è possibile preinstallare
gli account degli oggetti nome
anticipatamente o utilizzare un
account amministratore di dominio per
l'installazione. Per ulteriori
informazioni sulle autorizzazioni
necessarie e le opzioni di provisioning,
vedere la sezione della guida
dettagliata sui cluster di failover
relativa alla configurazione degli
account in Active Directory.
5. Utilizzando Gestione cluster di failover,
eseguire la convalida del cluster dei
due nodi server nel data center primario
e dell'archiviazione condivisa che verrà
aggiunta al cluster WSFC. Ripetere la
convalida fino alla scomparsa di tutti
gli errori che potrebbero impedire la
prosecuzione del processo.
Se viene consentito di passare al punto
successivo con gli avvisi esistenti,
è necessario comprendere tali avvisi
per garantire una configurazione
stabile. Per ulteriori informazioni
sull'esecuzione di un test di convalida,
vedere Convalidare la configurazione
di un cluster di failover.
6. Al termine del passaggio di convalida
del cluster, utilizzare Gestione cluster
di failover per creare un cluster WSFC
con due nodi. Per ulteriori informazioni,
inclusa una panoramica dettagliata di
questo processo, vedere Creare un
nuovo cluster di failover.
17
Amministratore Amministratore
del database
di Windows
Server/
del cluster
Sì
Amministratore
di rete
Sì
Sì, per eventuali
problemi relativi
alla connessione
in rete dei nodi
Sì
Sì, per eventuali
problemi relativi
alla connessione
in rete dei nodi
Passaggio
7. Assicurarsi che sia presente un numero
dispari di voti, ad esempio aggiungendo
una condivisione file o un altro nodo
aggiuntivo, come descritto in
precedenza in questo documento.
Se si sceglie Maggioranza dei nodi
e delle condivisioni file, prima di
modificare la configurazione accertarsi
di avere concesso le autorizzazioni di
lettura e scrittura per la condivisione
file di controllo all'account del cluster
WSFC.
8. Assicurarsi che nell'installazione
vengano utilizzate risorse di
archiviazione condivise e formattate,
accessibili solo ai due nodi situati nel
data center primario. Questi dischi
verranno utilizzati per SQL Server nel
passaggio successivo.
9. Installare un'istanza del cluster di
failover di SQL Server 2012 Enterprise
nel data center primario. Per ulteriori
informazioni, vedere Creare un nuovo
cluster di failover di SQL Server
(programma di installazione).
È necessario eseguire due opzioni di
installazione: la prima è Installazione
nuovo cluster di failover di SQL Server,
con la quale viene creata l'istanza del
cluster di failover, mentre la seconda
è Aggiungi nodo a cluster di failover di
SQL Server sul secondo nodo nel data
center primario.
18
Amministratore Amministratore
del database
di Windows
Server/
del cluster
Sì
Sì
Sì
Amministratore
di rete
Passaggio
10. Dopo avere installato la prima istanza
del cluster di failover, abilitare le
funzionalità Gruppi di disponibilità
AlwaysOn per entrambe le istanze di
SQL Server.
Per ulteriori informazioni sull'uso di
Gestione configurazione SQL Server o,
in alternativa, SQL Server PowerShell,
vedere Abilitare e disabilitare la
funzionalità Gruppi di disponibilità
AlwaysOn (SQL Server). Notare che,
quando si abilita Gruppi di disponibilità
AlwaysOn per un'istanza, è necessario
riavviare l'istanza per rendere effettiva
la modifica.
19
Amministratore Amministratore
del database
di Windows
Server/
del cluster
Amministratore
di rete
Passaggio
Amministratore Amministratore
del database
di Windows
Server/
del cluster
11. Dopo avere abilitato l'istanza del cluster
di failover di DR per il supporto di
Gruppi di disponibilità AlwaysOn,
eseguire il backup dei database utente
di produzione dalla topologia legacy,
quindi ripristinarli nell'istanza del
cluster di failover del data center
primario.
Nota: è possibile scegliere di rinviare
questo passaggio finché anche l'istanza
del cluster di failover non sia disponibile
e non sia possibile configurare il
gruppo di disponibilità con due repliche.
È inoltre necessario inserire in script gli
altri oggetti SQL Server della topologia
legacy da cui dipenderanno i database
utente e che non sono contenuti nei
database utente ripristinati (come gli
account di accesso di SQL server, le
autorizzazioni a livello di server associate
e i processi di SQL Server Agent).
Questo processo è simile a quello
utilizzato per inserire in script oggetti
dipendenti esterni al database
sottoposto a mirroring in una relazione
di mirroring. Sono disponibili diversi
metodi per trasferire oggetti e principi
di database tra istanze di SQL Server.
Uno di questi è l'attività Trasferisci
oggetti di SQL Server di Integration
Services. Un altro metodo utilizzato per
trasferire account di accesso e password
tra istanze viene descritto qui:
http://support.microsoft.com/kb/918992/
Tabella 1: compilazione della soluzione FCI+AG nel data center primario
20
Amministratore
di rete
Configurazione della soluzione nel data center di DR
Questa tabella contiene il flusso di lavoro per la configurazione dei nodi del data center di ripristino di
emergenza secondario e la creazione del gruppo di disponibilità.
Passaggio
Amministratore
del database
1. Aggiungere la funzionalità
Clustering di failover a tutti
i nodi situati nel data center di
ripristino di emergenza che
fanno parte della soluzione.
2. Controllare i prerequisiti
e installare gli aggiornamenti di
Windows Server necessari in
ogni nodo nel data center di DR.
3. Verificare che l'account che verrà
utilizzato per installare
e configurare il cluster WSFC sia
un account di dominio. Questo
account deve disporre anche
delle autorizzazioni di
amministratore per ogni nodo
del cluster e delle autorizzazioni
Create Computer Objects e Read
All Properties per il contenitore
utilizzato per gli account dei
computer del dominio. Se si
utilizzano gli stessi account del
data center primario, queste
autorizzazioni sono già
impostate correttamente.
4. Utilizzando Gestione cluster di
failover, eseguire la convalida del
cluster dei due nodi server
e dell'archiviazione condivisa
aggiunti al cluster WSFC
esistente. Se viene visualizzato
il messaggio di avviso relativo
all'archiviazione asimmetrica
“Il disco con ID XYZ è visibile
o impostabile come disco di tipo
cluster solo da un sottoinsieme
di nodi”, non è necessario
intraprendere alcuna azione, in
quanto si tratta di un messaggio
previsto e accettabile per
l'archiviazione asimmetrica.
Ripetere la convalida fino alla
scomparsa di tutti gli errori che
potrebbero impedire la
prosecuzione del processo.
Sì, per il
coordinamento
delle attività tra
i ruoli
21
Amministratore di
Windows Server/
del cluster
Sì
Amministratore
di rete
Sì
Sì
Sì
Sì, per eventuali
problemi relativi
alla connessione in
rete dei nodi
Passaggio
Amministratore
del database
5. Al termine della convalida,
utilizzare Gestione cluster di
failover per aggiungere i due
nodi di ripristino di emergenza al
cluster WSFC esistente.
6. Impostare la proprietà
NodeWeight dei nodi WSFC del
data center di ripristino di
emergenza sul peso 0 (zero). Per
un esempio, vedere la Figura 4:
soluzione FCI+AG per HA/DR con
assegnazione dei voti ai nodi.
7. Nell'installazione devono essere
utilizzate risorse di archiviazione
condivise e formattate, accessibili
solo ai due nodi situati nel data
center di DR. Questi dischi
verranno utilizzati per SQL Server
nel passaggio successivo.
Mantenere le stesse lettere di
unità e lo stesso mapping per
semplificare la distribuzione del
gruppo di disponibilità nei
passaggi successivi e consentire
le operazioni sui file di database
che non richiedono intervento
manuale o l'interruzione della
sessione del gruppo di
disponibilità.
8. Spostare le risorse di
archiviazione disponibili in uno
dei nodi del data center di DR
per poterle utilizzare nel
passaggio successivo.
9. Installare un'istanza del cluster
di failover di SQL Server 2012
Enterprise nel data center di
ripristino di emergenza.
È necessario eseguire l'opzione
Installazione nuovo cluster di
failover di SQL Server su uno dei
nodi per creare l'istanza del
cluster di failover, quindi
l'opzione Aggiungi nodo
a cluster di failover di SQL
Server sul secondo nodo nel
data center di DR.
22
Amministratore di
Windows Server/
del cluster
Sì
Amministratore
di rete
Sì, per eventuali
problemi relativi
alla connessione in
rete dei nodi
Sì
Sì
Sì
Sì
Sì, per coordinare
l'approccio a porte
e indirizzi IP (se si
utilizzano indirizzi
IP statici)
Passaggio
Amministratore
del database
10. Il passaggio successivo
all'installazione delle due istanze
del cluster di failover consiste
nell'abilitazione delle funzionalità
Gruppi di disponibilità AlwaysOn
nell'istanza di SQL Server del
data center di DR.
Sì
Per informazioni dettagliate
sull'uso di Gestione configurazione
SQL Server o, in alternativa, di
PowerShell, vedere Abilitare
e disabilitare la funzionalità
Gruppi di disponibilità AlwaysOn
(SQL Server). Notare che, per
rendere effettiva l'abilitazione di
Gruppi di disponibilità AlwaysOn
per l'istanza, sarà necessario
riavviare l'istanza.
11. Inserire in script gli altri oggetti
SQL Server della topologia legacy
da cui dipenderanno i database
utente e che non sono contenuti
nei database utente ripristinati
(come gli account di accesso di
SQL server, le autorizzazioni
a livello di server associate
e i processi di SQL Server Agent).
Si tratta degli stessi oggetti che
sono probabilmente già stati
inseriti in script e copiati
nell'istanza del cluster di failover
del data center primario.
12. Verificare la corretta
impostazione dei possibili
proprietari delle due istanze
del cluster di failover: i possibili
proprietari per INST_A devono
essere PRIMARYNODE1
e PRIMARYNODE2, mentre
i possibili proprietari per INST_B
devono essere DRNODE1
e DRNODE2.
23
Sì
Amministratore di
Windows Server/
del cluster
Amministratore
di rete
Passaggio
Amministratore
del database
13. Creare un gruppo di disponibilità Sì
(questo passaggio coinvolge le
istanze del cluster di failover
primarie e di DR). È possibile
impostare la modalità di
disponibilità come asincrona
o sincrona, a seconda delle
caratteristiche dei carichi di
lavoro e di rete dell'ambiente.
Selezionare il failover manuale
per il gruppo di disponibilità. In
una soluzione FCI+AG il failover
delle istanze del cluster di failover
è automatico e il failover dei
gruppi di disponibilità è manuale.
Per ulteriori informazioni sulla
configurazione del failover per
questa soluzione, vedere
Creazione e configurazione di
gruppi di disponibilità (SQL
Server).
14. Creare il listener del gruppo di
Sì
disponibilità. Questo passaggio
non è necessario se il listener
è già stato configurato come
parte della creazione del gruppo
di disponibilità. Per creare il
listener del gruppo di
disponibilità, è possibile
utilizzare Transact-SQL, SQL
Server PowerShell o una
procedura guidata di SQL Server
Management Studio. Per
ulteriori informazioni sull'utilizzo
dei diversi metodi, vedere Creare
o configurare un listener del
gruppo di disponibilità (SQL
Server).
Amministratore di
Windows Server/
del cluster
Amministratore
di rete
Sì, per assicurare
che le porte degli
endpoint siano
aperte e in fase di
risoluzione dei
problemi, in base
alle esigenze
Sì
Sì, per coordinare
l'approccio a porte
e indirizzi IP
Tabella 2: compilazione della soluzione FCI+AG nel data center di ripristino di emergenza
Dopo avere completato questi passaggi, si noterà che in Gestione cluster di failover di Windows, sotto
Servizi e applicazioni, è stato creato un nuovo gruppo con lo stesso nome del gruppo di disponibilità. Il
nuovo gruppo conterrà la risorsa listener del gruppo di disponibilità e gli indirizzi IP associati (vedere la
Figura 5).
24
Figura 7: situazione della soluzione dopo la configurazione delle istanze del cluster di failover per HA e del gruppo di
disponibilità per DR
Nella Figura 7 viene illustrata la distribuzione della soluzione nel cluster WSFC. Notare che al listener del
gruppo di disponibilità raffigurato è associato un solo indirizzo IP per scopi illustrativi, ma per le topologie
con più data center è frequente la presenza di due indirizzi IP.
Nota: anche se il gruppo di disponibilità viene visualizzato come risorsa nel cluster WSFC, non
è opportuno tentare di gestirlo con Gestione cluster di failover o altre interfacce mirate alla
gestione WSFC. Operare invece nel contesto dell'istanza di SQL Server tramite SQL Server
Management Studio, Transact-SQL o Windows PowerShell. Per ulteriori informazioni sui motivi
per cui evitare di utilizzare Gestione cluster di failover o altre interfacce mirate alla gestione
WSFC, vedere il post di blog Evitare di utilizzare Gestione cluster di failover di Windows per
eseguire il failover dei gruppi di disponibilità.
Nella Figura 8 viene illustrata la distribuzione in SQL Server Management Studio. Una delle istanze del
cluster di failover viene mostrata in Esplora oggetti con la gerarchia della cartella Disponibilità elevata
AlwaysOn aperta. In questo esempio l'istanza del cluster di failover di DR è la replica secondaria, mentre
l'altra istanza del cluster di failover è la replica primaria. Vengono elencati i tre database di disponibilità
che fanno parte del gruppo insieme al nome del listener del gruppo di disponibilità.
25
Figura 8: situazione della soluzione dopo la configurazione delle istanze del cluster di failover per HA e del gruppo di
disponibilità per DR in SQL Server Management Studio
Considerazioni sul monitoraggio
Quando si esegue la migrazione da una topologia con istanze del cluster di failover e mirroring del
database a una soluzione basata su istanze del cluster di failover e un gruppo di disponibilità,
è necessario adottare nuovi metodi per l'esecuzione del monitoraggio della topologia. I metodi e gli
strumenti che è possibile utilizzare per il monitoraggio dell'infrastruttura del gruppo di disponibilità
includono il dashboard AlwaysOn in SQL Server Management Studio, le informazioni sullo stato di
Esplora oggetti, i criteri della Gestione basata su criteri, i contatori delle prestazioni correlati al nuovo
gruppo di disponibilità, viste del catalogo, DMV e una sessione Eventi estesi che tiene traccia di esecuzioni
recenti di istruzioni correlate al DDL AlwaysOn, problemi di connettività WSFC, eventi di failover,
cambiamenti di stato e blocchi di thread di rollforward.
Il dashboard AlwaysOn è lo strumento consigliato per visualizzare rapidamente l'integrità di un gruppo
di disponibilità specifico. Nel dashboard vengono infatti inclusi il percorso dell'istanza primaria, la modalità
di failover delle repliche, lo stato di sincronizzazione delle repliche e la conformità del failover delle varie
repliche. I dati della sessione Eventi estesi di integrità AlwaysOn possono anche essere aperti direttamente
dal dashboard per visualizzare l'attività recente del gruppo di disponibilità, i cambiamenti di stato e gli eventi.
26
Figura 9: dashboard AlwaysOn
È inoltre possibile creare avvisi e risposte a processi di SQL Server Agent basati sulle soglie dei contatori
delle prestazioni e sui cambiamenti di stato del gruppo di disponibilità. Per ulteriori informazioni
e indicazioni sul monitoraggio dell'ambiente di un gruppo di disponibilità, vedere Monitoraggio di
Gruppi di disponibilità (SQL Server).
Ripristino in seguito a un'emergenza
In questa sezione vengono descritti dettagliatamente i passaggi da seguire in caso di interruzione della
replica primaria nel data center primario. Viene inoltre analizzata la procedura per ripristinare la disponibilità
della replica primaria dal data center di ripristino di emergenza. L'interruzione della replica primaria può
essere provocata da uno o più dei motivi seguenti:



Errori di tutti i nodi delle istanze del cluster di failover nel data center primario
Errori delle risorse di archiviazione delle istanze del cluster di failover nel data center primario
Errori o interruzioni della rete che interessano l'intero data center primario
In questi scenari si rendono necessarie determinate azioni nel data center di ripristino di emergenza per
riprendere l'esecuzione del servizio SQL Server alle applicazioni.
La Figura 10 mostra la finestra Informazioni sul quorum del cluster relativa a questo scenario. Le
informazioni sono accessibili dal dashboard AlwaysOn, utilizzando il collegamento Visualizza
informazioni sul quorum del cluster. Il quorum è quello di una situazione precedente al verificarsi di
un'emergenza, in cui entrambi i nodi di DR possiedono zero voti.
27
Figura 10: stato dei voti del quorum del cluster prima di una situazione di emergenza
Nel flusso di lavoro seguente vengono indicati i passaggi necessari per ripristinare un gruppo di disponibilità
nel data center di ripristino di emergenza in caso di interruzione del data center primario.
1. Forzare il quorum su uno dei nodi di DR e assicurarsi che i nodi nel data center primario non formino
il proprio quorum.
È improbabile che Gestione cluster di failover avviato su un nodo di ripristino di emergenza fornisca
inizialmente informazioni utili sullo stato del cluster WSFC, perché il cluster non possiede più il
quorum.
Figura 11: Gestione cluster di failover dopo che si è verificata un'emergenza e prima del ripristino
Poiché dipendono da un cluster WSFC funzionante, le istanze del cluster di failover sono accessibili
a meno che non siano attivi sia un quorum del cluster sia il servizio cluster. In uno scenario in cui lo
stato del data center primario è incerto e il servizio deve essere ripristinato dal data center secondario
di DR per rispettare l'obiettivo del tempo di recupero aziendale, è necessario forzare il quorum su
uno dei nodi di DR.
Il comando di Windows PowerShell seguente forza il quorum su uno dei nodi di DR.
28
Start-ClusterNode –Name “DRNODE1” –FixQuorum
Dopo aver eseguito il comando, si otterrà un output simile al seguente.
Name
------drnode1
State
-------Joining
Nota: se il servizio cluster è ancora in esecuzione su “DRNODE1”, è possibile utilizzare il
comando seguente in Windows PowerShell per arrestare il servizio prima di avviare
nuovamente il servizio cluster con il quorum forzato.
Stop-ClusterNode –Name “DRNODE1”
Per informazioni sugli altri strumenti che è possibile utilizzare per forzare il quorum, come
cluster.exe o Gestione cluster di failover, vedere Forzare l'avvio di un cluster WSFC senza quorum.
2. Aprire Gestione cluster di failover per verificare lo stato del cluster Windows. A questo punto il
cluster Windows deve essere attivo e in stato di quorum forzato e l'istanza del cluster di failover
secondaria deve essere attiva. L'istanza del cluster di failover del data center primario sarà ancora
offline, come le risorse del gruppo di disponibilità.
Figura 12: Gestione cluster di failover dopo la forzatura del quorum
3. Portare online il gruppo di disponibilità nell'istanza del cluster di failover di ripristino di emergenza.
Attenzione: se la replica è configurata con la modalità asincrona, il ripristino del servizio rischia di
causare la perdita di dati per gli eventuali record di log non inviati. Assicurarsi di valutare
correttamente le conseguenze di questa azione.
Per ulteriori informazioni sulle azioni da intraprendere prima, durante e dopo questo tipo di failover
manuale, vedere Eseguire un failover manuale forzato di un gruppo di disponibilità (SQL Server).
Tramite SQL Server Management Studio connettersi all'istanza del cluster di failover nel data center
di DR. I database di disponibilità dovrebbero indicare lo stato “Non in sincronizzazione”. L'istanza del
cluster di failover apparirà in stato “Risoluzione”, come illustrato nella Figura 13.
29
Figura 13: Esplora oggetti in SQL Server Management Studio dopo la forzatura del quorum
Notare nella Figura 13 che l'altra replica, che in questo esempio è ”SQLFCIPrimary\INST_A”, non
mostra alcuno stato in Esplora oggetti all'interno della cartella “Repliche di disponibilità” di AG1.
Si tratta dell'istanza del cluster di failover del data center primario che è non più accessibile
a causa dell'interruzione.
Se il rischio di perdita di alcuni dati è accettabile e il servizio deve essere ripristinato nel data
center, eseguire la sintassi Transact-SQL riportata di seguito nell'istanza del cluster di failover di
ripristino di emergenza per forzare il failover.
ALTER AVAILABILITY GROUP [AG1]
FORCE_FAILOVER_ALLOW_DATA_LOSS;
A questo punto, i database all'interno del gruppo di disponibilità dovrebbero essere disponibili.
Vedere la Figura 14 per un esempio di stato di failover successivo alla forzatura.
30
Figura 14: Esplora oggetti dopo la forzatura del failover
Con il ritorno online, nuove connessioni al listener del gruppo di disponibilità vengono
automaticamente indirizzate alla replica primaria attuale, che è ora ospitata nell'istanza del
cluster di failover di ripristino di emergenza.
Notare inoltre che verranno ancora visualizzati vari messaggi di avviso relativi alla non disponibilità
dei nodi del data center primario in SQL Server Management Studio. Nella Figura 15 viene
mostrato un esempio della schermata.
31
Figura 15: dashboard AlwaysOn dopo un failover forzato
4. Da un nodo WSFC di DR rimuovere i voti dai nodi del data center primario e assegnare voti ai nodi
del data center di DR. I voti possono essere rimossi anche se i nodi del data center primario non
sono disponibili. I due nodi a cui è assegnato un peso di “1” sono i nodi WSFC di DR.
(Get-ClusterNode “DRNode1”).NodeWeight=1
(Get-ClusterNode “DRNode2”).NodeWeight=1
(Get-ClusterNode “PrimaryNode1”).NodeWeight=0
(Get-ClusterNode “PrimaryNode2”).NodeWeight=0
Nota: se il sito di DR deve essere utilizzato per un periodo di tempo prolungato, si
consiglia di aggiungere altri membri votanti (nodo WSFC o condivisione file).
Prima di continuare, è possibile verificare che i voti dei nodi siano stati modificati nel modo
desiderato tramite il comando di Windows PowerShell riportato di seguito.
Get-ClusterNode | fl NodeName, NodeWeight
Come già detto nel documento, la maggior parte degli ambienti delle grandi aziende prevede normalmente
una separazione dei compiti tra i ruoli di amministratore del database, amministratore di Windows
Server (o del cluster) e amministratore di rete. Nella tabella seguente viene riepilogato il flusso di lavoro
del ripristino di emergenza descritto in precedenza, indicando le aree che tipicamente rientrano nella
competenza dei vari ruoli aziendali dal punto di vista della pianificazione.
32
Passaggio
Amministratore
del database
1. Verificare l'attuale stato del
data center primario e dei
restanti nodi di ripristino di
emergenza WSFC,
coordinando gli interventi.
2. Forzare il quorum su uno dei
nodi nel sito di DR per
accedere all'istanza del
cluster di failover di DR.
3. Forzare il failover del gruppo
di disponibilità all'istanza del
cluster di failover di ripristino
di emergenza.
4. Aggiungere i voti ai nodi di
DR e rimuovere i voti dai
nodi primari.
Sì
Amministratore di
Windows Server/del
cluster
Sì
Amministratore
di rete
Sì
Sì
Sì
Sì
Tabella 3: ripristino in seguito a un'emergenza in base al ruolo
Ripristino del data center primario
Nello scenario illustrato in questo documento si presuppone che il ripristino del servizio nel data center
di ripristino di emergenza costituisca uno stato temporaneo in attesa della risoluzione dei problemi del
data center primario. Uno scenario di interruzione può presentare diverse variazioni, che si ripetono
quindi anche nella fase di ripristino. Nello scenario descritto qui si presuppone una situazione di
emergenza in cui i server del data center primario sono inattivi per un periodo di tempo prolungato.
Una volta risolti i problemi e riattivati i nodi nel data center primario, tali nodi tentano di connettersi al
cluster WSFC. Dopo la riconnessione al cluster WSFC con i servizi cluster in esecuzione, i pesi assegnati al
nodo di ripristino di emergenza dovrebbero tornare effettivi. Inoltre, nello scenario si presuppone che le
installazioni originali di SQL Server e i database associati siano ancora intatti.
Lo stato della replica nell'istanza del cluster di failover nel data center primario in cui si è precedentemente
verificato l'errore sarà “Non in sincronizzazione” (vedere la Figura 16).
33
Figura 16: SQL Server Management Studio dopo il ripristino dell'istanza del cluster di failover primaria ma prima della ripresa
del gruppo di disponibilità
L'istanza di SQL Server del sito di DR (in questo esempio “SQLFCIDR\DC2”) è ancora la replica primaria.
Notare inoltre il simbolo di “Pausa” accanto a ogni database di disponibilità sotto la cartella Database di
disponibilità.
A questo punto è necessario valutare se sia necessario recuperare eventuali dati (ovvero le modifiche
apportate ai dati nella replica primaria originale non inviate alla replica DR appena prima del verificarsi
dell'emergenza) o procedere con la riattivazione delle sessioni di replica.
Attenzione: la ripresa delle repliche del gruppo di disponibilità in questa fase potrebbe provocare la
perdita di dati. Se tale perdita non è accettabile, è necessario recuperare i dati prima di riprenderne lo
spostamento. Per contro, se non si riprende l'attività del gruppo di disponibilità, i file di log delle transazioni
continuano ad aumentare di dimensione nei database di replica di DR.
Un metodo per recuperare i dati consiste nel creare uno snapshot del database nei database secondari
sospesi (ovvero i database primari originali) allo scopo di estrarre i dati appropriati necessari per la
risincronizzazione con la versione della replica di DR dei database di disponibilità. Nell'esempio seguente
viene mostrato come creare uno snapshot del database in un database di disponibilità con stato “Non in
sincronizzazione”.
-- Create the database snapshot
CREATE DATABASE AppDB_A1 ON
( NAME = AppDB, FILENAME =
'R:\MSSQL11.MSSQLSERVER\MSSQL\Data\AppDB_A1.ss' )
AS SNAPSHOT OF AppDB;
GO
34
È ora possibile estrarre i dati richiesti dallo snapshot del database e inserirli in modo appropriato nella
replica primaria attuale, prima di procedere con la ripresa dello spostamento dei dati.
Nota: per ulteriori informazioni sui rischi della forzatura del failover e sulla riduzione della
perdita di dati, vedere Failover e modalità di failover (gruppi di disponibilità AlwaysOn).
Una volta valutata e risolta in modo soddisfacente la questione della perdita di dati e giunto il momento
di ripristinare il servizio nel data center primario, il passaggio successivo consiste nel riportare in modo
controllato il ruolo di replica primaria al data center primario:
1. Avviare la migrazione controllata di ritorno al data center primario aggiungendo nuovamente
i voti del quorum ai due nodi del data center primario. Dopo avere configurato questa
impostazione, verificare di nuovo che tutti i nodi nel cluster WSFC possiedano un voto.
2. Per riprendere le sessioni di ogni database che fa parte del gruppo di disponibilità, eseguire una
serie di comandi ALTER DATABASE di Transact-SQL sull'istanza del cluster di failover del data
center primario. Esempio:
ALTER DATABASE AppDB SET HADR RESUME;
GO
ALTER DATABASE ConfigDB SET HADR RESUME;
GO
ALTER DATABASE ReportDB SET HADR RESUME;
GO
3. Per effettuare la sincronizzazione prima del failover, modificare il gruppo di disponibilità
nell'istanza del cluster di failover di DR in modo da utilizzare temporaneamente la modalità di
disponibilità con commit sincrono. Idealmente, il commit sincrono deve essere impostato
durante un periodo di bassa attività dell'applicazione per ridurre l'impatto sugli utenti della
latenza delle transazioni.
Di seguito è riportato un esempio del comando Transact-SQL (eseguito sull'istanza del cluster di
failover primaria attuale nel data center di ripristino di emergenza), dove AG1 è il gruppo di
disponibilità e la replica nel data center primario è definita come SQLFCIPrimary\INST_A.
USE [master]
GO
ALTER AVAILABILITY GROUP [AG1]
MODIFY REPLICA ON N'SQLFCIPrimary\INST_A' WITH
(AVAILABILITY_MODE = SYNCHRONOUS_COMMIT);
GO
Nella stessa sessione di SQL Server Management Studio eseguire il comando riportato di seguito
per impostare il commit sincrono anche sulla replica di DR.
USE [master]
GO
ALTER AVAILABILITY GROUP [AG1]
MODIFY REPLICA ON N'SQLFCIDR\INST_B' WITH
35
(AVAILABILITY_MODE = SYNCHRONOUS_COMMIT);
GO
4. Verificare lo stato della sincronizzazione tra le due posizioni. Per proseguire con il passaggio
successivo è necessario che lo stato delle due repliche sia “Integro”, a indicare che le repliche,
entrambe con commit sincrono, sono sincronizzate.
SELECT
role_desc,
synchronization_health_desc
FROM sys.dm_hadr_availability_replica_states;
5. Per eseguire il failover dall'istanza del cluster di failover del data center di ripristino di
emergenza all'istanza del cluster di failover del data center primario precedente, connettere ed
eseguire lo script riportato di seguito sull'istanza del cluster di failover del data center primario
che diventerà la nuova replica primaria.
ALTER AVAILABILITY GROUP [AG1] FAILOVER;
6. Se la topologia in uso è impostata sulla modalità a prestazioni elevate, come detto in precedenza,
impostare di nuovo il nodo della replica dell'istanza del cluster di failover di ripristino di
emergenza sul commit asincrono. Eseguire il comando Transact-SQL riportato di seguito sulla
replica primaria.
USE [master]
GO
ALTER AVAILABILITY GROUP [AG1]
MODIFY REPLICA ON N'SQLFCIDR\INST_B' WITH
(AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT);
GO
USE [master]
GO
ALTER AVAILABILITY GROUP [AG1]
MODIFY REPLICA ON N'SQLFCIPrimary\INST_A' WITH
(AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT);
GO
7. Rimuovere i voti del quorum dai nodi di ripristino di emergenza.
36
Nella tabella seguente viene riepilogato il flusso di lavoro del ripristino di emergenza descritto in
precedenza, indicando le aree che tipicamente rientrano nella competenza dei vari ruoli aziendali dal
punto di vista della pianificazione.
Passaggio
1. Dopo il ripristino del servizio,
dei nodi e delle istanze del
cluster di failover del data
center primario, aggiungere di
nuovo i voti del quorum ai nodi
primari originali.
2. Riprendere le sessioni dei
database di disponibilità su
ogni replica secondaria.
3. Impostare la replica
dell'istanza del cluster di
failover di ripristino di
emergenza e la replica
dell'istanza del cluster di
failover del data center
primario sul commit sincrono.
4. Verificare lo stato della
sincronizzazione tra le due
posizioni. Per proseguire con il
passaggio successivo
è necessario che lo stato di
entrambe le repliche sia
“Integro”.
5. Eseguire il failover a una
replica dell'istanza del cluster
di failover nel data center
primario.
6. Ripristinare il commit asincrono
nella replica di ripristino di
emergenza (per la
corrispondenza con la
configurazione originale).
7. Rimuovere i voti dai nodi WSFC
di DR.
Tabella 4: ripristino del data center primario
37
Amministratore
del database
Amministratore di
Windows
Server/del cluster
Sì
Sì
Sì
Sì
Sì
Sì
Sì
Amministratore
di rete
Conclusione
È possibile utilizzare i gruppi di disponibilità AlwaysOn di SQL Server 2012 per sostituire il mirroring del
database nelle topologie che utilizzano le istanze del cluster di failover per la disponibilità elevata e il
mirroring del database per il ripristino di emergenza. Questo modello di progettazione offre funzionalità
più ampie rispetto a quelle delle versioni precedenti, consentendo l'uso di unità di failover con più
database, repliche di sola lettura e altro ancora. Lo scopo di questo white paper è stato presentare una
nuova soluzione per HA e DR basata su istanze del cluster di failover AlwaysOn e gruppi di disponibilità
AlwaysOn per sostituire l'architettura legacy.
Il successo della distribuzione di una soluzione HA/DR di questo tipo dipende non solo dal team di
amministrazione del database, ma anche dalla stretta collaborazione tra tale team, il team di
amministrazione di Windows Server e il team dei servizi di rete dell'organizzazione IT. Lo scambio di
informazioni e il supporto incrociato delle competenze sono di estrema importanza nella distribuzione
della soluzione HA/DR.
Riferimenti













38
Modelli di progettazione per la disponibilità elevata e il ripristino di emergenza di SQL Server 2012
AlwaysOn (http://go.microsoft.com/fwlink/?LinkId=255048)
Guida alle soluzioni Microsoft SQL Server AlwaysOn per la disponibilità elevata e il ripristino di
emergenza (http://msdn.microsoft.com/library/hh781257.aspx)
Istanze del cluster di failover AlwaysOn (SQL Server)
(http://technet.microsoft.com/library/ms189134.aspx)
Panoramica di Gruppi di disponibilità AlwaysOn (SQL Server)
(http://technet.microsoft.com/library/ff877884(v=SQL.110).aspx)
Clustering di failover e gruppi di disponibilità AlwaysOn (SQL Server)
(http://technet.microsoft.com/library/ff929171.aspx)
Prerequisiti, restrizioni e consigli per i gruppi di disponibilità AlwaysOn (SQL
Server)(http://technet.microsoft.com/library/ff878487(v=sql.110).aspx)
Guida dettagliata sui cluster di failover: configurazione del quorum in un cluster di failover
(http://technet.microsoft.com/library/cc770620(v=WS.10).aspx)
Hotfix di Windows Server per i voti del quorum (http://support.microsoft.com/kb/2494036)
Windows PowerShell (http://technet.microsoft.com/library/bb978526)
Mapping dei comandi di Cluster.exe ai cmdlet di Windows PowerShell per i cluster di failover
(http://technet.microsoft.com/library/ee619744(v=WS.10).aspx)
Manuale di riferimento di base per Windows PowerShell
(http://social.technet.microsoft.com/wiki/contents/articles/183.windows-powershell-survivalguide-it-it.aspx)
Cmdlet specifici per i cluster di failover in Windows PowerShell
(http://technet.microsoft.com/library/ee461009.aspx)
SQL Server PowerShell (http://msdn.microsoft.com/it-it/library/hh245198.aspx)
Per ulteriori informazioni
Sito Web SQL Server (http://www.microsoft.com/italy/server/sql/)
TechCenter di SQL Server (http://technet.microsoft.com/it-it/sqlserver/)
Risorse online per gli sviluppatori di SQL Server (http://msdn.microsoft.com/it-it/sqlserver/)
Il documento è risultato utile? Esprimere una valutazione utilizzando una scala compresa tra
1 (scarso) e 5 (eccellente), indicandone i motivi. Ad esempio:


La valutazione è alta perché il documento contiene esempi validi, catture di schermate
nitide, spiegazioni chiare o altri motivi?
La valutazione è bassa perché il documento contiene esempi confusi, catture di
schermate sfocate, spiegazioni poco chiare?
I commenti aiuteranno Microsoft a migliorare la qualità dei white paper pubblicati.
Commenti e suggerimenti
39