Поделиться через


Configuración NBL (Network Load Balancing) para servicios de Microsoft Dynamics AX 2012

Lo primero que debemos diferenciar es NBL de la configuración de Balanceo de cargas de AOS en Microsoft Dynamics AX 2012, puesto que son configuraciones diferentes con usos diferentes.

Cuando se hace una configuración de clúster de AOS de Microsoft Dynamics AX 2012, lo que hacemos es distribuir la carga de usuarios a través de varias instancias del servidor de objetos de la aplicación (AOS).

Ahora bien, con esta configuración de NBL lo que pretendemos es tener un balanceo de cargas para los servicios de Microsoft Dynamics AX y para ello debemos hacer uso de la funcionalidad de Windows Server que nos permite crear NBL.

  1. Si se configura NBL entonces todos los servidores que alojan el servicio de AOS deben de participar en la configuración de NBL
  2. Si cuenta con una configuración de AOS Session Manager que distribuye la carga de usuarios entre los demás AOS que pertenecen a una configuración de Clúster de AOS, este servidor de AOS no debe hacer parte de la nueva configuración de NBL de Windows Server.
  3. La cuenta que inicializa los servicios de AOS de todos los servidores debe ser la misma.
  4. Cualquier cliente que haga uso de los servicios de Microsoft Dynamics AX 2012 debe utilizar la IP o el nombre  virtual del clúster NBL para poder realizar las llamadas de servicio.
    • Microsoft Dynamics AX 2012 Rich Client
    • Aplicaciones Clientes personalizadas
    • Clientes que consumen servicios web desde Internet

NBL solo es una configuración a nivel de Windows Server y no controla la configuración de clúster de AOS de Microsoft Dynamics AX2012.

Precaución: Nunca se debe mezclar las llamadas a servicios Web y RPC en este entorno.

La siguiente grafica muestra la topología de funcionamiento de NBL para los servicios de Microsoft Dynamics AX 2012

Para efectuar la configuración de NBL para servicios, es necesario seguir los siguientes pasos:

1. Instale el servicio de Microsoft Dynamics AX 2012 AOS en cada uno de los servidores que harán parte de la configuración NBL. Cada servidor debe contar con su propio nombre.

2. Recuerde que el nombre que se asigne al servidor virtual NBL no debe usarse como nombre de servidor AOS en las configuraciones de los clientes de Microsoft Dynamics AX.

3. En cada uno de los servidores configure la funcionalidad de NBL de Windows Server, descubre de como hacerlo.

4. Utilice un cliente de Microsoft Dynamics AX 2012 para generar una nueva configuración

5. Ingrese al REGEDIT y ubique la llave de la nueva configuración creada, esta la encontrara en la siguiente ruta [ \Software\Microsoft\Dynamics\6.0\Configuration\new_configuration_name ]  en HKEY_CURRENT_USER  y HKEY_LOCAL_MACHINE.

Sobre esta llave agregue los siguientes 2 Valores:

Atributo Descripción
 wcflbservername  Esta llave de tipo texto contiene el nombre del virtual del NBL
 wcflbwsdlport  Esta es una llave de tipo texto y contiene el numero de puerto que permite recuperar documentos de lenguaje de descripción de servicios Web (WSDL).

 

 

 

6. Ingrese nuevamente a la utilidad de configuración del cliente de Microsoft Dynamics AX 2012

7. Haga Click en configurar servicios, para abrir el editor de configuración de servicios de Microsoft. Este paso actualiza la configuración de Windows Communication Foundation (WCF) que utiliza direcciones endpoint para señalar el nombre virtual o la dirección IP del clúster NLB.

8. Guarde el archivo de configuración de WCF y cierre el editor.

9. En la herramienta de configuración del cliente de Microsoft Dynamics AX , haga clic en administrar y guarde la información de configuración en un archivo .axc. Puede utilizar este archivo como el archivo estándar para configurar cualquier cliente que se conecta al Cluster NLB para consumir servicios.

Si usted hace uso de la configuración estándar generada en la instalación, puede considerar crear estas 2 llaves del registro por medio de una directiva GPO para distribuirla en todos los equipos clientes que tienen Microsoft Dynamics AX 2012 instalado.

La siguiente imagen muestra como quedan las llaves del registro

Este es un ejemplo de como crear la llave de registro en una directiva GPO

 

Espero esto les sirva de ayuda para configurar ambientes en donde requieran una alta disponibilidad de los servicios WSDL de Microsoft Dynamics AX 2012.

Comments

  • Anonymous
    September 04, 2014
    Gracias Samuel, excelente blog, es de gran ayuda.

  • Anonymous
    September 10, 2014
    Gracias Samuel. Excelente post.

  • Anonymous
    August 30, 2015
    Hola Samuel. Tengo 4 AOS en cluster (sin habilitar load balancer), ahora bien, por una aplicacion que se llama RFSMART usamos muchas conexiones de tipo WCF services  (WSDL) y por esa razon queremos usar NLB. Seria tan gentil de ampliar cuando dice: "Precaución: Nunca se debe mezclar las llamadas a servicios Web y RPC en este entorno" Gracias

    • Anonymous
      March 10, 2016
      Hola Randall,Solo se debe hacer balanceo de puertos para los servicios de WCF y WSDL (8101, 8201) todo el tráfico que va por el Puerto 2712 es RPC.
  • Anonymous
    October 16, 2015
    Muchas gracias Samuel, esto es nuevo para mi, lo aplicaremos con los clientes en donde tenemos más de un AOS

  • Anonymous
    April 07, 2016
    Samuel buenas tardes, puedo tener 1 o mas AOS balanceando usuarios, o puedo utilizar un NLB para darle alta disponibilidad a 2 AOS Balanceadores.

    • Anonymous
      April 20, 2016
      Hola Luis,Para el balanceo de sesiones de usuario, existe la funcionalidad de cluster, la cual configuras por Administración del Sistema>>Sistema>>Configuración del Clúster. En esta configuración puedes tener todos los AOS de un mismo ambiente configurados en clúster; esto permite las conexiones de usuario que llegan por puerto 2712 (Tráfico RPC) se distribuyan entre los distintos servidores AOS. Cuando se activa NLB es específicamente para el trafico WSDL/WCF de los puertos 8101 y 8201 únicamente ya que el tráfico RPC no es soportado en NLB. Esta funcionalidad te sirve para balancear el trafico hacia los inbound ports que expone Microsoft Dynamics AX 2012.Saludos,Samuel