Knowledge center Programación Entornos de programación

La adopción de buenas prácticas en el uso de Red Hat OpenShift Container Platform es fundamental para asegurar despliegues eficientes, seguros y mantenibles. A continuación, se describen los principales lineamientos para optimizar la administración, el desarrollo y la operación en entornos empresariales sobre OpenShift.

Gestión eficiente de recursos

Definir límites y solicitudes de recursos

Configurar adecuadamente los valores de requests y limits en los despliegues para CPU y memoria evita el overcommitment y reduce el riesgo de afectaciones por consumo excesivo.

Uso de Namespaces

Organizar aplicaciones y equipos en namespaces permite una gestión granular de recursos, políticas y visibilidad.

Seguridad en la plataforma

Principio de menor privilegio

Gestionar permisos mediante Roles y RoleBindings, restringiendo el acceso solo a lo estrictamente necesario.

Uso de Security Context Constraints (SCC)

Configurar SCCs personalizados para controlar las capacidades de ejecución de los pods y reducir la superficie de ataque.

Actualizaciones regulares

Mantener el clúster y sus componentes actualizados protege ante vulnerabilidades conocidas.

Despliegue y gestión de aplicaciones

Automatización de procesos

Implementar pipelines CI/CD, preferiblemente usando OpenShift Pipelines (basado en Tekton), para lograr despliegues repetibles y auditables.

Declaratividad

Definir los recursos mediante archivos YAML versionados en sistemas de control de código fuente para facilitar la trazabilidad y la reversión de cambios.

Buenas prácticas en la construcción de imágenes

Utilizar imágenes distroless o minimalistas, definir usuarios no privilegiados y gestionar vulnerabilidades durante el proceso de build.

Monitoreo y registro

Monitorización continua

Habilitar y configurar las soluciones integradas, como Prometheus y Alertmanager, permite detectar incidentes y evaluar el rendimiento del clúster.

Gestión centralizada de logs

Implementar log collectors como Elasticsearch o Loki junto con Kibana o Grafana facilita el análisis y la correlación de eventos.

Alta disponibilidad y resiliencia

  • Replicación de componentes críticos: Asegurar la redundancia de nodos maestros, etcd y otros servicios clave para minimizar el impacto ante fallos.
  • Políticas de rescheduling: Definir pod anti-affinity y node selectors según el tipo de carga de trabajo para distribuir los pods eficientemente.

Gestión de configuraciones y secretos

Uso de ConfigMaps y Secrets

Separar configuraciones dinámicas o sensibles del código, empleando los recursos nativos de OpenShift.

Control de acceso

Limitar la exposición de secretos solo a los servicios/aplicaciones que los requieran, aplicando políticas de RBAC específicas.

Mantenimiento y limpieza del entorno

Eliminación de recursos obsoletos

Adoptar procesos automáticos o manuales para remover pods, imágenes y configuraciones que ya no se utilizan, optimizando los recursos del clúster.

Revisiones periódicas de políticas

Auditar y actualizar roles, permisos y reglas de seguridad de forma regular.

Definición de límites y solicitudes de recursos

En un archivo de despliegue, es recomendable establecer los siguientes parámetros en la especificación de un contenedor:

 resources:   requests:     memory: "512Mi"     cpu: "500m"   limits:     memory: "1Gi"     cpu: "1" 

Esto asegura que el pod cuente con los recursos mínimos garantizados y límites superiores definidos, contribuyendo al buen funcionamiento general del clúster.

 

Esta píldora formativa está extraída del Curso online de Red Hat OpenShift Container Platform (RH OCP): Implementación y gestión de aplicaciones en contenedores.

Este sitio utiliza cookies propias y de terceros con fines analíticos anónimos, para guardar tus preferencias y garantizar el correcto funcionamiento del sitio web.

Puedes aceptar todas las cookies, rechazarlas o configurarlas según tus preferencias utilizando los botones correspondientes.

Puedes obtener más información y volver a configurar tus preferencias en cualquier momento en la Política de cookies