GNU/Linux >> Tutoriales Linux >  >> Cent OS

¿Qué es la gestión de la automatización y la configuración con CHEF? Parte 1

Tomemos un escenario simple, tiene 10 servidores redhat donde debe crear un usuario 'tecmint' en todos los servidores. El enfoque directo es que debe iniciar sesión en cada servidor y crear el usuario con el comando useradd. Cuando los servidores son 100 o 1000, prácticamente no es posible iniciar sesión en todos los servidores uno por uno.

Aquí, lo primero que nos viene a la mente en tales casos es escribir un script y dejar que el script realice la ejecución en los servidores, es un enfoque probado. La secuencia de comandos tiene sus propias desventajas, aunque se usa mucho en las organizaciones, es difícil de mantener si el propietario de la secuencia de comandos deja la organización.

El script no funcionará en un entorno heterogéneo. La secuencia de comandos es un método imperativo para realizar la tarea, donde necesita escribir un código largo para una tarea simple, etc., esta situación nos exige buscar Administración de configuración y automatización herramientas como un Chef .

En esta serie de artículos sobre Chef , vamos a ver los procedimientos de instalación y configuración de la herramienta Chef Automation a través de las partes 1-3 y cubre los siguientes temas.

Parte 1 :Qué es la Gestión de Automatización y Configuración con CHEF Parte 2 :Cómo instalar la estación de trabajo CHEF en RHEL/CentOS 8/7 Parte 3 :Cómo instalar el modelo CHEF Cliente-Servidor en RHEL/CentOS 8/7

Este tutorial proporciona un punto de partida sobre cómo Chef trabajos, automatización, gestión de configuración, arquitectura y componentes de Chef.

1. Gestión de la configuración

Gestión de la configuración es el punto de enfoque clave de DevOps práctica. En el ciclo de desarrollo de software, todos los servidores deben estar bien configurados y mantenidos de tal manera que no deban interrumpir el ciclo de desarrollo. La mala gestión de la configuración puede provocar interrupciones del sistema, fugas y filtraciones de datos. Uso de Administración de configuración tools se trata de facilitar la precisión, la eficiencia y la velocidad en el entorno impulsado por DevOps.

Hay dos modelos de herramientas de administración de configuración:basadas en PUSH &basado en PULL . En el basado en PUSH , el servidor maestro envía el código de configuración a los servidores en los que basado en PULL los servidores individuales se ponen en contacto con el maestro para obtener el código de configuración. MARIONETA y CHEF son modelos basados ​​en PULL ampliamente utilizados, ANSIBLE es un modelo popular basado en PUSH. En este artículo, veremos sobre CHEF .

2. ¿Qué es un Chef?

Un cocinero es un programa de automatización de código abierto que permite a los administradores de sistemas automatizar la implementación, las configuraciones, la administración y las tareas en curso en varios servidores y otros dispositivos de una organización de una manera fácil y sencilla.

  • Se establece en 2008 como OPSCODE luego se le cambia el nombre a CHEF (Automatización del chef herramienta).
  • Es una herramienta de automatización basada en Ruby que se utiliza para administrar la configuración, automatizar y orquestar toda la infraestructura de una organización.
  • Es un proyecto de código abierto y viene con dos modelos de implementación:servidor cliente e independiente.
  • Chef es compatible con varios sistemas operativos como Ubuntu, Redhat/CentOS, Fedora, macOS, Windows, AIX, etc.
  • El chef es declarativo y es mucho más simple que los lenguajes de programación nativos.
  • Proporciona implementación continua para permitir que una empresa se mantenga actualizada con los requisitos del mercado.
  • La responsabilidad principal del Chef es mantener el estado definido de Configuración.
  • Tiene su propio lenguaje declarativo para administrar 10s y 1000s de nodos con facilidad.
  • El chef se adapta a la nube, se integra fácilmente con Infraestructura en la nube.
  • El chef es fácil de aprender y es una sólida herramienta compatible con DevOps respaldada por la comunidad.

3. Chef Arquitectura

Cocinero la arquitectura se divide en 3 secciones principales.

  • Estación de trabajo de chef :plataforma de desarrollo local para que los usuarios de Chef creen, prueben y apliquen configuraciones. Puede ser su computadora de escritorio local, computadora portátil con Chef DK (Kit de desarrollo) instalado. Se puede utilizar como entorno de desarrollo/prueba antes de pasar a Producción.
  • Servidor de chef :Es un servidor que tiene instalado y configurado el software chef-server. Es responsable de administrar el código del Chef y acceder al código de configuración desde Chef Workstation. El servidor chef debe ser una máquina Linux, no admitirá ningún otro sistema operativo.
  • Clientes Chef :Están los servidores que se comunican con el servidor Chef para obtener detalles de configuración, como el código del chef y otros archivos dependientes en binarios. Extrae el código del servidor Chef y lo implementa localmente.

4. Componentes de chef

Las siguientes son las claves Chef componentes.

  • Recursos son el módulo básico de Recipe que se utiliza para gestionar la infraestructura.
  • El atributo es la configuración en forma de par clave-valor.
  • Recetas son la colección de atributos que se pueden realizar en la Estación de Trabajo. Es un conjunto de comandos que se pueden aplicar a los Chef Clients como Chef Code.
  • La colección de recetas se denomina libro de cocina .
  • Un cuchillo es una herramienta de línea de comandos en Chef Workstation que interactúa con Chef Server.

5. Modelo de implementación de Chef

Hay dos modelos de implementación para Chef .

  • Servidor Cliente – Se utiliza para la implementación de producción.
  • Chef Cero – Se utiliza para desarrollo, pruebas y POC.

6. ¿Cómo trabaja Chef? Infraestructura como código

Infraestructura como código es la gestión de infraestructura de TI donde nos permite realizar automáticamente varias instalaciones/implementaciones y gestión de configuración. Aquí, todas las configuraciones e instalaciones están escritas como código.

  • El cliente/nodo de Chef se registrará y autenticará con el servidor de Chef.
  • El cliente/nodo de Chef buscará periódicamente en Chef Server. El proceso de autenticación se realiza cada vez que el chef-cliente quiere acceder a los datos almacenados en el chef-servidor.
  • Ohai es una herramienta que será ejecutada por un cliente Chef para determinar el estado del sistema, detectará los atributos (SO, memoria, disco, CPU, kernel, etc.) del nodo y proporcionará esos atributos al chef-cliente. Ohai es parte de la instalación de Chef Client.
  • Si hay algún cambio en el libro de recetas o en la configuración, se enviará al Chef-Client y se actualizará/instalará.
  • Los libros de cocina y la configuración se actualizarán en el servidor de Chef usando Chef Workstation a través de la herramienta de línea de comandos Knife . La estación de trabajo envía todas las políticas al servidor de Chef usando Knife.
  • Como cada cliente/nodo tendrá una verificación periódica con el servidor Chef, las configuraciones se aplicarán individualmente según la función del servidor. Por ejemplo:en Chef Nodes, algunos nodos serán servidores de base de datos, algunos nodos serán servidores de puerta de enlace, etc.
Conclusión

En este artículo, hemos visto los conceptos básicos de la gestión de configuración y la herramienta de automatización Chef. Veremos el proceso paso a paso de la instalación de Chef en los próximos artículos.


Cent OS
  1. Flatpak en Linux:qué es y cómo instalar aplicaciones con él

  2. Apache con Tomcat, una guía de instalación y configuración paso a paso

  3. Conceptos básicos de administrador de sistemas de Linux:administración de cuentas de usuario con UID y GID

  4. Expanda y reduzca volúmenes con Administración de discos

  5. ¿Cuál es la diferencia entre xargs con llaves y sin llaves en Linux?

Composición tipográfica de documentos con LaTeX y TeXstudio en Fedora – Parte 1

¿Qué es Crontab y cómo automatizar tareas en Linux con Crontab?

Gestión de paquetes de Linux con YUM y RPM

Primeros pasos con Vagrant y VirtualBox – Parte 1

Parte 4:configurar SPF y DKIM con Postfix en el servidor de correo CentOS 8/RHEL 8

Cómo instalar y configurar Hive con alta disponibilidad:parte 7