Tutorial: Migración de un clúster de WebLogic Server a Azure con App de Azure lication Gateway como equilibrador de carga
Este tutorial le guiará en el proceso de implementación de WebLogic Server (WLS) con Azure Application Gateway. Trata los pasos específicos para crear un almacén de claves, almacenar un certificado TLS/SSL en el almacén de claves y usar ese certificado para la terminación TSL/SSL. Aunque todos estos elementos están bien documentados por si mismos, en este tutorial se muestra la forma específica en que todos estos elementos se unen para crear una solución de equilibrio de carga simple y a la vez eficaz para WLS en Azure.
El equilibrio de carga es una parte esencial de la migración del clúster de Oracle WebLogic Server a Azure. La solución más sencilla consiste en usar la compatibilidad integrada con Azure Application Gateway. App Gateway se incluye como parte de la compatibilidad con clústeres de WebLogic en Azure. Para obtener información general sobre la compatibilidad con clústeres de WebLogic en Azure, consulte ¿Qué es Oracle WebLogic Server en Azure?.
En este tutorial, aprenderá a:
- Elegir cómo proporcionar el certificado TLS/SSL a App Gateway
- Implementación de WebLogic Server con Azure Application Gateway en Azure
- Validación de la correcta implementación de WLS y App Gateway
Requisitos previos
OpenSSL en un equipo que ejecute un entorno de línea de comandos de tipo UNIX.
Aunque podría haber otras herramientas disponibles para la administración de certificados, en este tutorial se usa OpenSSL. Puede encontrar OpenSSL incluido en muchas distribuciones de GNU/Linux, como Ubuntu.
Una suscripción de Azure activa.
- Si no tiene una suscripción a Azure, cree una cuenta gratuita.
La capacidad de implementar una de las aplicaciones de Azure de WLS enumeradas en Aplicaciones de Azure de Oracle WebLogic Server.
Contexto de migración
Estos son algunos aspectos que se deben tener en cuenta para la migración de instalaciones de WLS locales y Azure Application Gateway. Aunque los pasos de este tutorial son la manera más fácil de poner en funcionamiento un equilibrador de carga delante del clúster de WebLogic Server en Azure, hay muchas otras formas de hacerlo. En esta lista se muestran algunos aspectos que se deben tener en cuenta.
- Si ya tiene una solución de equilibrio de carga, asegúrese de que Azure Application Gateway cumpla o supere sus funcionalidades. Para ver un resumen de las funcionalidades de Azure Application Gateway en comparación con otras soluciones de equilibrio de carga de Azure, consulte Información general sobre las opciones de equilibrio de carga en Azure.
- Si la solución de equilibrio de carga existente proporciona protección de seguridad contra vulnerabilidades comunes, Application Gateway proporciona esa funcionalidad. El firewall de aplicaciones web (WAF) integrado de Application Gateway implementa los conjuntos de reglas principales de OWASP (Open Web Application Security Project). Para obtener más información sobre la compatibilidad con WAF en Application Gateway, consulte la sección sobre Web Application Firewall de Características de Azure Application Gateway.
- Si la solución de equilibrio de carga existente requiere cifrado TLS/SSL de un extremo a otro, deberá realizar una configuración adicional después de seguir los pasos de esta guía. Consulte la sección Cifrado TLS de un extremo a otro del artículo Introducción a la terminación TLS y a TLS de un extremo a otro con Application Gateway, así como la documentación de Oracle sobre Configuración de SSL en el middleware de Oracle Fusion.
- Si va a realizar la optimización para la nube, en esta guía se muestra cómo empezar desde cero con Azure App Gateway y WLS.
- Para obtener una descripción completa sobre la migración de WebLogic Server a Azure Virtual Machines, consulte Migración de aplicaciones de WebLogic Server a Azure Virtual Machines.
Implementación de WebLogic Server con Application Gateway en Azure
En esta sección, aprenderá a aprovisionar un clúster de WLS con una instancia de Azure Application Gateway que se creará automáticamente como equilibrador de carga para los nodos de clúster. La instancia de Application Gateway usará el certificado TLS/SSL proporcionado para la terminación TLS/SSL. Para más información sobre la terminación TLS/SSL con Application Gateway, consulte Introducción a la terminación TLS y a TLS de un extremo a otro con Application Gateway.
Para crear el clúster de WLS y la instancia de Application Gateway, use los siguientes pasos.
En primer lugar, comience el proceso de implementación de un clúster de WebLogic Server configurado o dinámico como se describe en la documentación de Oracle, pero vuelva a esta página cuando llegue a Azure Application Gateway, como se muestra aquí.
Elegir cómo proporcionar el certificado TLS/SSL a App Gateway
Tiene varias opciones para proporcionar el certificado TLS/SSL a la puerta de enlace de aplicación, pero solo puede elegir una. En esta sección se explica cada opción para que pueda elegir la mejor para su implementación.
Opción uno: Cargar un certificado TLS/SSL
Esta opción es adecuada para cargas de trabajo de producción en las que App Gateway está conectada a la red pública de Internet o para cargas de trabajo de intranet que requieren TLS/SSL. Al elegir esta opción, se aprovisiona automáticamente una instancia de Azure Key Vault para que contenga el certificado TLS/SSL que usa App Gateway.
Para cargar un certificado TLS/SSL existente firmado, use los pasos siguientes:
- Siga los pasos del emisor de certificados para crear un certificado TLS/SSL protegido por contraseña y especifique el nombre DNS del certificado. El tema de cómo elegir un certificado comodín frente a un certificado de nombre único no se trata en este documento. Cualquiera funcionará.
- Exporte el certificado del emisor con el formato de archivo PFX y descárguelo en el equipo local. Si el emisor no admite la exportación como PFX, existen herramientas para convertir muchos formatos de certificado al formato PFX.
- Seleccione la sección Azure Application Gateway.
- Junto a Connect to Azure Application Gateway (Conectar a Azure Application Gateway), seleccione Sí.
- Seleccione Cargar un certificado SSL.
- Seleccione el icono del explorador de archivos para el campo Certificado SSL. Navegue hasta el certificado en formato PFX descargado y seleccione Abrir.
- Escriba la contraseña del certificado en los campos Contraseña y Confirmar contraseña.
- Elija si quiere denegar o no el tráfico público directo a los nodos de los servidores administrados. Si selecciona Sí, los servidores administrados solo serán accesibles a través de App Gateway.
Selección de la configuración de DNS
Los certificados TLS/SSL están asociados a un nombre de dominio DNS en el momento en que los genera el emisor del certificado. Siga los pasos de esta sección para configurar la implementación con el nombre DNS del certificado. Puede usar una zona DNS que ya haya creado o permitir que la implementación cree una. Seleccione la sección Configuración de DNS para continuar.
Uso de una zona de Azure DNS existente
Para usar una zona de Azure DNS existente con App Gateway, siga estos pasos:
- Junto a Configure Custom DNS Alias (Configurar alias de DNS personalizado), seleccione Sí.
- Junto a Usar una zona de Azure DNS existente, seleccione Sí.
- Escriba el nombre de la zona de Azure DNS junto a DNS Zone Name (Nombre de zona DNS).
- Escriba el grupo de recursos que contiene la zona de Azure DNS del paso anterior.
Permitir que la implementación cree una nueva zona de Azure DNS
A fin de crear una zona de Azure DNS para usarla con App Gateway, siga estos pasos:
- Junto a Configure Custom DNS Alias (Configurar alias de DNS personalizado), seleccione Sí.
- Junto a Usar una zona de Azure DNS existente, seleccione No.
- Escriba el nombre de la zona de Azure DNS junto a DNS Zone Name (Nombre de zona DNS). Se creará una nueva zona DNS en el mismo grupo de recursos que WLS.
Por último, especifique los nombres de las zonas DNS secundarias. La implementación creará dos zonas DNS secundarias para usarlas con WLS: una para la consola de administración y otra para la puerta de App Gateway. Por ejemplo, si el nombre de la zona DNS era "contoso.net", puede especificar admin y app como valores. La consola de administración estará disponible en "admin.contoso.net" y la App Gateway estará disponible en "app.contoso.net". No olvide configurar la delegación DNS como se describe en Delegación de zonas DNS con Azure DNS.
Las otras opciones para proporcionar un certificado TLS/SSL a App Gateway se detallan en las secciones siguientes. Si está satisfecho con la opción elegida, puede ir directamente a la sección Continuar con la implementación.
Opción dos: Identificar una instancia de Azure Key Vault
Esta opción es adecuada para las cargas de trabajo de producción o que no son de producción, según el certificado TLS/SSL proporcionado. Si no quiere que la implementación cree una instancia de Azure Key Vault, puede identificar una existente o crear una. Esta opción requiere que se almacene el certificado y su contraseña en la instancia de Azure Key Vault antes de continuar. Si ya tiene una instancia de Key Vault que quiera usar, vaya a la sección Creación de un certificado TLS/SSL. De lo contrario, continúe con la sección siguiente.
Crear una instancia de Azure Key Vault
En esta sección se muestra cómo usar Azure Portal para crear una instancia de Azure Key Vault.
- En el menú de Azure Portal o en la página principal, seleccione Crear un recurso.
- En el cuadro de búsqueda, escriba Key Vault.
- En la lista de resultados, elija Key Vault.
- En la sección Key Vault, elija Crear.
- En la sección Crear almacén de claves, proporcione la siguiente información:
- Suscripción: elija una suscripción.
- En Grupo de recursos, elija Crear nuevo y escriba un nombre para el grupo de recursos. Tome nota del nombre del almacén de claves. La necesitará más adelante al implementar WLS.
- Nombre de Key Vault: se requiere un nombre único. Tome nota del nombre del almacén de claves. La necesitará más adelante al implementar WLS.
Nota:
Puede usar el mismo nombre para el grupo de recursos y el nombre del almacén de claves.
- En el menú desplegable Ubicación, elija una ubicación.
- Deje las restantes opciones con sus valores predeterminados.
- Seleccione Siguiente: Directiva de acceso.
- En Habilitar acceso a, seleccione Azure Resource Manager para la implementación de plantillas.
- Seleccione Revisar + crear.
- Seleccione Crear.
La creación del almacén de claves es un proceso ligero y, normalmente, se completa en menos de dos minutos. Una vez finalizada la implementación, seleccione Ir al recurso y continúe con la siguiente sección.
Creación de un certificado TLS/SSL
En esta sección se muestra cómo crear un certificado TLS/SSL autofirmado en un formato adecuado para su uso por Application Gateway implementado con WebLogic Server en Azure. El certificado debe tener una contraseña que no esté vacía. Si ya tiene un certificado TLS/SSL de contraseña válido y que no esté vacío en formato .pfx, puede omitir esta sección y pasar a la siguiente. Si el certificado TLS/SSL de contraseña existente válido y que no está vacío, no está en formato .pfx, primero debe convertirlo en un archivo .pfx antes de pasar a la siguiente sección. En caso contrario, abra un shell de comandos y escriba los siguientes comandos.
Nota:
En esta sección se muestra cómo codificar el certificado en Base 64 antes de almacenarlo como un secreto en el almacén de claves. Esto es necesario para la implementación de Azure subyacente que crea las instancias de WebLogic Server y Application Gateway.
Siga estos pasos para crear y codificar en Base 64 el certificado:
Cree una clave privada RSA
RSA PRIVATE KEY
.openssl genrsa 2048 > private.pem
Cree la clave pública correspondiente.
openssl req -x509 -new -key private.pem -out public.pem
Tendrá que responder a varias preguntas cuando la herramienta OpenSSL se lo solicite. Estos valores se incluirán en el certificado. En este tutorial se usa un certificado autofirmado, por lo que los valores no son de importancia. Los siguientes valores literales son correctos.
- En Nombre de país, escriba un código de dos letras.
- En Nombre de estado o provincia, escriba WA.
- En Nombre de la organización, escriba Contoso. En Nombre de la unidad organizativa, escriba billing (facturación).
- En Nombre común, escriba Contoso.
- En Dirección de correo electrónico, escriba billing@contoso.com.
Exporte el certificado como un archivo .pfx.
openssl pkcs12 -export -in public.pem -inkey private.pem -out mycert.pfx
Escriba la contraseña dos veces. Tome nota de la contraseña. La necesitará más adelante al implementar WLS.
Codifique en Base 64 el archivo mycert.pfx.
base64 mycert.pfx > mycert.txt
Ahora que tiene una instancia de Key Vault y un certificado TLS/SSL válido con una contraseña que no está vacía, puede almacenar el certificado en el almacén de claves.
Almacenamiento del certificado TLS/SSL en la instancia de Key Vault
En esta sección se muestra cómo almacenar el certificado y su contraseña en el almacén de claves creado en las secciones anteriores.
Siga estos pasos para almacenar el certificado:
- En Azure Portal, coloque el cursor en la barra de búsqueda de la parte superior de la página y escriba el nombre del almacén de claves que creó anteriormente en el tutorial.
- El almacén de claves debe aparecer en el encabezado Recursos. Selecciónelo.
- En la sección Configuración, seleccione Secretos.
- Seleccione Generar/Importar.
- En Opciones de carga, deje el valor predeterminado.
- En Nombre, escriba
myCertSecretData
o cualquier nombre que desee. - En Valor, escriba el contenido del archivo mycert.txt. La longitud del valor y la presencia de caracteres de nueva línea no son un problema para el campo de texto.
- Deje los valores restantes con sus valores predeterminados y seleccione Crear.
Siga estos pasos para almacenar la contraseña del certificado:
- Se le dirigirá de vuelta a la página Secretos. Seleccione Generar/Importar.
- En Opciones de carga, deje el valor predeterminado.
- En Nombre, escriba
myCertSecretPassword
o cualquier nombre que desee. - En Valor, escriba la contraseña del certificado.
- Deje los valores restantes con sus valores predeterminados y seleccione Crear.
- Se le dirigirá de vuelta a la página Secretos.
Identificación de la instancia de Key Vault
Ahora que la instancia de Key Vault con un certificado TLS/SSL firmado y su contraseña se almacenaron como secretos, vuelva a la sección Azure Application Gateway para identificar la instancia de Key Vault de la implementación.
- En Resource group name in current subscription containing the KeyVault (Nombre del grupo de recursos de la suscripción actual que contiene el almacén de claves), escriba el nombre del grupo de recursos que contiene el almacén de claves que creó anteriormente.
- En Name of the Azure KeyVault containing secrets for the Certificate for SSL Termination (Nombre del almacén de claves de Azure que contiene los secretos del certificado para la terminación SSL), escriba el nombre del almacén de claves.
- En The name of the secret in the specified KeyVault whose value is the SSL Certificate Data (Nombre del secreto en el almacén de claves especificado cuyo valor son los datos del certificado SSL), escriba
myCertSecretData
o el nombre que haya especificado anteriormente. - En The name of the secret in the specified KeyVault whose value is the password for the SSL Certificate (Nombre del secreto en el almacén de claves especificado cuyo valor es la contraseña del certificado SSL), escriba
myCertSecretData
o el nombre que haya especificado anteriormente. - Seleccione Revisar + crear.
- Seleccione Crear. Se realizará una validación de que el certificado se puede obtener del almacén de claves y de que su contraseña coincida con el valor almacenado en el almacén de claves. Si se produce un error en este paso de validación, revise las propiedades del almacén de claves, asegúrese de que el certificado se escribió correctamente y asegúrese de que la contraseña se escribió correctamente.
- Cuando vea el mensaje Validación superada, seleccione Crear.
Esto iniciará el proceso de creación del clúster de WLS y la instancia de Application Gateway de front-end, lo que puede tardar unos 15 minutos. Cuando finalice la implementación, seleccione Ir al grupo de recursos. En la lista de recursos del grupo de recursos, seleccione myAppGateway.
La última opción para proporcionar un certificado TLS/SSL a App Gateway se detalla en la sección siguiente. Si está satisfecho con la opción elegida, puede ir directamente a la sección Continuar con la implementación.
Opción tres: Generar un certificado autofirmado
Esta opción solo es adecuada para las implementaciones de prueba y desarrollo. Con esta opción, se crea automáticamente una instancia de Azure Key Vault y un certificado autofirmado, y se proporciona el certificado a App Gateway.
Para solicitar que la implementación realice estas acciones, use los pasos siguientes:
- En la sección Azure Application Gateway, seleccione Generar un certificado autofirmado.
- Seleccione una identidad administrada asignada por el usuario. Esto es necesario para permitir que la implementación cree la instancia de Azure Key Vault y el certificado.
- Si aún no tiene una identidad administrada asignada por el usuario, seleccione Agregar para comenzar el proceso de creación de una.
- Para crear una identidad administrada asignada por el usuario, siga los pasos de la sección Creación de una identidad administrada asignada por el usuario de Creación, enumeración, eliminación o asignación de un rol a una identidad administrada asignada por el usuario mediante Azure Portal. Una vez que haya seleccionado la identidad administrada asignada por el usuario, asegúrese de que está activada la casilla junto a la misma.
Continuar con la implementación
Ahora puede continuar con los demás aspectos de la implementación de WLS tal y como se describe en la documentación de Oracle.
Validación de la correcta implementación de WLS y App Gateway
En esta sección se muestra una técnica para validar rápidamente la correcta implementación del clúster de WLS y Application Gateway.
Si ha seleccionado Ir al grupo de recursos y, a continuación, myAppGateway al final de la sección anterior, verá la página de información general de la instancia de Application Gateway. Si no es así, puede escribir myAppGateway
en el cuadro de texto de la parte superior de Azure Portal para buscar esta página y, a continuación, seleccionar el valor correcto que aparece. Asegúrese de seleccionar el que se encuentra en el grupo de recursos que creó para el clúster de WLS. A continuación, complete los pasos siguientes.
- En el panel izquierdo de la página de información general de myAppGateway, desplácese hacia abajo hasta la sección Supervisión y seleccione Estado del back-end.
- Después de que desaparezca el mensaje que indica cargando, debería ver una tabla en el centro de la pantalla que muestra los nodos del clúster configurados como nodos del grupo de back-end.
- Compruebe que el estado muestra Correcto para cada nodo.
Limpieza de recursos
Si no va a seguir usando el clúster de WLS, elimine el almacén de claves y el clúster de WLS mediante los siguientes pasos:
- Vaya a la página de información general de myAppGateway como se muestra en la sección anterior.
- En la parte superior de la página, bajo el texto Grupo de recursos, seleccione el grupo de recursos.
- Seleccione Eliminar grupo de recursos.
- El foco de entrada se establecerá en el campo con la etiqueta ESCRIBA EL NOMBRE DEL GRUPO DE RECURSOS. Escriba el nombre del grupo de recursos como se solicita.
- Esto hará que se habilite el botón Eliminar. Seleccione el botón Eliminar. Esta operación tardará algún tiempo, pero puede continuar con el paso siguiente mientras se procesa la eliminación.
- Busque el almacén de claves como se indica en el primer paso de la sección Almacenamiento del certificado TLS/SSL en el almacén de claves.
- Seleccione Eliminar.
- Seleccione Eliminar en el panel que aparece.
Pasos siguientes
Siga explorando las opciones para ejecutar WLS en Azure.