Planificar la infraestructura de contenedor
Determine qué software desea utilizar para crear una infraestructura que pueda dar soporte a los contendores que esté ejecutando su aplicación de HCL Commerce.
Para obtener más información sobre Docker, consulte el Sitio web de Docker.Note: HCL no es responsable de la infraestructura. Utilice la siguiente información de alto nivel como guía para decidir cómo desea crear la infraestructura para que se adapte a sus requisitos de negocio exclusivos.
![Capas](../images/wcv9layers.gif)
- 1 Determine dónde desea alojar y ejecutar los contenedores para la producción. Puede alojar HCL Commerce en una máquina nativa, en la nube o en máquinas virtuales.
- 2 Determine qué configuración de red utilizarán los contenedores para comunicarse entre sí. Para obtener más información, consulte Red de contenedores de Docker.
- 3 Determine la configuración de seguridad y los certificados.
- 4 Determine qué herramientas utilizar para persistir datos importantes a medida que se destruyen y crean los contenedores.
- La comunicación entre contenedores requiere configuraciones específicas y acceso a información confidencial como, por ejemplo, claves de API, contraseñas y certificados. Determine qué sistema de gestión de datos utilizar para almacenar y acceder a estos datos de forma segura. Cree una estrategia para actualizar las configuraciones del contenedor a medida que se crean y destruyen los contenedores o cuando se añaden nuevos hosts de Docker a su entorno. Para comprender mejor las configuraciones necesarias, consulte Lógica de inicio del contenedor Docker para la Versión 9.0.0.2 HCL Commerce Version 9.1.
Algunos ejemplos de software de gestión de datos incluyen Vault, Consul y ETCD.
- A medida que se destruyen o crean los contenedores de search-app, es necesario conservar los datos de índice de búsqueda en los nuevos contenedores porque la tienda se basa en el índice de búsqueda. Determine qué sistema de almacenamiento remoto usar para almacenar el índice de búsqueda para los nodos maestro de búsqueda y de repetidor.
Algunos ejemplos de almacenamiento remoto son GlusterFS, ScaleIO o Ceph.
- La comunicación entre contenedores requiere configuraciones específicas y acceso a información confidencial como, por ejemplo, claves de API, contraseñas y certificados. Determine qué sistema de gestión de datos utilizar para almacenar y acceder a estos datos de forma segura. Cree una estrategia para actualizar las configuraciones del contenedor a medida que se crean y destruyen los contenedores o cuando se añaden nuevos hosts de Docker a su entorno. Para comprender mejor las configuraciones necesarias, consulte Lógica de inicio del contenedor Docker para la Versión 9.0.0.2 HCL Commerce Version 9.1.
- 5 Ahora que los contenedores están configurados, cree una estrategia para supervisar el estado de todo el sistema para evitar que se produzcan interrupciones o minimizar el impacto de fallos inesperados. Los registros de HCL Commerce se capturan dentro de los contenedores, por lo que debe determinar cómo recopilar las entradas de registro en todos los contenedores. También es necesario determinar cómo mostrar la información en una estructura organizada y legible y cómo buscar en estos registros para dar soporte a la resolución de problemas.
Algunos ejemplos de software para el registro y la supervisión incluyen Graylog, ELK o Prometheus.
- 6, 7 La aplicación de HCL Commerce se ejecuta en contenedores de Docker separados. Puede agrupar estos contenedores para lograr redundancia. A medida que aumentan las necesidades empresariales, es posible que tenga que desplegar más hosts de Docker y más clústeres de contenedor. Determine qué herramienta de orquestación de Docker usar para gestionar el ciclo de vida del contenedor para actualizar, sustituir, escalar hacia arriba o escalar hacia abajo según sea necesario.
- 8 En este momento, la aplicación funciona dentro de la red interna pero también tiene que integrarse con sistemas de terceros y exponer los contenedores al tráfico externo. Determine una solución de equilibrio de carga adecuada que incorpore automáticamente el registro de servicios y el descubrimiento. Al configurar el equilibrio de carga, también debe tener en cuenta el soporte para la ejecución de varias versiones de la aplicación al mismo tiempo para evitar que las conexiones se interrumpan o direccionen el tráfico a una versión incorrecta durante las actualizaciones de mantenimiento o el despliegue de personalización.
Algunos ejemplos de software para lograr el equilibrio de carga y el registro de servicios y el descubrimiento incluyen NGINX, DC/OS VIP o Marathon-LB.
La siguiente tabla ilustra las soluciones de referencia proporcionadas para las aplicaciones de la plataforma de contenedor de Docker.
Important: Dado que la plataforma del contenedor Docker se puede configurar basándose en tecnologías variadas, la información proporcionada en esta tabla solo sirve como referencia. Debe ajustar las soluciones de referencia proporcionadas o adoptar otras soluciones basadas en sus necesidades comerciales en el entorno de producción.
Capa de plataforma | Función | Aplicaciones/soluciones de referencia | |
---|---|---|---|
DC/OS | Kubernetes | ||
Capa de equilibrio de carga | Equilibrio de carga (externo/interno) | de Marathon-LB | Ingress |
Capa de aplicaciones | Aplicaciones | HCL Commerce | HCL Commerce |
Capa de control | Registro de servicio y descubrimiento | de DNS interno | DNS interno |
Escala | Posibilidad DC/OS | Capacidad de Kubernetes Programas de utilidad de despliegue de HCL Commerce2 | |
Orquestación de Docker/planificación | de funciones de DC/OS | Capacidad de Kubernetes | |
Orquestación de despliegue (ejecución secuencial de despliegue) | de Jenkins | Programas de utilidad de despliegue de HCL Commerce de Jenkins2 | |
Catálogo de aplicaciones | N/A1 | N/A1 | |
Capa de operación | : registro | N/A1 | ELK |
Supervisión (alerta, comprobación de estado, etc.) | N/A1 | de Prometheus | |
Capa de persistencia | Almacenamiento | PersistentVolumeClaim (PVC) | |
: configuración | de Consul/Vault | Consul/Vault | |
Capa base | Escaneo de seguridad | N/A1 | N/A1 |
Gestión de certificados | de Vault | Caja fuerte | |
Capa de seguridad de red | Red | N/A1 | N/A1 |
Capa de hipervisor | Contenedor OS | CentOS o Redhat | CentOS o Redhat |
Hipervisor (máquina interna/virtual/nativa) | ESX | ESX | |
1 HCL no proporciona un libro blanco de referencia para estas soluciones. Sin embargo, puede aplicar cualquier solución existente en la industria en función de las necesidades de la empresa. | |||
2 Esta cadena de herramientas está disponible en GitHub y se proporciona solo con fines de referencia. HCL no proporciona soporte para el uso de la cadena de herramientas. |