En esta sesión veremos las nuevas posibilidades de topologías Clustering de la mano de SQL Server 2012 y AlwaysOn para aprovechar al máximo los recursos de los que disponemos en OnPremise
2. EN CUMPLIMIENTO CON LA LEY 15/1999 DE PROTECCION DE DATOS DE
CARÁCTER PERSONAL, PONEMOS EN TU CONOCIMIENTO QUE
ESTA SESIÓN VA A SER GRABADA
POR SOLIDQ Y QUE ESTA GRABACIÓN PODRÍA SER UTILIZADA COMO MATERIAL
DE MARKETING Y HACERSE PUBLICA A TRAVÉS DE DIVERSOS MEDIOS, COMO
POR EJEMPLO NUESTRA PAGINA WEB.
TENIENDO EN CUENTA QUE TU IMAGEN PUEDE APARECER EN ESA GRABACIÓN,
SI NO DESEAS APARECER, ROGAMOS NOS LO COMUNIQUES POR LOS MEDIOS
QUE YA CONOCES.
COMUNICADO
2
3. Objetivos de la sesión
• ¿Qué es Failover Clustering?
• Novedades en SQL Server 2012
• Entender qué es y cómo funciona un Failover
• Buenas prácticas
3
4. SQL Server FCI
Historia
4
Introducido en SQL Server 6.5 y NT 4.0
Bastantes novedades entre versión y versión
Antes de SQL Server 2005, requerido
Enterprise Edition
– Desde SQL Server 2005, versión estándar con
soporte 2 nodos
– SQL 2012 BI Edition también soporta 2 nodos
5. SQL Server FCI
Definición FCI
5
Una única instancia SQL Server
Hospedada en Windows Server Failover
Clustering Service (WSFC)
– Como servidor “virtual”
– Con nombre e IP “virtual”
– Utilizando discos “compartidos”
Recursos nativamente soportados
– Database engine
– Agente
– Analisis Services
6. SQL Server FCI
Definición FCI
6
Solo activo en un único nodo
– Activo/Pasivo SIEMPRE!
Se ve como una única unidad
– Nombre, IP, discos y servicios
7. SQL Server 2012 FCI
Nuevas características
7
Clusters multi-subnet
– Múltiples redes
– Cada una puede estar en una subnet
– Os suenan los clusters multi-site?
Mejorado algoritmo detección Failover
– Mas flexibilidad
Nueva funcionalidad checkpoint
– Tiempos de startup mas fiables
Tempdb locales
– Se puede usar tu SSD comprado en mercadona para
tempdb!!
8. SQL Server FCI
MS DTC
8
No requerido por defecto
Requerido MS DTC solo si:
– Se instalará SQL Server Integration Services
– Se van a usar transacciones distribuidas
Sigue siendo buena idea instalarlo
– Se puede instalar y configurar ONLINE a
posteriori
9. SQL Server 2012 FCI
Instalación
9
Dos formas de hacerlo:
1. Instalar un primer nodo usando wizard
– Añadir después el resto de nodos con wizard
también
2. Lanzar el “Prepare Failover Cluster setup”
en cada nodo del Cluster
– Finalizar el setup en cualquiera de los nodos
10. SQL Server 2012 FCI
Pantallas involucradas en instalación clustering
10
11. SQL Server 2012 FCI
Añadir/Quitar nodos
11
• Para añadir nodo
• Usar Setup
• Para quitar nodo
1. Usar setup para quitarlo
2. Si es el último nodo hay que ir a agregar y
quitar programas y eliminar las características
SQL Server existentes (SSMS)
• La configuración Cluster se elimina con el último
automáticamente
13. SQL Server FCI
Instalación
13
Ante errores raros, desconfía de tu .ISO
– Valida MD5 y maximiza tu tiempo libre
Pon siempre contraseña y luego usuario al hacer
copia-pega
16. SQL Server FCI
La pantalla de la muerte
16
Create un SlipStream!
– Corregido en SQL 2008 R2 SP2
– SQL Server 2012 SP1 buggy
Listar los discos
lleva cerca de 1h
si hay una gran
cantidad
17. Mantenimiento SQL Server FCI
Detección de Failover
17
Detección de Failover hasta SQL 2008 R2
– Resource DLL lanza “SELECT @@servername”
cada 60 segundos
– Failover iniciado si no se devuelven resultados
– Peligro de Failover ante servidores sobrecargados
(procesa, compila,…)
– No se valida ninguna condición
Consulta demasiado simple
19. Mantenimiento SQL Server FCI
Detección de Failover en SQL Server 2012
19
Frecuencia de chequeo configurable
– Propiedad HealthCheckTimeout
En milisegundos
Por defecto 60000
ALTER SERVER CONFIGURATION SET FAILOVER
CLUSTER PROPERTY HealthCheckTimeout = ###;
20. Mantenimiento SQL Server FCI
Detección de Failover en SQL Server 2012
20
La primera caja negra de SQL Server
Resource DLL ahora llama sp_server_diagnostics
– 3 ejecuciones por cada HealthCheckTimeout
– Fallos de conexión o devolución datos causarán
Failover
– Conexión dedicada para evaluación de alta prioridad
sp_server_diagnostics configurable
– Siguiente slide
21. Mantenimiento SQL Server FCI
Detección de Failover en SQL Server 2012
21
ALTER SERVER CONFIGURATION SET FAILOVER
CLUSTER PROPERTY FailureConditionLevel = #;
Level Condition Failover or Restart Conditions
0 No automatic failover or restart No automatic failover or restart
ever
1 Failover or restart on server down SQL Server service is down
2 Failover or restart on server unresponsive SQL Server instance is not
responsive
3 Failover or restart on critical server errors
(default)
sp_server_diagnostics returns
“system error”
4 Failover or restart on moderate server
errors
sp_server_diagnostics returns
“resource error”
5 Failover or restart on any qualified failure
condition
sp_server_diagnostics returns
“query_processing error”
22. SQL Server FCI
Indirect Checkpoints
22
Nuevo en SQL Server 2012
Activable por base de datos
Provee tiempos de Failover mas fiables
ALTER DATABASE …
SET TARGET_RECOVERY_TIME =
target_recovery_time { SECONDS | MINUTES }
23. Multi-Site Failover Clustering
Vistazo rápido
23
El Failover típicamente ocurre en disposición
geográfica diferente
Poco que añadir a lo ya conocido
– Muy transparente, como de costumbre
– No hay discos compartidos
Se maneja con dependencias OR de IP
– Necesario Hotfix de librerías de conexión .NET
Cuidado con las DNS
24. Multi-Site Failover Clustering
Versiones anteriores a SQL Server 2012
24
SAN Replication
Node A Node B
VLAN Connection
NetName: SQLClust
Data Center 1 Data Center 2
IP: 10.10.10.2
25. Multi-Site Failover Clustering
Versiones anteriores a SQL Server 2012
25
Almacenamiento
– Replicación de almacenamiento entre dos sites
Carísimo
Realizado vía SAN o NAS, nosotros poco podemos
hacer
Red
– Necesario montar VLAN entre los sites para estar
en la misma red
26. Multi-Site Failover Clustering
A partir de SQL Server 2012
26
Configuración automáticamente detectada
Alguna de las redes debe estar activa
Soportado a partir de Windows Server 2008
R2
– Aparece por primera vez dependencias OR en
recursos IP
27. Multi-Site Failover Clustering
A partir de SQL Server 2012
27
SAN Replication
Node A Node B
NetName: SQLClust
Data Center 1 Data Center 2
IP: 192.169.1.5IP: 10.10.10.2 OR
SQL Server 2012
30. SQL Server FCI
Buenas prácticas
30
Se pueden añadir varios nodos a la vez a un
mismo Cluster
– Pero no añadir el mismo nodo a varios clúster a
la vez
No se pueden instalar varios Clusters
simultáneos
– Recomendable instalar primeros nodos y luego
añadir todo a la vez
31. SQL Server FCI
Buenas prácticas
31
Quorum
– Node y File Share Majority
Numero par de nodos
– Node Majority
Numero impar de nodos
– Disco
Solo recomendado para casos puntuales de maximizar
nº de nodos caídos
32. SQL Server FCI
Buenas prácticas
32
Tempdb en discos locales
– Misma ruta en todos los nodos
NUNCA utilizar admin dominio para cluster
service account
NUNCA reutilizar el cluster service account
con otros servicios
Piensa siempre en el peor escenario
33. Conclusiones
Objetivos de la sesión
33
• Ya sabemos qué es Failover Clustering
• Novedades en SQL Server 2012
• Entender qué es y cómo funciona un
Failover
• Buenas prácticas
35. ¡Gracias!
Siéntate a comer con nosotros o tómate un café y aclara tus
dudas
35
@enriquecatala
Mentor
Enrique Catalá
36. Si quieres disfrutar de las mejores sesiones de
nuestros mentores de España y Latino América,
ésta es tu oportunidad.
http://summit.solidq.com/madrid/
Síguenos:
36