Configuración de un CMS de WordPress conectado a MySQL Database en la nube

Cree y gestione sitios web modernos en la nube sin necesidad de titulación en programación o administración de bases de datos. Aproveche las funciones fáciles de usar de la plataforma WordPress y las ventajas de elasticidad y costes de alojar sus páginas web y blogs en Oracle Cloud Infrastructure.

Arquitectura

Esta arquitectura despliega un servicio de base de datos WordPress CMS y Oracle MySQL en Oracle Cloud Infrastructure (OCI).

Puede desplegar WordPress en un único nodo o como parte de una configuración de HA de varios nodos. Esta arquitectura de referencia incluye la automatización de Terraform, que es compatible con ambas configuraciones.

Para un entorno de alta disponibilidad de varios nodos complejo, despliegue nodos WordPress en varios dominios de errores con equilibradores de carga principal y en espera y servicio compartido de Oracle Cloud Infrastructure File Storage (servicio NFS gestionado) para todos los nodos WordPress.

El siguiente diagrama ilustra esta arquitectura de varios nodos.

A continuación se muestra la descripción de oci-arch-wordpress-mds.png
Descripción de la ilustración oci-arch-wordpress-mds.png

oci-arch-wordpress-mds-oracle.zip

Puede hacer lo siguiente al configurar un entorno de varios nodos:

  • Defina el número de nodos de capa WordPress.
  • Despliegue equilibradores de carga públicos y oculte los nodos WordPress en una subred privada.
  • Desplegar Bastion Host o Bastion Services para acceder a recursos privados.
  • Utilice los servicios de Oracle Cloud Infrastructure File Storage con almacenamiento NFS compartido para contenido WordPress (cargas, plugins y temas compartidos entre nodos).

El siguiente diagrama ilustra una arquitectura de nodo único simple. Consiste en un despliegue ligero, que podría ser adecuado para fines de aprendizaje o servir como prueba de concepto.

A continuación se muestra la descripción de deployment-wordpress-cms-mysql-dbs.png
Descripción de la ilustración deployment-wordpress-cms-mysql-dbs.png

desplegar-wordpress-cms-mysql-dbs-oracle.zip

Las arquitecturas tienen algunos o todos los componentes siguientes:

  • Región

    Una región de Oracle Cloud Infrastructure es un área geográfica localizada que contiene uno o más centros de datos, denominados dominios de disponibilidad. Las regiones son independientes de otras regiones, y grandes distancias pueden separarlas (entre países o incluso continentes).

  • Dominios de disponibilidad

    Los dominios de disponibilidad son centros de datos independientes e independientes dentro de una región. Los recursos físicos de cada dominio de disponibilidad están aislados de los recursos de los otros dominios de disponibilidad, lo que proporciona tolerancia a fallos. Los dominios de disponibilidad no comparten infraestructura, como energía o refrigeración, o la red de dominio de disponibilidad interna. Por lo tanto, es poco probable que un fallo en un dominio de disponibilidad afecte a los otros dominios de disponibilidad de la región.

  • Dominio de errores

    Un dominio de errores es una agrupación de hardware e infraestructura dentro de un dominio de disponibilidad. Cada dominio de disponibilidad tiene tres dominios de errores con alimentación y hardware independientes. Cuando distribuye recursos en varios dominios de errores, las aplicaciones pueden tolerar fallos del servidor físico, mantenimiento del sistema y fallos de alimentación dentro de un dominio de errores.

  • Red virtual en la nube (VCN) y subredes

    VCN es una red personalizable definida por software que se configura en una región de Oracle Cloud Infrastructure. Al igual que las redes tradicionales de centros de datos, las VCN le proporcionan un control completo sobre su entorno de red. VCN puede tener varios bloques CIDR no superpuestos que puede cambiar después de crear VCN. Puede segmentar VCN en subredes, que se pueden asignar a una región o a un dominio de disponibilidad. Cada subred consta de un rango contiguo de direcciones que no se superponen con las otras subredes de VCN. Puede cambiar el tamaño de una subred después de la creación. Una subred puede ser pública o privada.

  • Gateway de internet

    El gateway de internet permite el tráfico entre las subredes públicas en un VCN y el internet público.

  • Gateway de traducción de direcciones de red (NAT)

    Un gateway de NAT permite que los recursos privados de una VCN accedan a los hosts de Internet, sin exponer dichos recursos a las conexiones de Internet entrantes.

  • Grupo de seguridad de red (NSG)

    Los NSG actúan como firewalls virtuales para sus recursos en la nube. Con el modelo de seguridad de confianza cero de Oracle Cloud Infrastructure, se niega todo el tráfico y puede controlar el tráfico de red dentro de VCN. Un NSG consta de un juego de reglas de seguridad de entrada y salida que se aplican solo a un juego especificado de VNIC en una única VCN.

  • Lista de seguridad

    Para cada subred, puede crear reglas de seguridad que especifiquen el origen, el destino y el tipo de tráfico que se debe permitir dentro y fuera de la subred.

  • Servicio de Base de Datos Oracle MySQL

    Oracle MySQL Database Service es un servicio de base de datos Oracle Cloud Infrastructure (OCI) totalmente gestionado que permite a los desarrolladores desarrollar y desplegar rápidamente aplicaciones nativas seguras en la nube. Optimizado y disponible exclusivamente en OCI, MySQL Database Service es 100% creado, gestionado y soportado por los equipos de ingeniería de OCI y MySQL.

    En esta arquitectura de referencia, Oracle MySQL Database Service se despliega en una máquina virtual y se utiliza para alojar la información de contenido de WordPress. El despliegue no está en un cluster.

  • Almacenamiento de archivos

    El servicio Oracle Cloud Infrastructure File Storage ofrece un sistema de archivos de red duradero, escalable, seguro y empresarial. Puede conectarse a un sistema de archivos del servicio File Storage desde cualquier instancia con hardware dedicado, de máquina virtual o de contenedor en una VCN. También puede acceder a un sistema de archivos desde fuera de la VCN mediante Oracle Cloud Infrastructure FastConnect y la VPN con IPSec.

  • Sistema de gestión de contenido WordPress (CMS)

    WordPress CMS permite crear un sitio de blog completo o un sitio web de uso general. Esta arquitectura utiliza una instancia informática regular para desplegar el motor CMS de WordPress.

  • Equilibrador de carga

    El servicio Oracle Cloud Infrastructure Load Balancing proporciona una distribución automatizada de tráfico desde un único punto de entrada a varios servidores del backend.

  • Servicio de bastión

    La base de Oracle Cloud Infrastructure proporciona acceso seguro restringido y limitado por tiempo a recursos que no tienen puntos finales públicos y que requieren estrictos controles de acceso a los recursos, como hardware dedicado y máquinas virtuales, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Container Engine for Kubernetes (OKE), y cualquier otro recurso que permita el acceso de protocolo de shell seguro (SSH). Con el servicio bastión de Oracle Cloud Infrastructure, puede activar el acceso a hosts privados sin desplegar ni mantener un host de salto. Además, obtiene una postura de seguridad mejorada con permisos basados en identidad y una sesión SSH centralizada, auditada y con un límite de tiempo. La basción de Oracle Cloud Infrastructure elimina la necesidad de una IP pública para el acceso bastión, eliminando los hassle y la posible superficie de ataque al proporcionar acceso remoto.

  • Computar

    El servicio Oracle Cloud Infrastructure Compute permite aprovisionar y gestionar hosts de recursos informáticos en la nube. Puede iniciar instancias informáticas con unidades que cumplan los requisitos de recursos para CPU, memoria, ancho de banda de red y almacenamiento. Después de crear una instancia informática, puede acceder a ella de forma segura, reiniciarla, asociar y desconectar volúmenes y finalizarla cuando ya no sea necesario.

Recomendaciones

Utilice las siguientes recomendaciones como punto de inicio para desplegar WordPress. Sus requisitos pueden diferir de la arquitectura descrita aquí.
  • VCN

    Al crear un VCN, determine el número de bloques CIDR necesarios y el tamaño de cada bloque en función del número de recursos que tiene previsto asociar a subredes en VCN. Utilice bloques CIDR que estén dentro del espacio de direcciones IP privadas estándar.

    Seleccione bloques CIDR que no se superpongan con ninguna otra red (en Oracle Cloud Infrastructure, el centro de datos local u otro proveedor de nube) a la que desea configurar conexiones privadas.

    Después de crear un VCN, puede cambiar, agregar y eliminar sus bloques CIDR.

    Cuando diseñe las subredes, tenga en cuenta sus requisitos de flujo de tráfico y seguridad. Conecte todos los recursos dentro de un nivel o rol específico a la misma subred, que puede servir como límite de seguridad.

  • Listas de seguridad

    Utilice listas de seguridad para definir reglas de entrada y salida que se aplican a toda la subred.

  • Formas informáticas

    Esta arquitectura utiliza una imagen del sistema operativo Oracle Linux 7.8 con una forma VM.Standard2.1 para WordPress CMS. Si las necesidades de recursos de la aplicación son diferentes, puede elegir una forma diferente.

  • Servicio de Base de Datos Oracle MySQL

    En esta arquitectura, WordPress CMS almacena los datos relacionales en Oracle MySQL Database Service. Recomendamos usar la última versión.

Consideraciones

Al desplegar WordPress en Oracle Cloud, tenga en cuenta lo siguiente para obtener escalabilidad, disponibilidad y copia de seguridad:

  • Escalabilidad de CMS de WordPress

    Puede escalar el CMS de WordPress mediante el pool de instancias y las funciones de nomenclatura automática.

    Los pools de instancias permiten aprovisionar y crear varias instancias informáticas basadas en la misma configuración dentro de la misma región.

    La escala automática permite ajustar automáticamente el número de instancias de Compute en un pool de instancias en función de métricas de rendimiento, como la utilización de CPU. El escalado automático le ayuda a proporcionar un rendimiento consistente para los usuarios durante períodos de alta demanda y le ayuda a reducir sus costos durante períodos de baja demanda.

  • Escalabilidad del servicio de base de datos Oracle MySQL

    Seleccione la forma de la máquina para el servicio de base de datos Oracle MySQL en función de la carga de trabajo planificada.

  • Disponibilidad de la aplicación

    Los dominios de fallo proporcionan la mejor resiliencia dentro de un dominio de disponibilidad. Si necesita mayor disponibilidad, considere el uso de varios dominios de disponibilidad o varias regiones.

  • Copias de seguridad del servicio de base de datos Oracle MySQL

    MySQL Database Service admite dos tipos de copia de seguridad: copia de seguridad completa de todos los datos contenidos en el sistema de base de datos y copia de seguridad incremental solo de los datos que se han agregado o cambiado desde la última copia de seguridad completa. Las copias de seguridad se ejecutan de las siguientes maneras:

    • Manual: una acción en la consola o solicitud realizada a través de la API inicia la copia de seguridad. Las copias de seguridad manuales se pueden retener durante un mínimo de un día y un máximo de 365 días.

    • Automático: las copias de seguridad programadas automáticamente se ejecutan sin ninguna interacción necesaria en el momento de elegir el usuario. Las copias de seguridad automáticas se conservan entre uno y 35 días. El valor de retención por defecto es de siete días. Cuando se define, no puede editar el período de retención de una copia de seguridad automática

    Copias de seguridad informáticas

    El servicio Oracle Cloud Infrastructure Block Volumes permite realizar copias de seguridad puntuales de datos en un volumen en bloque. A continuación, puede restaurar estas copias de seguridad en nuevos volúmenes inmediatamente o más tarde.

    También puede utilizar el servicio para realizar una copia de seguridad puntual y resistente a fallos de un volumen de inicio sin interrupción ni tiempo de inactividad de la aplicación. Las capacidades de copia de seguridad de volumen de inicio son las mismas que las capacidades de copia de seguridad de volumen en bloque.

  • Políticas de seguridad

    Utilice políticas para restringir quién puede acceder a los recursos de Oracle Cloud Infrastructure (OCI) que tiene su compañía y cómo.

  • Seguridad de red

    El servicio Networking ofrece dos funciones de firewall virtual que utilizan reglas de seguridad para controlar el tráfico a nivel de paquetes: listas de seguridad y grupos de seguridad de red (NSG). Un NSG consta de un juego de reglas de seguridad de entrada y salida que se aplican solo a un juego de VNIC de su elección en una única VCN. Por ejemplo, puede seleccionar todas las instancias de Compute que actúan como servidores web en el nivel web de una aplicación de varios niveles en VCN.

    Las reglas de seguridad NSG funcionan igual que las reglas de lista de seguridad. Sin embargo, para el origen o destino de una regla de seguridad NSG, puede especificar un NSG en lugar de un bloque CIDR. Por lo tanto, puede escribir fácilmente reglas de seguridad para controlar el tráfico entre dos NSG en el mismo VCN o el tráfico dentro de un único NSG. Al crear un sistema de base de datos, puede especificar uno o más NSG. También puede actualizar un sistema de base de datos existente para utilizar uno o más NSG.

Desplegar

El código Terraform para esta arquitectura de referencia está disponible en GitHub. Puede extraer el código a Oracle Cloud Infrastructure Resource Manager con un solo clic, crear la pila y desplegarlo. También puede descargar el código de GitHub en el equipo, personalizar el código y desplegar la arquitectura mediante la CLI de Terraform.

  • Desplegar mediante la pila de ejemplo en Oracle Cloud Infrastructure Resource Manager:
    1. Haga clic en Despliegue en Oracle Cloud

      Si aún no ha iniciado sesión, introduzca las credenciales de arrendamiento y usuario.

    2. Revise y acepte los términos y condiciones.
    3. Seleccione la región en la que desea desplegar la pila.
    4. Siga las instrucciones y peticiones de datos en pantalla para crear la pila.
    5. Después de crear la pila, haga clic en Acciones de Terraform y seleccione Plan.
    6. Espere a que se complete el trabajo y revise el plan.

      Para realizar cualquier cambio, vuelva a la página Detalles de Pila, haga clic en Editar Pila y realice los cambios necesarios. A continuación, vuelva a ejecutar la acción Plan.

    7. Si no son necesarios otros cambios, vuelva a la página Detalles de Pila, haga clic en Acciones de Terraform y seleccione Aplicar.
  • Desplegar mediante el código Terraform en GitHub:
    1. Vaya a GitHub.
    2. Clone o descargue el repositorio en su computadora local.
    3. Siga las instrucciones del documento README.
  • Despliegue mediante el tutorial, Instale WordPress CMS en Oracle Linux con la base de datos MySQL.

Explorar más

Obtenga más información sobre las mejores prácticas de Oracle Cloud Infrastructure y el servicio de base de datos Oracle MySQL.

Revise estos recursos adicionales:

Log de Cambios

Este log muestra cambios importantes: