mercoledì 10 ottobre 2012

Il contatore PerfMon Zombie che non muore mai! Suggerimento rapido


I CONTATORI PERFMON CHE PROPRIO NON MORIRÀ

Una delle cose che è allo stesso tempo grande e orribile di Internet è che qualcosa, una volta viene pubblicato nel etere, che non va mai in fondo via. (Un giorno, i politici si renderanno conto di questa. Possiamo facilmente infatti verificarne la coerenza). A causa della longevità del contenuto pubblicato a Internet, un sacco di argomenti tuning delle prestazioni diventano "zombie". Abbiamo Shoot 'em in morti, ma continuano a tornare!

In altre parole, tali raccomandazioni vecchi  erano  una best practice suggerite per molto tempo fa, per una versione specifica di SQL Server, ma sono ormai inadeguato per la versione più recente. Non è raro per me, quando si parla in una conferenza, di incontrare qualcuno che è ancora aggrappato alle impostazioni e tecniche che non sono state le buone prassi sin dai tempi di SQL Server 2000. Ecco un esempio di  Microsoft SQL Server 2000 Best Practices che sono molto specifiche della versione .
Quindi, ecco un esempio. Il disco del contatore% Tempo e la lunghezza della coda del disco sono stati fortemente raccomandato come un indicatore di prestazioni chiave per le prestazioni IO. SQL Server genera un sacco di IO i dischi utilizzando scatter / gather per massimizzare l'utilizzo del disco basato su sottosistema IO.Questo approccio porta a brevi sequenze di profondità coda lunghi durante posti di blocco e letture in anticipo per un'istanza di SQL Server. A volte il carico di lavoro del server è tale che il disco non può tenere il passo con l'IO spinse a lui e quando ciò accade, vedrete lunghezza delle code lunghe. Lo scenario di breve raffica non è un problema. L'allungamento scenario lunghezza della coda è di solito un problema.   
Così è che una buona pratica?
In una parola, non così tanto.

Tali contatori possono ancora essere di qualche utilità in un'istanza di SQL Server, che dispone di una sola unità disco rigido. Ma questo è  estremamente  raro in questi giorni. Perché?

Il contatore PerfMon tempo% del disco è uno spettacolo falso metrica per diversi motivi. Essa non tiene conto asincrone di I / O richieste. Non si può dire che cosa il profilo delle prestazioni reale è per un set RAID sottostante può essere, in quanto contengono più unità disco. Il contatore PerfMon Lunghezza coda del disco è anche in gran parte inutile, se non per il SQL Server con un solo disco fisico, perché la cache del controller del disco rigido offusca il numero di operazioni di IO sono in realtà in attesa nella coda o no. In effetti, alcuni dischi rigidi hanno anche cache di scrittura piccoli pure, che intorbida l'acqua era ulteriormente se il IO è veramente in coda, in una cache da qualche parte tra il sistema operativo e il disco, o ha finalmente fatto tutta la strada alla CMOS  sul disco.

MEGLIO IO PERFMON CONTATORI

Invece di utilizzare quei segnalini PerfMon, utilizzare il disco di Ave Letture / sec, medio di scrittura del disco / sec e Media Trasferimenti disco / sec per monitorare il rendimento dei sottosistemi disco. Questi contatori tenere traccia del numero medio di lettura IO, IO scrivere, e leggere insieme e scrivere IO al verificato nell'ultimo secondo. Di tanto in tanto, mi piace seguire le stesse metriche in volume di dati piuttosto che il tasso delle operazioni di IO. Quindi, per ottenere che i dati, si potrebbe desiderare di dare a questi volumi specifici contatori PerfMon una prova: Media Byte di trasferimento su disco / sec, Ave Byte letti da disco / sec e scrittura del disco medio Byte / sec.

PER LE PRESTAZIONI DI SQL SERVER IO, USA VISTE A GESTIONE DINAMICA (DMV)

E a meno che non abbiate vissuto in una caverna, è necessario assicurarsi di utilizzare viste a gestione dinamica di SQL Server (DMV) per verificare le prestazioni IO per le versioni più recenti di SQL Server. Alcuni dei miei preferiti DMV per IO includono:
  • Sys.dm_os_wait_stats
  • Sys.dm_os_waiting_tasks
  • Sys.dm_os_performance_counters
  • Sys.dm_io_virtual_file_stats
  • Sys.dm_io_pending_io_requests
  • Sys.dm_db_index_operational_stats
  • Sys.dm_db_index_usage_stats
Molti di questi sono completamente DMV documentare in questo articolo documentazione in linea qui a Microsoft SQL Server 2012 Indice viste a gestione dinamica e funzioni .

Allora come stai monitoraggio parametri di rendimento IO? Quali stai usando?

Non vedo l'ora di sentire di nuovo da voi!

mercoledì 3 ottobre 2012

Backup remoto da Windows Server 2012 e System Center 2012 Data Protection Manager su Windows Azure Online Backup


Uno dei servizi utili messi a disposizione da Windows Azure per chi gestisce i server di infrastruttura è la funzionalità di Online Backup.
Sappiamo tutti bene come del backup ci ricordiamo solo quando abbiamo dei problemi o abbiamo perso dei dati, le procedure di recovery non vengono in pratica mai provate realmente e le soluzioni di backup su siti differenti sono spesso scartate a causa di costi di acquisizione e di gestione elevati.
Windows Azure Online Backup consente di eseguire un backup remoto, sul cloud, direttamente da Windows Server 2012, Windows Server 2012 Essentials e da System Center 2012 Data protection Manager.
Questo servizio, al momento disponibile in preview in alcune nazioni, consente tramite un agent, di eseguire il backup di macchine (fisiche e virtuali) con Windows Server 2012 direttamente nel cloud, consentendo di ridurre i costi relativi all’hardware di backup e di avere a disposizione un backup remoto protetto e sicuro.
Inoltre, con il Service Pack 1 di System Center 2012 Data Protection Manager, è possibile integrare in DPM le procedure di backup “locali” su disco della propria infrastruttura con le funzionalità di backup remoto su Windows Azure Online Backup. Potete approfondire l’argomento nell’articolo di Silvio Di Benedetto, MVP System Center Cloud and Datacenter Management, dedicato proprio all’integrazione tra Windows Azure Online Backup e Data Protection Manager.
Come sempre inoltre è possibile utilizzare Windows PowerShell per interfacciarsi anche da riga di comando tramite script e cmdlet a questo servizio, e il backup lavora a livello di singoli blocchi di dati e non di interi file, in modo tale da ottimizzare tempi di backup, dati trasferiti e storage utilizzato.
Inoltre, i dati vengono compressi e cifrati in locale prima di essere inviati su Windows Azure, consentendo di avere la massima sicurezza possibile sia in fase di trasferimento tramite rete del backup, sia quando il backup è memorizzato nello storage di Windows Azure.
L’integrità del backup viene verificata direttamente su Windows Azure, in modo tale da poter scoprire eventuali inconsistenze dovute ad esempio a corruzioni di blocchi durante il trasferimento tramite rete, e ovviamente gli amministratori possono decidere l’utilizzo della banda allocata alle procedure di backup e restore delle macchine e le retention policy del backup in base alle esigenze aziendali o legali.
E’ possibile provare il servizio registrandosi online sul sito di Windows Azure Online Backup e attivando un account di prova da 300 GB. Una volta registrati è possibile scaricare dal portale di gestione l’agent per Windows Server 2012 e a provare anche l’integrazione con System Center 2012 Data Protection Manager Service Pack 1.
A breve il servizio sarà disponibile anche per l’Italia.
Buon Backup!