Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Pgina 1 de 5
Quick Links
| Home | Worldwide
Go
TechNet Home
Search for
Go TechNet Magazine Home March 2007 Back Issues Code Downloads RSS Topics Subscribe Order Back Issues Reader Services Submit an Article Contact the Editors Meet the Staff Corrections Advertising Inquiries CD Offer Blog Podcast TechNet Flash TechNet Magazine UK MSDN Magazine
Elija su idioma:
Espaol
SQL Server
Tom Moreau
more ...
Un clster de servidor permite conectar varios servidores fsicos, o nodos, que funcionan como asociados de conmutacin por error entre s. La redundancia que proporciona un clster se traduce en ms tiempo productivo para sus operaciones
crticas. He implementado un buen nmero de clsteres en mis 13 aos de trabajo con SQL Server y cada uno de ellos present un grupo de problemas nico. Esta experiencia me ha permitido recopilar varias sugerencias que pueden ayudarle a que sus esfuerzos por usar el clster sean ms sencillos y eficaces. Los clsteres de servidor aprovechan las capacidades integradas de clster de Enterprise Edition de la familia Windows Server. De hecho, con fines de implementacin de clsteres, Windows Server 2003 es con diferencia mejor que Windows 2000 Advanced Server. Para maximizar las prestaciones que obtendr de los clsteres, necesitar el hardware adecuado y, para ello, tendr que realizar algunos gastos. No basta con aadir un par de servidores con un disco compartido y no puede depender del hecho de que algunos componentes individuales aparezcan o no en Windows Catalog (anteriormente conocido como Lista de compatibilidad de hardware). Todo el sistema en su conjunto debe aparecer en Windows Catalog. Pero no se preocupe, existen algunas soluciones de clster rentables y aprobadas. En la figura 1 se muestra una configuracin tpica de clster.
Figura 1 Un clster tpico (Hacer clic en la imagen para ampliarla) Por supuesto, el hardware no constituye la nica consideracin que debe tener en cuenta en sus cavilaciones sobre el clster; adems, tambin necesita elegir la edicin correcta de SQL Server 2005. La edicin Enterprise Edition permite el uso de clsteres y presenta otras caractersticas tiles, como la capacidad de aprovechar ms las CPU, las vistas particionadas actualizables y distribuidas, el trasvase de registros integrado y el uso automtico de vistas indizadas. Si ya dispone de una licencia de Enterprise Edition, considere el clster, tenga o no los servidores necesarios (entre dos y ocho) para crear un clster tradicional (en breve hablaremos de los clsteres de un nodo). Si dispone de SQL Server 2005 Standard Edition, puede instalar un clster de dos nodos. Las ediciones Windows Server 2003 Enterprise y Datacenter se suministran con el clster integrado. Lo nico que tiene que hacer es ejecutar el Administrador de clsteres para configurarlo. Puede aadir todos los nodos al mismo tiempo o de uno en uno. De forma parecida, cuando instale SQL Server, podr elegir si desea instalar un servidor no agrupado individual o una instancia virtual en un clster. Si elige instalar una instancia virtual, podr instalar en todos los nodos del clster, slo en algunos o incluso en uno solo. Finalmente, para alcanzar el objetivo real de alta disponibilidad de clsteres, necesita contar con personas cualificadas y con unos procedimientos muy ensayados por si surgen problemas. Aunque el clster ofrece una buena garanta ante los errores de hardware, no puede impedir los errores de usuario, como los que pudiera causar un administrador de base de datos muerto de sueo en mitad de la noche.
Clsteres de un nodo
Aunque lo nico que necesite por el momento sea un nico servidor, considere la creacin de un clster de un nodo. Esto le permitir actualizar a un clster ms adelante sin tener que volver a crearlo. Slo tiene que asegurarse de que el hardware que elige se encuentra en la seccin de clster de Windows Catalog. La decisin de aadir un nodo ms adelante no tiene que deberse exclusivamente a motivos de alta disponibilidad. Piense en lo que puede ocurrir si descubre que su servidor no tiene la capacidad necesaria. Esto se traduce en una migracin, un proceso que conlleva tiempo y esfuerzo. Si tiene un clster de un nodo, la migracin es ms fcil con un tiempo de inactividad mucho menor. Agregue el nodo nuevo al clster, agregue los binarios y los Service Packs de SQL Server al nodo nuevo y, a continuacin, lleve a cabo una conmutacin por error en el nodo nuevo. Seguidamente, agregue cualquier actualizacin posterior a los Service Packs y, por ltimo, expulse el nodo antiguo. El tiempo de inactividad comprende nicamente el tiempo que se tarda en llevar a cabo la conmutacin por error y agregar las actualizaciones (si las hay).
Adicin de nodos
Puesto que todos los nodos de un clster deben ser idnticos, querr actuar cuanto antes para conseguir este nodo extra, en lugar de dejarlo para ms tarde. Si espera demasiado tiempo, el nodo podra dejar de fabricarse. En un proyecto, tuve que reconstruir un nodo en un clster de SQL Server 2000. Hice que la administracin de red/SO se encargara de la compilacin bsica del equipo y, a continuacin, intervine para volver a aadirla al clster y prepararla para su funcionamiento como nodo de SQL Server. Todo fue bien, hasta que realic una conmutacin por error en el nodo nuevo. Muy a mi pesar, dio errores enseguida. En resumen, aunque haba preparado un documento detallado sobre la creacin de un clster nuevo, incluida la adicin de las cuentas de servicio de clster y de servicio de SQL Server a ambos nodos, el documento no se haba seguido de forma explcita. El equipo de administracin no agreg estas cuentas de servicio al nodo reconstruido, por lo que ya no existan los privilegios que tenan antes de la reconstruccin. Tard bastante tiempo en localizar este error. Un da se me ocurri mirar en la pertenencia a grupos local. En cuanto agregu las dos cuentas, la conmutacin por error se llev a cabo sin problemas. Entonces llegu a una conclusin. La reconstruccin de un nodo es algo que no se hace a menudo y, cuando se hace, suele ser por una emergencia. Aunque haba confeccionado un documento, no se utiliz. Podramos haber automatizado la parte de seguridad al escribir sencillamente una secuencia de comandos breve que agregara estas dos cuentas y que realizara otras personalizaciones necesarias. No obstante, las cosas han mejorado en SQL Server 2005. El instalador requiere que se establezcan los grupos de nivel de dominio para las cuentas de servicio de SQL Server. Por supuesto, esto me hizo reflexionar de nuevo. Se pueden crear secuencias de comandos que invoquen CLUSTER.EXE para agregar el nodo a su clster Microsoft Cluster Server (MSCS). Lo nico que tiene que hacer es incluir el nombre del nodo en la secuencia de comandos y esta se encargar del resto. En una emergencia, la automatizacin es su mejor aliado.
Clsteres N + 1
A veces, el motivo de agregar un nodo a un clster no es la sustitucin de un nodo. Es posible que quiera agregar ms instancias de SQL Server al clster y cada una de ellas necesitar recursos de disco independientes. Aunque es posible ejecutar varias instancias en un solo nodo, todas compartirn la CPU y la RAM, y eso podra dar lugar a un rendimiento pobre. La situacin ideal es que en cada nodo se ejecute nicamente una instancia. Cmo se puede garantizar esto al realizar la conmutacin por error? Es sencillo: la respuesta es que un nodo no contiene servicios en ejecucin, mientras que cada uno del resto de los nodos ejecuta una instancia de SQL
http://www.microsoft.com/technet/technetmag/issues/2007/03/SQLClusters/default.aspx?loc=es/
18/12/2007
SQL Server: Los mejores consejos para el clster de SQL Server -- TechNet Magazine, March 2007
Pgina 2 de 5
Server. En realidad, esa es la definicin de un clster N + 1: N instancias que se ejecutan en N + 1 nodos. El nodo extra es la copia de seguridad.
Equilibrio de carga
Empecemos por desacreditar un concepto errneo muy comn. Los clsteres de MSCS se utilizan para obtener una disponibilidad alta, pero no para equilibrar la carga. Adems, SQL Server no incluye ninguna capacidad automtica de equilibrio de carga. Tendr que equilibrar la carga mediante el diseo fsico de la aplicacin. Qu significa eso? Cuando una tabla aumenta de tamao, es lgico esperar que se produzca cierta reduccin en el rendimiento, especialmente cuando se llevan a cabo bsquedas en ella. Cuando alcanza los millones o los miles de millones de filas, la solucin tradicional ha sido utilizar vistas particionadas, que se confeccionan a partir de tablas con esquemas idnticos agrupadas mediante UNION ALL. Adems, se emplean restricciones CHECK para diferenciar las tablas miembro y, de esta forma, se evita la duplicacin de datos en la vista particionada. Si la columna que se utiliza en la restriccin CHECK forma tambin parte de la clave principal, la vista podr actualizarse. Si las tablas miembro se encuentran en sus propios grupos de archivos, puede que obtenga un mayor rendimiento del disco si los archivos de estos grupos se encuentran en unidades fsicas separadas. Las tablas pueden estar incluso en bases de datos separadas. Sin embargo, en SQL Server 2005, siempre que los datos se encuentren en la misma base de datos, podr utilizar la particin de tablas, que resulta mucho ms fcil de implementar. Pero supongamos que ha hecho todo lo que ha podido con la particin de tablas o con las vistas particionadas (locales) y el rendimiento sigue siendo bajo. Si tiene SQL Server 2000 o SQL Server 2005, puede utilizar las vistas particionadas distribuidas. La diferencia principal es que las tablas miembro pueden residir en instancias diferentes de SQL Server, y estas instancias se pueden instalar en un clster N + 1. Por qu es esta una buena idea? Si alguna tabla miembro pierde la conexin en una vista particionada, toda la vista se quedar sin conexin. Al incluir estos miembros como parte de un clster, dispondr de la confiabilidad que necesita para asumir los problemas de rendimiento y proporcionar equilibrio de carga.
Un enfoque combinado
Puesto que un reflejo puede encontrarse en una ubicacin bastante remota con respecto a la instancia principal, constituye una buena opcin para los planes de recuperacin de desastres (DR). Su clster puede ser la primera lnea de defensa pero, qu ocurre si utiliza tanto los clsteres como la creacin de reflejos? En una conmutacin por error de clsteres, si tiene un testigo como parte de la configuracin de creacin de reflejos, el reflejo se convertir en la instancia principal, mientras el servidor SQL Server en clster se conecta en lnea. Sin embargo, tenga en cuenta que la conmutacin por error de la nueva instancia principal no se realiza de manera automtica en el nuevo reflejo (en clster). En consecuencia, es mejor no permitir la conmutacin por error automtica en las bases de datos reflejadas cuando se utilicen junto con un clster. DR no es la nica razn por la que querr utilizar la creacin de reflejos; tambin es til si tiene que aplicar un Service Pack o una revisin a su instancia principal, en cuyo caso puede realizar manualmente la conmutacin por error en el reflejo. Al aplicar el Service Pack o la revisin, el servidor principal antiguo se queda sin conexin temporalmente y las transacciones realizadas que se producen en la nueva instancia principal se colocan en la cola, a la espera de ser devueltas al reflejo nuevo (instancia principal antigua). Una vez que se termina la instalacin del Service Pack o de la revisin, tendr lugar la sincronizacin y, al final, los dos servidores quedarn completamente sincronizados. Ahora, puede intercambiar las funciones de la instancia principal y el reflejo. El tiempo de inactividad ha abarcado nicamente los pocos segundos de llevar a cabo la conmutacin por error y por recuperacin. Puede utilizar este enfoque para migrar su SQL Server a otro equipo. Pero no realice la conmutacin por recuperacin.
http://www.microsoft.com/technet/technetmag/issues/2007/03/SQLClusters/default.aspx?loc=es/
18/12/2007
SQL Server: Los mejores consejos para el clster de SQL Server -- TechNet Magazine, March 2007
Pgina 3 de 5
Tom Moreaucuenta con una licenciatura y un doctorado y las certificaciones MCSE y MCDBA. Es consultor independiente especializado en la administracin, diseo e implementacin de bases de datos de SQL Server. Vive en Toronto, Canad. Tom lleva utilizando SQL Server desde 1993 y recibi el galardn MVP en 2001. Ha escrito ms de 100 artculos y es coautor de un libro sobre SQL Server. Gracias al MVP de SQL Server Geoff Hiten por su til aportacin. Extrado del March 2007 nmero de TechNet Magazine. Le agradecemos cualquier comentario. No dude en enviarnos su opinin.
Top of page 2006 Microsoft Corporation and CMP Media, LLC. Reservados todos los derechos; queda prohibida la reproduccin parcial o total sin previa autorizacin .
http://www.microsoft.com/technet/technetmag/issues/2007/03/SQLClusters/default.aspx?loc=es/
18/12/2007