Con la réplica asíncrona multimaestro, enlaza un conjunto de dominios de servicio de catálogo. A continuación, los dominios de servicio de catálogo conectados se sincronizan mediante réplica a través de los enlaces. Puede
definir los enlaces utilizando archivos de propiedades, en tiempo de ejecución con
programas JMX (Java Management Extensions) o con programas de utilidad de línea de
mandatos. El conjunto de enlaces actuales de un dominio se almacena en el servicio
de catálogo. Puede añadir y eliminar enlaces sin reiniciar el dominio de servicio
de catálogo que aloja la cuadrícula de datos.
Antes de empezar
- Consulte Planificación de topologías de varios centros de datos para obtener más información sobre las topologías de réplica multimaestro y las consideraciones sobre diseño.
Puede configurar enlaces entre dominios de servicio de catálogo con el archivo de propiedades del servidor para formar la topología durante el inicio del servidor. También puede configurar enlaces durante la ejecución.
- Si utiliza cargadores en la topología de réplica multimaestro, debe planificar cómo va a mantener datos precisos entre los centros de datos. Los enfoques que puede utilizar varían según la topología que utilice. Para obtener más información, consulte Consideraciones sobre el cargador en una topología multimaestro.
Procedimiento
- Defina enlaces en el archivo de propiedades del servidor para el servidor de catálogo de cada dominio de servicio de catálogo de la topología, con fines del programa de arranque.
Consulte Archivo de propiedades de servidor para obtener más información sobre cómo definir este archivo para el servidor de catálogo.
Importante: Los nombres de propiedad son sensibles a las mayúsculas y minúsculas.
- Nombre de dominio local:
- Especifique el nombre del dominio de servicio de catálogo para el servicio de catálogo actual, por ejemplo, el dominio A:
domainName=A
- Una lista opcional de nombres de dominios foráneos:
Especifique los nombres de dominios de servicio de catálogo a los que desea enlazar en la topología de réplica multimaestro, por ejemplo, el dominio B:
foreignDomains=B
- Una lista opcional de puntos finales para los nombres de dominio foráneos:
- Especifica la información de conexión de los servidores de catálogo de los dominios foráneos, por ejemplo, el dominio B:
B.endPoints=hostB1:2809, hostB2:2809
Si un dominio foráneo tiene varios servidores de catálogo, especifique todos ellos.
- Utilice el programa de utilidad xscmd o la programación de JMX
para añadir o eliminar enlaces en tiempo de ejecución.
Los enlaces de un dominio se conservan en el servicio de
catálogo en la memoria replicada. El administrador puede cambiar este conjunto de enlaces
cuando desee sin necesidad de reiniciar este dominio o ningún otro dominio.
El programa de utilidad xscmd incluye varias opciones para trabajar con enlaces.
El programa de utilidad xscmd se conecta a un servicio de catálogo y por lo tanto a un único dominio de servicio de catálogo.
En consecuencia, se puede utilizar el programa de utilidad xscmd para crear y destruir enlaces entre el dominio al que se conecta y otros dominios.
Utilice la línea de mandatos para crear un enlace, por ejemplo:
xscmd –c establishLink -cep host:2809 -fd dname -fe fdHostA:2809,fdHostB:2809
El mandato establece un nuevo enlace entre el dominio local y el dominio foráneo denominado dname.
El servicio de catálogo dname se ejecuta en fdHostA:2809 y fdHostB:2809.
El dominio de servicio de catálogo local tiene un host y un puerto de
escucha de servicio de catálogo de
host:2809. Especifique todos los puntos finales de servicio de catálogo desde el dominio foráneo de forma que sea posible la conectividad al dominio con tolerancia a errores. No utilice un único par host:puerto para el servicio de catálogo del dominio de servicio de catálogo foráneo.
Puede utilizar cualquier JVM de servicio de catálogo local con xscmd
y usando la opción -cep. Si el servidor de catálogo se aloja en el gestor de despliegue de WebSphere Application Server,
el puerto normalmente es 9809.
Los puertos especificados para el dominio foráneo no son puertos JMX. Suelen ser puertos que utilizaría para los clientes de
eXtreme Scale.
Después de que se emite el mandato para añadir un nuevo enlace,
el servicio de catálogo indica a todos los contenedores bajo su gestión que
comiencen a replicar en el dominio foráneo. No es necesario un enlace en los dos extremos. Solo es necesario
crear un enlace en un extremo.
Utilice la línea de mandatos para eliminar un enlace,
por ejemplo:
xscmd –c dismissLink -cep host:2809 -fd dname
El
mandato se conecta al servicio de catálogo para un dominio y le indica
que deje de replicar en un dominio concreto. Un enlace sólo se tiene que desechar
de un extremo.
Enlace entre dos dominios de servicio de catálogo
Supongamos que desea definir una configuración de dos dominios que implica los dominios de servidor de catálogo A y B.
Figura 1. Enlace entre dominios de servicio de catálogo
A continuación se muestra el archivo de propiedades de servidor para el servidor de catálogo en el dominio A:
domainName=A
foreignDomains=B
B.endPoints=hostB1:2809, hostB2:2809
A continuación se muestra el archivo de propiedades de servidor para el servidor de catálogo en el dominio B. Tenga en cuenta la similitud entre los dos archivos de propiedades.
domainName=B
foreignDomains=A
A.endPoints=hostA1:2809,hostA2:2809
Una vez que se han iniciado los dos dominios, las cuadrículas de datos que tengan las características siguientes se replicarán entre los dominios.
- Tener un servicio de catálogo privado con un nombre de dominio único
- Tener el mismo nombre de cuadrícula de datos que otras cuadrículas del dominio
- Tener el mismo número de particiones que otras cuadrículas de datos del dominio
- Ser una cuadrícula de datos FIXED_PARTITION (las cuadrículas de datos PER_CONTAINER no se pueden replicar)
- Tener el mismo número de particiones (podrían tener o no tener el mismo
número y tipos de réplicas)
- Tener los mismos tipos de datos replicados que otras cuadrículas de datos del dominio
- Tener el mismo nombre de conjunto de correlaciones, los mismos nombres de correlación y las mismas plantillas de correlación dinámica que otras cuadrículas de datos del dominio
La
política de réplica de un dominio de servicio de catálogo se ignora.
En el
ejemplo anterior se muestra cómo configurar cada dominio para que tenga un enlace con el otro
dominio, pero es necesario solo definir un enlace en un sentido. Este hecho es de especial utilidad en las
topologías de hub y radio, con lo que se permite una configuración mucho más sencilla. El archivo de propiedades de hub
no requiere actualizaciones a medida que se añaden los radios y cada archivo de radio necesita solo
incluir la información del hub. De forma similar, una topología de anillo requiere
que cada dominio tenga solo un enlace con el dominio anterior y el siguiente en el
anillo.
Ejemplo: Topología de hub y radio
Figura 2. Topología de hub y radio
El hub y cuatro radios (los dominios A, B, C y D) tienen los archivos de propiedades de servidor como en los ejemplos siguientes.
domainName=Hub
El radio A tiene las siguientes propiedades de servidor:
domainName=A
foreignDomains=Hub
Hub.endPoints=hostH1:2809, hostH2:2809
El radio B tiene las siguientes propiedades de servidor:
domainName=B
foreignDomains=Hub
Hub.endPoints=hostH1:2809, hostH2:2809
El radio C tiene las siguientes propiedades de servidor:
domainName=C
foreignDomains=Hub
Hub.endPoints=hostH1:2809, hostH2:2809
El radio D tiene las siguientes propiedades:
domainName=D
foreignDomains=Hub
Hub.endPoints=hostH1:2809, hostH2:2809
Qué hacer a continuación
Puede proporcionar un árbitro de colisión personalizado para resolver colisiones entre los dominios de servicio de catálogo. Si desea más información, consulte
Desarrollo de árbitros personalizados para la réplica con varios maestros.