¿Qué es la seguridad de registro de contenedores?

La seguridad de contenedores se centra en la protección de los registros de contenedores, los sistemas centralizados de almacenamiento y distribución de imágenes de contenedores. Los registros de contenedores desempeñan un papel fundamental en el ecosistema de los contenedores, ya que garantizan la integridad y la seguridad de las aplicaciones en contenedores. Una seguridad de contenedores adecuada implica el uso de registros de confianza, la implementación de un control de acceso riguroso, la supervisión de las vulnerabilidades y la seguridad del servidor de alojamiento. Además, requiere denegar las conexiones inseguras y eliminar las imágenes obsoletas. Al dar prioridad a la seguridad de registro de contenedores, las organizaciones pueden salvaguardar sus entornos en contenedores y mantener la confianza de usuarios y clientes.

 

Explicación de la seguridad de los registros de contenedores

La seguridad de contenedores se centra en un componente crítico del ecosistema de contenedores: el registro de contenedores. En la narrativa más amplia de la seguridad de contenedores, el registro actúa como custodio de las imágenes de contenedores, los bloques de construcción de las aplicaciones en contenedores. Como tal, el registro de contenedores es más que una unidad de almacenamiento. Se trata, más bien, de un punto nexo en el que se mantiene y distribuye la integridad de las imágenes de las aplicaciones.

Comprender los registros de contenedores

En un entorno contenedorizado, como ya sabe, las aplicaciones con sus dependencias se empaquetan en contenedores, lo que las hace portátiles y fáciles de implementar en distintas plataformas. Los registros de contenedores sirven a este proceso proporcionando una ubicación en la que las imágenes de contenedor pueden versionarse, recuperarse e implementarse de forma coherente.

El registro de contenedores, por tanto, es un sistema centralizado de almacenamiento y distribución de imágenes de contenedores. El registro permite a los desarrolladores y a los equipos de operaciones almacenar, administrar y compartir imágenes de contenedor, que utilizarán para crear e implementar aplicaciones en contenedores y microservicios.

Registros públicos y privados

Las organizaciones pueden utilizar una combinación de registros de contenedores públicos y privados para administrar sus imágenes de contenedores, así como otros artefactos.

Los registros públicos, como Docker Hub y GitHub Container Registry, una subcaracterística de GitHub Packages, ofrecen una amplia colección de imágenes de código abierto que las organizaciones pueden utilizar como base para sus aplicaciones. Por lo general, cualquiera puede acceder a estos registros, lo que facilita a los desarrolladores la búsqueda y el uso de imágenes preconstruidas.

Pero las organizaciones suelen tener requisitos específicos y software propietario que hacen necesario el uso de registros privados.

Registro / repositorio de contenedores público frente a privado

Figura 1: Registro / repositorio de contenedores público frente a privado

Los registros privados de contenedores, como Azure Container Registry, Amazon Elastic Container Registry y Google Container Registry, proporcionan entornos seguros y controlados para almacenar y administrar imágenes propietarias y artefactos relacionados. A estos registros sólo pueden acceder los usuarios autorizados de la organización para garantizar la seguridad de la información confidencial y de las imágenes creadas a medida.

Mediante el uso de una combinación de registros públicos y privados, las organizaciones pueden aprovechar las ventajas de las imágenes de código abierto al tiempo que mantienen el control sobre su software propietario. Este doble enfoque permite a las organizaciones optimizar sus flujos de trabajo de administración de contenedores y agilizar el proceso de implementación.

 

Componentes de seguridad del registro de contenedores

Dado que el registro es fundamental para el funcionamiento de un entorno de contenedores -y que las organizaciones pueden tener fácilmente decenas de miles de imágenes almacenadas en ellos-, asegurar el registro es parte integral de la integridad del ciclo de vida del desarrollo de software.

Las vulnerabilidades pueden comprometer algo más que la aplicación. Un atacante que aproveche una configuración errónea podría obtener acceso no autorizado al sistema CI/CD y desplazarse lateralmente para acceder al SO subyacente. Potencialmente podrían manipular flujos legítimos de CI/CD, obtener tokens sensibles y pasar al entorno de producción, donde la identificación de una credencial expuesta podría permitirles entrar en la red de la organización.

Artículo relacionado: Anatomía de un ataque a la tubería de suministro de la nube

La seguridad del registro empieza por utilizar únicamente registros y bibliotecas de confianza. La supervisión continua de los cambios en las vulnerabilidades es fundamental, junto con la seguridad del servidor de alojamiento y la implementación de políticas de acceso sustanciales. Una seguridad adecuada del registro debe denegar las conexiones inseguras, marcar o eliminar las imágenes obsoletas y aplicar estrictas restricciones de autenticación y autorización.

Veamos estas medidas con más detalle.

 

Fomento de la integridad de imágenes y artefactos en CI/CD

La comprensión de los riesgos asociados a las imágenes y los artefactos pone de manifiesto la importancia de implementar controles estrictos para garantizar su integridad. Considere la posibilidad de implementar las siguientes estrategias.

Rechazar conexiones inseguras

Aunque los registros públicos pueden permitir el acceso anónimo a las imágenes de contenedor, para evitar los ataques de intermediario, la manipulación no autorizada y el acceso no autorizado a información confidencial, debe mantener conexiones seguras.

Para denegar conexiones inseguras, configure sus sistemas para que sólo acepten protocolos seguros como HTTPS o conexiones cifradas TLS. Comience por obtener e instalar un certificado SSL/TLS válido de una autoridad de certificación (CA) de confianza para su dominio. A continuación, actualice la configuración de su servidor o servicio para imponer el uso de HTTPS o TLS, desactivando protocolos inseguros como HTTP. Dependiendo de su configuración, esto puede implicar el ajuste de la configuración en su servidor web (por ejemplo, Nginx, Apache), equilibrador de carga o aplicación. Asimismo, considere la posibilidad de utilizar funciones de seguridad como HSTS (HTTP Strict Transport Security) para indicar a los navegadores que utilicen siempre conexiones seguras cuando accedan a su sitio o servicio.

Eliminar imágenes obsoletas

Establezca una política para definir las imágenes obsoletas -imágenes más antiguas que un periodo de tiempo específico o no utilizadas durante un periodo determinado- y utilice herramientas de registro o API para listar y filtrar las imágenes en función de la política. Por ejemplo, en el Registro Docker, utilice la API del Registro Docker para recuperar los metadatos de las imágenes y filtre por la fecha de la última actualización o la etiqueta. En otros registros, es posible que existan API o herramientas CLI similares. Una vez que haya identificado las imágenes obsoletas, utilice los comandos o API adecuados para eliminarlas, asegurándose de seguir las mejores prácticas del registro para la recogida de basura.

Evitar problemas de IAM en registros de terceros

La gestión de identidades y accesos (IAM) es crucial para las organizaciones, especialmente en los sistemas de gestión de control de fuentes (SCM) como GitHub, donde los repositorios almacenan código y activos valiosos. Una IAM inadecuada puede dar lugar a riesgos de seguridad en el oleoducto CI/CD. Para optimizar la seguridad y la gobernanza de los repositorios, las organizaciones pueden utilizar el inicio de sesión único (SSO) y el sistema de gestión de identidades entre dominios (SCIM) para la administración de los controles de acceso. SSO, sin embargo, sólo está disponible para GitHub Enterprise, dejando otras licencias expuestas a riesgos.

Para mitigar los problemas relacionados con las direcciones de correo electrónico privadas en las cuentas de GitHub, las cuentas fantasma de GitHub y la incorporación incompleta, aplique la autenticación de dos factores (2FA), establezca un protocolo de incorporación con cuentas corporativas dedicadas y mantenga un inventario de las cuentas de usuario. Para las organizaciones con SSO habilitado, la implementación de SCIM garantiza el desaprovisionamiento automático de los usuarios y elimina el acceso a través de credenciales obsoletas. Abordar los riesgos de IAM ayuda a proteger los repositorios, el ecosistema CI/CD y a mantener un alto nivel de seguridad en todos los sistemas.

Artículo relacionado: Los 3 principales riesgos de IAM en su organización GitHub

Emplear suficientes restricciones de autenticación y autorización

Las identidades a las que se conceden más permisos de los necesarios para el repositorio abren oportunidades para la escalada de privilegios y pueden dar lugar a cambios de código no autorizados, a la manipulación del proceso de compilación y al acceso a datos sensibles. La automatización puede ayudar a validar los controles de acceso, comprobar los permisos de los usuarios e identificar posibles vulnerabilidades, lo que permite a las organizaciones adoptar medidas proactivas rutinarias, como:

  • Analizar y mapear todas las identidades a través del ecosistema de ingeniería. Para cada identidad, mapee continuamente el proveedor de identidad, los permisos concedidos y los permisos utilizados. Asegúrese de que el análisis abarca todos los métodos de acceso programático.
  • Eliminación de permisos innecesarios para cada identidad en varios sistemas del entorno.
  • Establecer un periodo aceptable para desactivar o eliminar las cuentas obsoletas. Desactive y elimine las identidades que superen este periodo de inactividad.
  • Cartografiar a todos los colaboradores externos y alinear sus identidades con el principio del menor privilegio. Cuando sea posible, conceda permisos con fecha de caducidad para las cuentas humanas y programáticas.
  • Prohibir a los empleados el acceso a los SCM, CI u otras plataformas de CI/CD utilizando sus direcciones de correo electrónico personales o direcciones de dominios que no sean propiedad de la organización. Supervise las direcciones sin dominio en diferentes sistemas y elimine a los usuarios que no cumplan las normas.
  • Impedir que los usuarios se autorregistren en los sistemas y conceder permisos en función de la necesidad.
  • Evitar conceder permisos base en un sistema a todos los usuarios y a grandes grupos con cuentas de usuario asignadas automáticamente.
  • Crear cuentas dedicadas para cada contexto específico, frente al uso de cuentas compartidas, y conceder el conjunto exacto de permisos necesarios para el contexto en cuestión.

Implementación del almacenamiento seguro

Establezca un repositorio seguro a prueba de manipulaciones para almacenar los artefactos. Habilite el control de versiones para mantener un registro histórico de los cambios en los artefactos e implemente la supervisión en tiempo real para rastrear y alertar sobre actividades sospechosas. En caso de artefactos comprometidos, configure el sistema para facilitar las reversiones a versiones anteriores conocidas como buenas.

Realizar comprobaciones de validación de la integridad desde el desarrollo hasta la producción

Implemente procesos y tecnologías que validen la integridad de los recursos en toda la cadena de entrega del software. A medida que los desarrolladores generan un recurso, deben firmarlo utilizando una infraestructura externa de firma de recursos. Antes de consumir un recurso en etapas posteriores de la canalización, compruebe su integridad con la autoridad de firma.

Firma de códigos

Las soluciones SCM ofrecen la posibilidad de firmar los commits con una clave única para cada colaborador, lo que impide que los commits sin firmar avancen por el pipeline.

Software de verificación de artefactos

Las herramientas diseñadas para firmar y verificar el código y los artefactos, como el Sigstore de la Fundación Linux, pueden impedir que el software no verificado avance por la tubería.

Detección de deriva de configuración

Implemente medidas para detectar derivas en la configuración, como recursos en entornos de nube no administrados mediante una plantilla infraestructura como código firmada. Tales desviaciones podrían indicar implementaciones desde fuentes o procesos no fiables.

Emplear la firma criptográfica

Utilice la infraestructura de clave pública (PKI) para firmar criptográficamente los artefactos en cada etapa del proceso de creación y desarrollo de capacidades. Esta práctica valida las firmas frente a una autoridad de certificación de confianza antes de su consumo. Configure su canalización CI/CD para que rechace los artefactos con firmas no válidas o ausentes para reducir los riesgos de implementar recursos manipulados o cambios no autorizados.

Utilice sólo imágenes de contenedor seguras

Las imágenes de contenedor pueden contener vulnerabilidades que los atacantes pueden explotar para obtener acceso no autorizado al contenedor y a su anfitrión. Para evitarlo, utilice imágenes de contenedor seguras y fiables de fuentes acreditadas y analícelas con regularidad. Cuando se implementa un contenedor desde un registro público, es especialmente importante escanear primero el contenedor en busca de malware y vulnerabilidades.

Aplicar la validación multifuente

Adopte una estrategia de validación multifuente que verifique la integridad de los artefactos utilizando varias fuentes, como sumas de comprobación, firmas digitales y algoritmos hash seguros, así como repositorios de confianza. Mantenga actualizados los algoritmos criptográficos y las claves para conservar su eficacia.

Validación de recursos de terceros

Los recursos de terceros incorporados a las canalizaciones de compilación e implementación, como las secuencias de comandos ejecutadas durante el proceso de compilación, deben someterse a una validación rigurosa. Antes de utilizar estos recursos, calcule su hash y compárelo con el hash oficial proporcionado por el proveedor del recurso.

Integrar la exploración de seguridad

La canalización CI/CD debe utilizar únicamente código vetado (aprobado para producción) al crear imágenes. Incorpore herramientas de escaneado de vulnerabilidades -así como análisis de la composición del software (SCA) y pruebas estáticas de seguridad de las aplicaciones (SAST) - al canal de CI/CD para garantizar la integridad de las imágenes antes de enviarlas al registro del que las extraerá la implementación en producción. Asegúrese también de seguir las mejores prácticas. No construya imágenes, por ejemplo, antes de eliminar todos los componentes de software innecesarios, bibliotecas, archivos de configuración, secretos, etc.

Adoptar un enfoque conservador y prudente permitirá a los equipos abordar las vulnerabilidades en una fase temprana del proceso de desarrollo y mantener un alto nivel de calidad del código, al tiempo que se reduce el riesgo de incidentes de seguridad. Elija una solución de escaneado de imágenes de contenedor que pueda integrarse con todos los tipos de registro. Plataformas como Prisma Cloud proporcionan a los administradores una solución flexible y única para el escaneado de imágenes.

Sandbox de análisis de imágenes

El uso de un sandbox de análisis de imágenes mejorará su estrategia de seguridad de contenedores durante el desarrollo y la implementación de aplicaciones en contenedores, permitiéndole extraer y ejecutar de forma segura imágenes de contenedores que posiblemente contengan paquetes obsoletos y vulnerables y malware incrustado desde repositorios externos.

Las capacidades del sandbox le permitirán escanear en busca de comportamientos anómalos sospechosos de los contenedores como Criptominería, escaneo de puertos, binarios modificados y modificaciones de los módulos del kernel en un entorno controlado. Puede exponer riesgos e identificar dependencias sospechosas enterradas en su cadena de suministro de software que, de otro modo, el análisis estático habría pasado por alto.

Establezca políticas de validación y un calendario de auditorías

Para garantizar una correcta validación de la integridad de las imágenes y los artefactos, las organizaciones deben establecer políticas claras que definan los procesos de validación. Una vez establecidas, audite regularmente el cumplimiento de las políticas internas para identificar y abordar los puntos débiles, así como las áreas de incumplimiento. La supervisión y el análisis continuos ayudarán a detectar anomalías y actividades no autorizadas.

 

Lista de comprobación de seguridad del registro de contenedores de un vistazo

  • Utilice registros y bibliotecas de confianza
  • Asegure el servidor de alojamiento e implemente sólidas políticas de acceso
  • Implementar suficientes restricciones de autenticación y autorización
  • Establecer un almacenamiento seguro para los artefactos
  • Realice comprobaciones de validación de la integridad a lo largo de CI/CD
  • Emplear la firma criptográfica
  • Aplicar la validación multifuente
  • Validar los recursos de terceros
  • Integrar el escaneo de seguridad en la tubería CI/CD
  • Establezca políticas de validación y calendarios de auditorías periódicas

 

Preguntas frecuentes sobre el registro de contenedores

La integración continua (IC) es una práctica de desarrollo en la que los desarrolladores fusionan con frecuencia sus cambios de código en un repositorio central, seguido de compilaciones y pruebas automatizadas. El principal objetivo de la IC es detectar y corregir los errores de integración lo antes posible, mejorando la calidad del software y reduciendo el tiempo de entrega. Las herramientas automatizadas ejecutan pruebas en cada integración para garantizar que el nuevo código no rompe o degrada la aplicación. La IC es un componente fundamental del desarrollo de software moderno, que permite a los equipos mantener una alta velocidad y agilidad en sus procesos de desarrollo.
La implementación continua (DC) es un proceso de lanzamiento de software en el que cada cambio que supera la fase de pruebas automatizadas se implementa automáticamente en el entorno de producción. Amplía la integración continua implementando todos los cambios de código en un entorno de pruebas o de producción después de la fase de compilación. CI garantiza un flujo rápido y coherente de los cambios a la producción, lo que permite a los equipos entregar de forma rápida y fiable características, actualizaciones y correcciones a los clientes. CD minimiza la intervención manual, haciendo que el proceso de implementación sea eficiente.

Una conducción CI/CD automatiza los pasos necesarios para que el software pase del control de versiones a las manos de los usuarios finales. Abarca la integración continua (IC) y la implementación continua (DC), automatizando el proceso de entrega de software y los cambios de infraestructura. El pipeline suele incluir etapas como la compilación del código, las pruebas unitarias, las pruebas de integración y la implementación. Esta automatización garantiza que el software esté siempre en estado de ser implementado, facilitando ciclos de lanzamiento de software rápidos y fiables. Los canales de CI/CD son esenciales para las prácticas DevOps, ya que permiten a los equipos entregar los cambios de código con mayor frecuencia y fiabilidad.

La administración de control de código fuente (SCM) es un sistema que rastrea los cambios en el código fuente y otros activos relacionados con el desarrollo, permitiendo a los desarrolladores colaborar, versionar su código y mantener un historial de los cambios en el código. Entre las herramientas SCM más populares se encuentran Ansible, GitHub, Mercurial y Puppet.
  • SCM ayuda a mantener la coherencia y la trazabilidad del código utilizado para crear imágenes de contenedor, lo que permite a los desarrolladores identificar fácilmente la versión de código específica utilizada para crear una imagen de contenedor.
  • SCM permite a los desarrolladores colaborar en el código, garantizando que las imágenes de contenedor creadas y almacenadas en el registro cumplen los requisitos de calidad de la organización.
  • Las herramientas SCM mejoran el flujo de trabajo integrándose con los canales de CI/CD y automatizando el proceso de creación, prueba y envío de imágenes de contenedor al registro.
La firma de imágenes es el proceso de firmar digitalmente imágenes de contenedor para verificar su autenticidad e integridad. Al adjuntar una firma digital a una imagen, la firma de imágenes garantiza que la imagen no ha sido manipulada y que procede de una fuente de confianza. Herramientas como Docker Content Trust y Notary se utilizan habitualmente para firmar imágenes de contenedor, proporcionando una capa adicional de seguridad en la implementación de aplicaciones en contenedores.
La confianza en los contenidos se refiere a la práctica de seguridad de garantizar que sólo se reciben, transmiten e implementan contenidos de confianza. En el contexto de las aplicaciones en contenedores, implica verificar la integridad y el origen de las imágenes de contenedor mediante firmas digitales. Los mecanismos de confianza del contenido garantizan que las imágenes no han sido manipuladas y proceden de fuentes verificadas, lo que mitiga riesgos como los ataques de intermediario y las inyecciones de código malicioso. La implementación de la confianza en los contenidos es vital para mantener la seguridad de las cadenas de suministro de software en entornos nativos de la nube.
El cifrado de imágenes consiste en codificar las imágenes de contenedor para proteger los datos sensibles y las configuraciones que contienen. Este proceso garantiza que sólo las entidades que dispongan de la clave de descifrado puedan acceder a las imágenes o utilizarlas, protegiéndolas contra accesos no autorizados y violaciones de datos. El cifrado de imágenes es especialmente importante cuando éstas se almacenan o transfieren a través de entornos potencialmente inseguros, como el almacenamiento en nubes públicas o los registros compartidos. Añade una capa de seguridad crítica, protegiendo la información propietaria y los datos sensibles al cumplimiento dentro de las aplicaciones en contenedores.
Las políticas de retención de imágenes son reglas establecidas por las organizaciones para administrar el ciclo de vida de las imágenes de contenedor en un registro. Estas políticas determinan cuánto tiempo se conservan las imágenes, cuándo deben archivarse o eliminarse y qué versiones conservar. Implementar este tipo de políticas ayuda a gestionar los costos de almacenamiento, a mantener el cumplimiento de las normas de gobernanza de datos y a garantizar que sólo las imágenes relevantes y actualizadas estén disponibles para su implementación.

Un webhook es un método para aumentar o alterar el comportamiento de una página web o aplicación web con llamadas de retorno personalizadas. Estas llamadas de retorno pueden ser mantenidas, modificadas y administradas por usuarios y desarrolladores externos que no necesariamente tienen acceso al código fuente de la página web o la aplicación. En la computación en la nube y DevOps, los webhooks se utilizan para activar flujos de trabajo automatizados, como canales de CI/CD, cuando se producen eventos específicos en un repositorio o entorno de implementación. Los webhooks permiten notificaciones en tiempo real y reacciones automáticas a los eventos, mejorando la automatización y la integración entre los servicios y herramientas en la nube.

Una etiqueta de imagen en la tecnología de contenedores es una etiqueta aplicada a una imagen de contenedor en un registro. Sirve como mecanismo para identificar las distintas versiones de una misma imagen, como última, estable, 1.2.3 o beta. Las etiquetas permiten a los desarrolladores y operadores hacer referencia a versiones específicas de una imagen para su implementación, lo que garantiza la implementación correcta y coherente de las aplicaciones. El uso de etiquetas de imagen es esencial para el control de versiones y la administración de la implementación en entornos con contenedores.
Quay es un registro privado de imágenes de contenedor de Red Hat que permite a los usuarios crear, almacenar y distribuir imágenes de contenedor. Ofrece funciones avanzadas como el escaneado de vulnerabilidades de imágenes, la replicación geográfica y amplios controles de acceso. Quay está diseñado para integrarse con sistemas CI/CD, proporcionando una forma segura y eficiente de manejar imágenes de contenedor para Kubernetes y otros entornos de contenedores.
Docker Content Trust (DCT) es una característica de seguridad dentro de Docker para firmar y verificar imágenes de contenedor. Garantiza que las imágenes que se utilicen sean exactamente como el editor las concibió, sin modificar y verificadas. DCT utiliza The Update Framework (TUF) y Notary para la firma y verificación seguras de imágenes. Cuando está activado, los clientes Docker verifican la integridad y el editor de todas las imágenes que extrae, lo que proporciona una salvaguarda contra el uso de imágenes manipuladas.

Notary es una herramienta de código abierto que proporciona un marco para publicar y verificar las firmas de contenidos, como las imágenes de contenedores. Implementa las especificaciones de The Update Framework (TUF) para la entrega y actualización seguras de contenidos. Notary garantiza que el contenido que recibe un usuario es exactamente el que pretendía el editor, protegiéndolo de modificaciones no autorizadas.

Notary se utiliza habitualmente junto con Docker Content Trust para firmar y verificar imágenes Docker.

El marco de actualización (TUF, por sus siglas en inglés) es una especificación diseñada para asegurar los sistemas de actualización de software, protegiéndolos contra ataques comunes como el compromiso de claves y los ataques de intermediario. TUF proporciona un marco flexible que los desarrolladores pueden integrar en los sistemas de actualización de software, garantizando la integridad y autenticidad de las actualizaciones de software. Es especialmente importante en entornos distribuidos, donde el software se entrega a menudo a través de canales inseguros. El diseño de TUF ayuda a evitar la manipulación de los archivos de actualización, garantizando que sólo se apliquen actualizaciones seguras y autorizadas.
La API de registro de contenedores es un conjunto de interfaces de programación que permiten a los usuarios interactuar mediante programación con un registro de contenedores. Permite tareas como empujar, tirar, listar y borrar imágenes de contenedor. Esta API es esencial para automatizar los flujos de trabajo en entornos en contenedores, lo que permite una integración perfecta con la integración continua y las canalizaciones de implementación. Al utilizar la API de registro de contenedores, los desarrolladores y los equipos de operaciones pueden administrar eficazmente las imágenes de contenedor, mejorando la productividad y garantizando la coherencia en las implementaciones.
Un repositorio inmutable en el contexto de los registros de contenedores es un modelo de almacenamiento en el que una vez que una imagen es empujada, no puede ser modificada o eliminada. Los repositorios inmutables son cruciales para mantener una cadena de suministro de software coherente y segura, especialmente en entornos en los que el cumplimiento y la trazabilidad son importantes. Proporcionan una salvaguarda contra las alteraciones accidentales o malintencionadas y garantizan que siempre se pueda recuperar una versión específica de una imagen.
La promoción de imágenes es el proceso de mover imágenes de contenedor de un entorno a otro de forma controlada y rastreable, normalmente como parte de un canal de CI/CD. Implica hacer avanzar una imagen a través de varias etapas, como del desarrollo a las pruebas y luego a la producción, garantizando que sólo se implementen imágenes verificadas y probadas. Las prácticas de promoción de imágenes mejoran la fiabilidad y la estabilidad de las implementaciones, ya que imponen comprobaciones y validaciones de calidad en cada etapa.
La duplicación de imágenes se refiere al proceso de replicar imágenes de contenedor de un registro a otro. Se utiliza para la redundancia, la optimización del rendimiento y el cumplimiento de los requisitos de soberanía de datos. Mediante la duplicación de imágenes, las organizaciones garantizan la disponibilidad en caso de que el registro primario esté caído o inaccesible. También acelera los tiempos de implementación al ubicar las imágenes más cerca de donde se utilizan, lo que reduce la latencia.
La georreplicación consiste en replicar los datos en varias ubicaciones geográficas para mejorar la disponibilidad de los datos y la recuperación en caso de catástrofe. En la computación en la nube, garantiza que las aplicaciones sigan estando disponibles y rindiendo incluso en caso de cortes regionales o problemas de red. La georreplicación proporciona redundancia, garantizando la integridad y disponibilidad de los datos en diferentes regiones.
Un proxy de registro de contenedores actúa como intermediario entre una red privada y un registro público de contenedores. Almacena en caché las imágenes de contenedor localmente, reduciendo la necesidad de descargar repetidamente imágenes del registro público. Esto no sólo acelera el proceso de implementación, sino que también reduce el uso de ancho de banda y mejora la fiabilidad. Un proxy de registro de contenedores es especialmente útil en entornos con estrictos controles de seguridad de la red o acceso limitado a Internet, ya que permite una administración eficaz de las imágenes de contenedores respetando las políticas de seguridad.
Skaffold es una herramienta de línea de comandos de código abierto que facilita el desarrollo continuo para aplicaciones Kubernetes. Automatiza el flujo de trabajo para construir, empujar e implementar aplicaciones, permitiendo a los desarrolladores iterar sobre sus aplicaciones en tiempo real. Skaffold gestiona el flujo de trabajo para crear imágenes de contenedor, enviarlas a un registro e implementarlas en un clúster Kubernetes. Está diseñado para funcionar en diferentes etapas del ciclo de vida de un desarrollo, desde el desarrollo local hasta la integración continua. Skaffold agiliza el proceso de desarrollo e implementación, haciéndolo más eficaz y coherente.
Flux es una herramienta de código abierto que implementa GitOps para Kubernetes, garantizando que el estado de un clúster coincide con la configuración almacenada en un repositorio Git. Aplica automáticamente al cluster los nuevos cambios realizados en el repositorio, lo que permite una implementación continua y automatizada. Flux admite flujos de trabajo complejos y configuraciones multientorno, proporcionando funciones como actualizaciones automáticas, reversión y alertas. Mejora la fiabilidad y la coherencia de las implementaciones en Kubernetes, alineándose con los principios de la infraestructura declarativa y la configuración controlada por versiones.
Anterior ¿Qué es la seguridad de contenedores?
Siguiente ¿Qué es la orquestación de contenedores?