Preparar la capa Web en OCI
Aprovisione y configure el sitio secundario en Oracle Cloud Infrastructure (OCI) para que sea coherente con el sitio local principal.
Nota:
Puede encontrar el código de Terraform para crear los recursos descritos en esta sección (el equilibrador de carga de OCI, el certificado SSL, los juegos de backends y backends, las políticas de enrutamiento, los listeners y los juegos de reglas) en Código de descarga.
(Opcional) Preparación de los hosts de Oracle HTTP Server
Nota:
La creación y configuración de Oracle HTTP Server es opcional. Puede configurar la capa web en OCI solo mediante el equilibrador de carga de OCI (sin utilizar Oracle HTTP Server).
Aprovisionamiento de los hosts de Oracle HTTP Server
Cada Oracle HTTP Server que se ejecute en OCI debe tener un contrato de licencia y soporte válido además del contrato de licencia y soporte utilizado para cubrir el Oracle HTTP Server que se ejecuta localmente. Puede utilizar imágenes de Oracle WebLogic Server para OCI para crear instancias informáticas para Oracle HTTP Server en Oracle Cloud. Las instancias informáticas creadas con estas imágenes incluyen el derecho a ejecutar Oracle HTTP Server y se facturan por OCPU/hora para el derecho a ejecutar el software WebLogic cuando están en estado de ejecución. Al crear las instancias informáticas con Oracle WebLogic Server para OCI, puede utilizar la consola de instancia informática o el Marketplace. Estas imágenes están disponibles para los sistemas operativos Oracle Linux 7.9 y Oracle Linux 8.5.
En este ejemplo se utilizan dos instancias informáticas en un solo dominio de disponibilidad del compartimento, como se muestra en la tabla.
Nombre | compartimento | Dominio de disponibilidad | Imagen | Forma | VCN | Subred |
---|---|---|---|---|---|---|
hydrohs1 (Fin de creación) | HyDRCompmt (Fin de creación) | AD1 (Fin de creación) | Imagen de UCM de Oracle WebLogic Enterprise Edition (Oracle Linux 7.9) | VM.Standard2.2 (Fin de creación) | Hydrvcn | webTierSubnet (Fin de creación) |
hydrohs2 (Fin de creación) | HyDRCompmt (Fin de creación) | AD1 (Fin de creación) | Imagen de UCM de Oracle WebLogic Enterprise Edition (Oracle Linux 7.9) | VM.Standard2.2 (Fin de creación) | Hydrvcn | webTierSubnet (Fin de creación) |
Realice lo siguiente para aprovisionar las instancias informáticas mediante la consola de instancias informáticas:
Preparación de Usuarios y Grupos del Sistema Operativo
El mismo usuario y grupo que utiliza el software local principal de Oracle es necesario en las instancias informáticas secundarias.
Las imágenes de Oracle WebLogic Server for Oracle Cloud Infrastructure ya tienen un usuario y un grupo oracle. Sin embargo, es posible que estos valores (nombre de usuario, nombre de grupo, uid
y gid
) no coincidan con los valores de la instancia principal y que necesite configurar los hosts secundarios para que coincidan con los valores del grupo y usuario oracle principal. Los siguientes ejemplos muestran cómo configurar los hosts secundarios de este nivel para que coincidan con los valores del grupo y usuario oracle principal.
Preparación de los Requisitos del Sistema Operativo
runinstaller
en los hosts secundarios. Debido a que las imágenes de Oracle WebLogic Server for Oracle Cloud Infrastructure están preparadas para el software WebLogic, no es necesario agregar manualmente paquetes para WebLogic. Sin embargo, estos hosts de Oracle HTTP Server ejecutarán el producto Oracle HTTP Server. Asegúrese de que los hosts secundarios cumplen los requisitos de Oracle HTTP Server.Preparación de los alias de nombre de host para Oracle HTTP Server
Esto se puede implementar de 2 maneras:
- Agregue los nombres de host como alias a los archivos
/etc/hosts
de las instancias informáticas de Oracle WebLogic Server para OCI. - Utilice una vista de DNS privada en la VCN de OCI secundaria.
Usar archivos /etc/hosts
/etc/hosts
de los hosts secundarios, apuntando a las direcciones IP de los hosts secundarios. Este modo es válido en todos los casos en los que el servidor DNS es el mismo en las ubicaciones locales principales y en las ubicaciones secundarias de Oracle Cloud Infrastructure (OCI), así como cuando se utilizan servidores DNS separados en las ubicaciones primaria y secundaria. Las entradas del archivo /etc/hosts
tienen prioridad sobre la resolución de DNS, porque es la prioridad definida lista para usar en la directiva "hosts" del archivo /etc/nsswitch.conf
.
Sin embargo, este método requiere que agregue manualmente las entradas a todos los hosts de Oracle HTTP Server:
Uso del sistema de nombres de dominio (DNS)
/etc/hosts
de todos los hosts.
Agregue las entradas para los nombres de host virtual de Oracle HTTP Server a la vista privada creada en OCI en el paso Preparar el nivel medio en OCI:
Abrir los puertos necesarios en los firewalls del host de OCI
ssh
, dhcp
). Debe abrir los puertos que utiliza Oracle HTTP Server.
Creación de las variables de entorno de usuario oracle
para Oracle HTTP Server
oracle
en los hosts de Oracle HTTP Server. Por ejemplo, ORACLE_HOME
, JDK_HOME
, PATH
, WEB_DOMAIN_HOME
y otros.
Replicación del producto Oracle HTTP Server y la configuración desde el principal
rsync
para copiar los binarios y la configuración de Oracle HTTP Server de los nodos principales de Oracle HTTP Server.
También puede descargar el software Oracle HTTP Server, instalarlo y configurarlo desde cero en las instancias informáticas de Oracle HTTP Server de OCI. Este enfoque está fuera del alcance de este documento. Sin embargo, debe utilizar este enfoque cuando las instancias informáticas de OCI de Oracle HTTP Server tienen un sistema operativo diferente al de los hosts principales de Oracle HTTP Server.
Los archivos de configuración y los binarios de Oracle HTTP Server normalmente residen en un almacenamiento privado. En OCI, puede utilizar el volumen en bloque que tiene por defecto la instancia informática. También puede crear un nuevo volumen en bloque para cada cálculo de Oracle HTTP Server (como se describe en Preparación de los volúmenes en bloque de OCI) y montar cada uno en las instancias informáticas de Oracle HTTP Server (como se describe en Montaje de los volúmenes en bloque de OCI).
En este ejemplo se utiliza el volumen en bloque por defecto de las instancias informáticas de Oracle HTTP Server sin crear ningún volumen en bloque adicional.
La configuración y los binarios de Oracle HTTP Server no cambian con frecuencia las horas extra. Después de esta replicación inicial, puede repetir la misma replicación durante el ciclo de vida. También puede mantener manualmente la configuración de Oracle HTTP Server en la instancia principal y secundaria mediante la implementación de los cambios de configuración de Oracle HTTP Server en ambas ubicaciones.
Preparar equilibrador de carga de OCI
Cree y configure el equilibrador de carga de Oracle Cloud Infrastructure en la nube.
Nota:
Puede encontrar el código de Terraform para crear los recursos descritos en esta sección (el equilibrador de carga de OCI, el certificado SSL, los juegos de backends y backends, las políticas de enrutamiento, los listeners y los juegos de reglas) en Código de descarga.
Aprovisionamiento del equilibrador de carga de OCI
Para ser coherente con el sitio local principal, aprovisione un equilibrador de carga en el sitio secundario en Oracle Cloud Infrastructure (OCI) como punto de entrada al sistema.
Creación de juegos de backends
Un juego de backends es una entidad lógica que contiene una lista de servidores backend que ejecutan las mismas aplicaciones. Al definir un juego de backends, debe especificar una política de equilibrio de carga y una prueba de comprobación del sistema. A continuación, puede agregar la lista de servidores de backend.
La configuración de los juegos de backends depende de si está utilizando Oracle HTTP Server delante de los hosts del servidor WebLogic o no.
Si utiliza Oracle HTTP Server, el equilibrador de carga de Oracle Cloud Infrastructure (OCI) envía las solicitudes a los servidores HTTPS. Cree un juego de backends para cada puerto expuesto por los servidores HTTPS. Por ejemplo, cree un juego de backends para el listener de Oracle HTTP Server que proporcione acceso a las aplicaciones y otro juego de backends para el listener de Oracle HTTP Server que proporcione acceso a cada consola de administración de Oracle WebLogic Server.
Si no utiliza Oracle HTTP Server, el equilibrador de carga de OCI envía las solicitudes a los servidores WebLogic directamente. Cree un juego de backends para cada cluster de Oracle WebLogic Server y otro juego de backends para el servidor de administración.
- Inicie sesión en la consola de OCI.
- Seleccione la región y el compartimento adecuados.
- En el menú de navegación, haga clic en Red y, a continuación, haga clic en Equilibradores de carga.
- Haga clic en el equilibrador de carga al que desea agregar un backend.
- Haga clic en Juegos de backends en el menú Recursos y, a continuación, en Crear juego de backends.
- Introduzca lo siguiente en el cuadro de diálogo Create Backend Set:
- Haga clic en Crear.
Si tiene clusters WebLogic Server adicionales, cree un juego de backends para cada cluster de forma similar.
A continuación se muestra un ejemplo de los juegos de backends al utilizar Oracle HTTPS Server con Oracle WebLogic Server.
Componente | Nombre de juego de backends | Política de distribución de tráfico | Persistencia de sesiones | Nombre de cookie (ejemplo) | Atributo: seguro | Comprobación del sistema |
---|---|---|---|---|---|---|
Servidor de Administración | OHS_Admin_backendset (Fin de creación) |
Circuito cíclico ponderado | Activar persistencia de cookies de equilibradores de carga | X-Oracle-LBR-ADMIN-Backendset (Fin de creación) |
Desactivado | TCP o HTTP |
Clusters WebLogic | OHS_HTTP_backendset (Fin de creación) |
Circuito cíclico ponderado | Activar persistencia de cookies de equilibradores de carga | X-Oracle-LBR-OHS-HTTP-Backendset (Fin de creación) |
Activado | TCP o HTTP |
A continuación se muestra un ejemplo de los juegos de backends cuando no utiliza Oracle HTTP Server.
Componente | Nombre de juego de backends | Política de distribución de tráfico | Persistencia de sesiones | Nombre de cookie (ejemplo) | Atributo: seguro | Comprobación del sistema |
---|---|---|---|---|---|---|
Servidor de Administración | Admin_backendset (Fin de creación) |
Circuito cíclico ponderado | Activar persistencia de cookies de equilibradores de carga | X-Oracle-LBR-ADMIN-Backendset (Fin de creación) |
Desactivado | TCP o HTTP |
Cluster de WebLogic 1 | WLS_Cluster1_backendset (Fin de creación) |
Circuito cíclico ponderado | Activar persistencia de cookies de equilibradores de carga | X-Oracle-LBR-WLSCluster1-Backendset (Fin de creación) |
Activado | TCP o HTTP |
Cluster de WebLogic 2 | WLS_Cluster2_backendset (Fin de creación) |
Circuito cíclico ponderado | Activar persistencia de cookies de equilibradores de carga | X-Oracle-LBR-WLSCluster2-Backendset (Fin de creación) |
Activado | TCP o HTTP |
Si tiene clusters WebLogic adicionales, cree un juego de backends para cada cluster de forma similar.
Definición de backends para cada juego de backends
Defina los backends para cada juego de backends en el equilibrador de carga de Oracle Cloud Infrastructure (OCI).
Si utiliza Oracle HTTP Server, agregue los nodos de Oracle HTTP Server y los puertos adecuados como backends en cada juego de backends.
Si no utiliza Oracle HTTP Server, agregue los nodos de Oracle WebLogic Server y los puertos adecuados como backends en cada juego de backends.
- En la consola, seleccione un juego de backends. Haga clic en Backends y, a continuación, en Agregar backends.
- Introduzca la dirección IP y el puerto del servidor que es el backend.
Nombre de juego de backends | Backends |
---|---|
OHS_Admin_backendset (Fin de creación) |
Instancias informáticas:
|
OHS_HTTP_backendset (Fin de creación) |
Instancias informáticas:
|
En la tabla se muestran los juegos de backends creados en el ejemplo de este documento cuando NO se utiliza Oracle HTTP Server:
Nombre de juego de backends | Backends |
---|---|
Admin_backendset (Fin de creación) |
Direcciones IP:
|
WLSCluster1_backendset (Fin de creación) |
Instancias informáticas:
|
WLSCluster2_backendset (Fin de creación) |
Instancias informáticas:
|
Definición de las políticas de enrutamiento y configuración de las reglas
Las políticas de enrutamiento se utilizan para distribuir las solicitudes entrantes al juego de backends correcto. Por ejemplo, una solicitud para /console
se distribuye al juego de backends de administrador y una solicitud para /app1
se distribuye al juego de backends del cluster en el que se está ejecutando app1
.
Si utiliza Oracle HTTP Server, normalmente define las rutas (como /app1
, /app2
, /console
, etc.) en la configuración de Oracle HTTP Server. En este caso, no es necesario definir las políticas y reglas de enrutamiento en el equilibrador de carga de Oracle Cloud Infrastructure (OCI).
Si no utiliza Oracle HTTP Server, debe definir las políticas y reglas de direccionamiento en el equilibrador de carga de OCI para distribuir las solicitudes al juego de backends adecuado.
Componente | Nombre de política de enrutamiento | Regla | Condiciones: Si alguna ruta de coincidencia empieza por | Acción: Ruta hacia juego de backends |
---|---|---|---|---|
Consolas del servidor de administración | Admin_Rules (Fin de creación) |
Admin_routerule (Fin de creación) |
|
Admin_backendset (Fin de creación) |
Aplicación 1 | Application_Rules (Fin de creación) |
WLSCluster1_routerule (Fin de creación) |
|
WLSCluster1_backendset (Fin de creación) |
Aplicación 2 | Application_Rules (Fin de creación) |
WLSCluster2_routerule (Fin de creación) |
|
WLSCluster2_backendset (Fin de creación) |
Puede crear tantas políticas de enrutamiento, reglas y condiciones como necesite para su entorno.
Creación de los Listeners
Cree los listeners para cada combinación de nombre de front-end y puerto que se utiliza para acceder al sistema. Debe utilizar los mismos nombres de host (nombres de front-end virtuales) y puertos que utiliza el equilibrador de carga principal.
- Agregue el nombre de host de front-end virtual como nombre de host en el equilibrador de carga de Oracle Cloud Infrastructure.
- Cree los listeners.
La siguiente tabla es un resumen de los listeners creados en el ejemplo de este documento y su protocolo, puerto, juegos de backends, política de direccionamiento, nombre de host y uso de SSL asociados. Este es un ejemplo de referencia. Si el sistema utiliza nombres de host, puertos o protocolos front-end adicionales en el sistema Oracle WebLogic Server principal, debe crear los listeners y nombres de host correspondientes según sus necesidades. Por ejemplo, si utiliza un front-end alternativo para acceder a la consola de Oracle WebLogic Server y a la consola de Oracle Enterprise Manager.
Listener | Protocolo | Puerto | Juego de backends | Política de enrutamiento | HostName (Fin de creación) | Usar SSL |
---|---|---|---|---|---|---|
Admin_listener (Fin de creación) |
HTTP | 7001 |
|
Admin_Rules (Fin de creación) |
wlsfrontend.example.com (Fin de creación) | No |
HTTPS_listener (Fin de creación) |
HTTPS | 443 |
|
App_Rules (Fin de creación) |
wlsfrontend.example.com (Fin de creación) | Si |
HTTP_listener (Fin de creación) |
HTTP | 80 | N/A* | N/A | wlsfrontend.example.com (Fin de creación) | No |
* En este ejemplo, HTTP_listener
solo se utiliza para redirigir solicitudes a HTTPS_listener
(HTTPS). El backend que tiene asignado no se utilizará. Sin embargo, dado que es obligatorio proporcionar uno, debe proporcionar uno que no tenga SSL activado (utilice un juego de backends vacío por defecto).
Creación del Juego de Reglas para Cabeceras SSL
Cree un juego de reglas para cabeceras SSL en el equilibrador de carga de Oracle Cloud Infrastructure (OCI) y asócielo al listener HTTPS.
Creación del Juego de Reglas para Redirigir el Protocolo HTTP a HTTPS
Cree una regla de redirección y asóciela a HTTP_listener para redirigir el puerto 80 al puerto 443. Para la topología EDG, todas las solicitudes que llegan al puerto 80 (HTTP) en el equilibrador de carga se deben redirigir al puerto 443 (HTTPS).
Adición del nombre de front-end virtual y la IP a las instancias informáticas de WLS
En una topología de recuperación ante desastres, los clientes deben acceder al sistema mediante un FQDN de front-end (normalmente denominado nombre de front-end virtual o URL personalizada) que no tenga en cuenta el centro de datos. Este nombre de front-end virtual se debe resolver en la dirección IP del equilibrador de carga del sitio activo (principal) actual.
El sistema principal ya debe utilizar un nombre virtual de front-end que resuelva el DNS con la IP del equilibrador de carga principal. Sin embargo, los hosts de Oracle WebLogic Server de cada sitio siempre deben resolver el nombre de front-end con su equilibrador de carga local, independientemente de la resolución orientada al cliente con DNS. Para ello, el nombre de front-end virtual se agrega a su archivo /etc/hosts
con la dirección IP adecuada en cada sitio. También puede lograr esto utilizando diferentes servidores DNS en cada sitio. En ese caso, el servidor DNS local resolvería el nombre de front-end con la IP de equilibrador de carga adecuada en cada sitio.
Usar archivos /etc/hosts
/etc/hosts
de los hosts principales y secundarios de Oracle WebLogic Server no se debe modificar cuando hay una operación de switchover o failover. Los hosts de Oracle WebLogic Server siempre resolverán el nombre de front-end virtual con su IP de front-end. La actualización de DNS necesaria durante los procedimientos de switchover y failover se realiza en los archivos de host o DNS utilizados por los clientes de Oracle WebLogic Server.
Uso del sistema de nombres de dominio (DNS)
Si sigue este enfoque, puede agregar el nombre de front-end (que apunta a la IP del equilibrador de carga secundario) al servicio DNS utilizado por los niveles intermedios secundarios. En la base de datos primaria, se espera que el nombre del front-end ya se haya resuelto y apunte a la IP del equilibrador de carga principal.
En la base de datos primaria, se espera que el nombre de front-end ya se haya resuelto y apunte a la IP del equilibrador de carga principal.