Chef es una tecnología de gestión de configuración desarrollada por Opscode para gestionar la infraestructura en máquinas físicas o virtuales. Es una herramienta de código abierto desarrollada con Ruby y Erlang. Como vivimos en un mundo robusto donde hay nuevas características que llegan todos los días y necesitamos mecanismos adecuados para gestionar el rápido ritmo de desarrollo.
Chef Arquitectura :
Componente de la arquitectura de Chef:
Chef tiene componentes importantes como la estación de trabajo, el libro de recetas, el Node y el servidor Chef. Veamos todo el componente mayoritario en detalle.
- Estación de trabajo:
la estación de trabajo se utiliza para interactuar con Chef-servidor y Chef-Nodes. También se utiliza para crear libros de cocina. La estación de trabajo es un lugar donde tiene lugar toda la interacción, donde se crean, prueban e implementan libros de cocina, y en la estación de trabajo se prueban los códigos. Workstation también se utiliza para definir roles y entornos basados en el entorno de desarrollo y producción.
El cuchillo se usa para interactuar con Chef Nodes. - Chef Server:
el servidor Chef contiene todos los datos de configuración, también almacena libros de cocina, recetas y metadatos que describen cada Node en Chef-Client. Los detalles de configuración se proporcionan al Node a través de Chef-Client. Cualquier cambio realizado debe pasar por el servidor de Chef para ser implementado. Antes de impulsar los cambios, verifica que los Nodes y la estación de trabajo estén emparejados con el servidor mediante el uso de claves de autorización y luego permita la comunicación entre las estaciones de trabajo y los Nodes. - Node:
Chef administra los Nodes y cada Node se configura instalando Chef-Client en él. Chef-Nodes son una máquina como una nube física, virtual, etc. - Libros de cocina:
los libros de cocina se crean usando el lenguaje Ruby y los lenguajes específicos del dominio se usan para recursos específicos. Un libro de cocina contiene recetas que especifican los recursos que se utilizarán y en qué orden se utilizarán. El libro de recetas contiene todos los detalles sobre el trabajo y cambia la configuración del Chef-Node.
Ventajas de usar Chef:
- Implementación continua:
el software se implementa continuamente, lo que permite a la empresa mantenerse al día con los requisitos del mercado y la dinámica cambiante del comportamiento del usuario hacia un producto en particular. Necesitamos innovar constantemente para vivir en la industria competitiva del software y necesitamos un conjunto de herramientas que nos ayude en una implementación rápida y continua. - Aumente la solidez del sistema: dado
que hay muchos servidores para una organización, los gigantes de la gran tecnología no solo tienen granjas de servidores muy grandes, sino que también necesitan mantener servidores redundantes para administrar pocas fallas de servidores que no paralicen a toda la institución, por lo que necesitamos infraestructura. automatización que garantiza que todos los errores se detecten y eliminen antes de la implementación del software. - Adaptación a la nube:
Chef se integra fácilmente con la infraestructura en la nube para una automatización de un solo paso. Se integra fácilmente con los principales proveedores de servicios en la nube, como Amazon Web Service (AWS) y GCP. - Gestión de centros de datos y entornos en la nube:
las grandes empresas tecnológicas lo utilizan para gestionar su infraestructura en la nube. Bajo Chef, podemos gestionar todas sus plataformas en la nube y locales, incluidos los servidores.
Desventajas de Chef:
- Una de las grandes desventajas de Chef es la forma en que se controlan los libros de cocina. Necesita cuidados constantes para que las personas que trabajan no se equivoquen con los libros de cocina de los demás.
- No es muy fácil de aprender si la persona no está familiarizada con Ruby.
- Todavía falta buena documentación.
Publicación traducida automáticamente
Artículo escrito por soumen sinha y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA