
En ingeniería de software , la contenerización es la virtualización a nivel de sistema operativo o de aplicación sobre múltiples recursos, de modo que las aplicaciones de software puedan ejecutarse en espacios de usuario aislados llamados contenedores en cualquier entorno de nube o no nube, independientemente del tipo o proveedor. [ 1 ] El término "contenedor" tiene diferentes significados en diferentes contextos, y es importante asegurar que la definición prevista se ajuste a la comprensión del público. [ 2 ] [ 3 ]
Uso
Cada contenedor es básicamente un entorno de computación en la nube o fuera de la nube completamente funcional y portátil que rodea la aplicación y la mantiene independiente de otros entornos que se ejecutan en paralelo. [ 4 ] Individualmente, cada contenedor simula una aplicación de software diferente y ejecuta procesos aislados [ 5 ] mediante la agrupación de archivos de configuración, bibliotecas y dependencias relacionadas. [ 6 ] Pero, colectivamente, varios contenedores comparten un núcleo de sistema operativo (SO) común. [ 7 ]
En los últimos tiempos, la tecnología de contenedores ha sido ampliamente adoptada por plataformas de computación en la nube como Amazon Web Services , Microsoft Azure , Google Cloud Platform e IBM Cloud . [ 8 ] El Departamento de Defensa de los Estados Unidos también ha impulsado la tecnología de contenedores como una forma de desarrollar e implementar actualizaciones de software con mayor rapidez, con su primera aplicación en el caza de superioridad aérea F-22 . [ 9 ]
Tipos de contenedores
- contenedores del sistema operativo
- Contenedores de aplicaciones
Problemas de seguridad
- Debido al sistema operativo compartido, las amenazas de seguridad pueden afectar a todo el sistema en contenedores.
- En entornos de contenedores, los escáneres de seguridad generalmente protegen el sistema operativo, pero no los contenedores de aplicaciones, lo que añade una vulnerabilidad no deseada.
Gestión de contenedores, orquestación, agrupación en clústeres
La orquestación o gestión de contenedores se utiliza principalmente en el contexto de contenedores de aplicaciones. [ 10 ] Las implementaciones que proporcionan dicha orquestación incluyen Kubernetes y Docker Swarm .
Gestión de clústeres de contenedores
Los clústeres de contenedores requieren gestión. Esto incluye funcionalidades para crear un clúster, actualizar o reparar el software, equilibrar la carga entre las instancias existentes, escalar iniciando o deteniendo instancias para adaptarse al número de usuarios, registrar actividades y monitorizar los registros generados o la propia aplicación mediante la consulta de sensores. Entre las implementaciones de código abierto de este software se encuentran OKD y Rancher. Varias empresas, como Alibaba , Amazon , Google y Microsoft , ofrecen la gestión de clústeres de contenedores como un servicio gestionado.
Véase también
Lecturas adicionales
Artículos de revistas
- Bentaleb, Ouafa; Belloum, Adam SZ; Sebaa, Abderrazak; El-Maouhab, Aouaouche (8 de junio de 2021). "Tecnologías de contenerización: taxonomías, aplicaciones y desafíos". The Journal of Supercomputing . 78 : 1144–1181 . doi : 10.1007/s11227-021-03914-1 . S2CID 236220833 .
- Moreau, David; Wiebels, Kristina; Boettiger, Carl (2023). Contenedores para la reproducibilidad computacional. Nature Reviews Methods Primers , 3(50). https://doi.org/10.1038/s43586-023-00236-9
- Watada, Junzo; Roy, Arunava; Kadikar, Ruturaj; Pham, Hoang; Xu, Bing (2019). "Tendencias emergentes, técnicas y cuestiones abiertas de la contenerización: una revisión" . IEEE Access . 7 : 152443–152472 . Bibcode : 2019IEEEA...7o2443W . doi : 10.1109/ACCESS.2019.2945930 . S2CID 204970781 .
- van den Berg, Tom; Siegel, Barry; Cramp, Anthony (abril de 2017). "Contenedorización de simulaciones basadas en arquitectura de alto nivel: un estudio de caso" . The Journal of Defense Modeling and Simulation: Applications, Methodology, Technology . 14 (2): 115– 138. doi : 10.1177/1548512916662365 . S2CID 64405143 .
- Zhang, Xiao; Tang, Yu; Li, Hao; Liu, Shaotao; Lin, Di (2021). «Diseño de contenedores para sistemas distribuidos en la nube autónomos y controlables». Communications, Signal Processing, and Systems . Lecture Notes in Electrical Engineering. Vol. 654. pp. 30–38 . doi : 10.1007/978-981-15-8411-4_4 . ISBN 978-981-15-8410-7. S2CID 236762442 .
- Odun-Ayo, Isaac; Geteloma, Victor; Eweoya, Ibukun; Ahuja, Ravin (2019). «Virtualización, contenerización, composición y orquestación de servicios de computación en la nube». Ciencia computacional y sus aplicaciones – ICCSA 2019. Notas de clase en ciencias de la computación. Vol. 11622. pp. 403–417 . doi : 10.1007/978-3-030-24305-0_30 . ISBN 978-3-030-24304-3. S2CID 195769647 .
Libros
- Gabriel N. Schenker, Hideto Saito, Hui-Chuan Chloe Lee, Ke-Jou Carol Hsu, (2019) Introducción a la contenerización: Reduzca la carga operativa de su sistema mediante la automatización y gestión de sus contenedores , Packt Publishing , ISBN 978-1-83864-903-6
- Jeeva S. Chelladhurai, Vinod Singh, Pethuru Raj (2014), Learning Docker , Packt Publishing , ISBN 978-0-9888202-0-3
Referencias
- ↑ Scheepers, Mathijs Jeroen (2014). "Virtualización y contenerización de la infraestructura de aplicaciones: una comparación" (PDF) . thijs.ai . Thijs Scheepers. S2CID 18129086. Archivado del original (PDF) el 28 de septiembre de 2024. Consultado el 1 de septiembre de 2025 .
- ↑ Winn, Duncan CE (2017). Cloud Foundry: La guía definitiva para desarrollar, implementar y escalar . O'Reilly Media, Inc. ISBN 9781491932544.
- ↑ "Conceptos: Contenedores" . Kubernetes.io .
- ↑ "¿Qué es la contenerización?" . www.redhat.com . RedHat . Archivado del original el 08-05-2021 . Consultado el 10-07-2021 .
- ↑ Hinck, Tim Maurer, Garrett; Hinck, Tim Maurer, Garrett. "Seguridad en la nube: una introducción para los responsables políticos" . Carnegie Endowment for International Peace . Consultado el 10 de julio de 2021 .
{{cite web}}: CS1 maint: varios nombres: lista de autores ( enlace ) - ↑ Rubens, Paul (27 de junio de 2017). "¿Qué son los contenedores y por qué los necesitas?" . CIO . Consultado el 10 de julio de 2021 .
- ↑ "Contenerización" . www.ibm.com . Consultado el 10 de julio de 2021 .
- ↑ Diciembre de 2019, Jonas P. DeMuro 18 (18 de diciembre de 2019). "¿Qué es la tecnología de contenedores?" . TechRadar India . Recuperado el 10 de julio de 2021 .
{{cite web}}: CS1 maint: nombres numéricos: lista de autores ( enlace ) - ↑ "Pruebas de vuelo autorizan a la flota de F-22 a aceptar software de terceros" . Aviation Week . 30 de agosto de 2022.
- ↑ "¿Qué es la orquestación de contenedores? Definición y preguntas frecuentes relacionadas" . Avi Networks . Consultado el 29 de abril de 2024 .
- computación en la nube
- Software de contenerización
- Esbozos de ingeniería de software