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

Cómo configurar un Chef 12 en CentOS 7 / RHEL 7

Chef es una poderosa utilidad de administración de configuración que convierte la infraestructura en código. Con Chef, los usuarios pueden administrar, configurar e implementar fácilmente los recursos en toda la red desde la ubicación centralizada, independientemente del entorno (nube, local o híbrido). Esta publicación lo ayudará a configurar un chef 12 en CentOS 7 / RHEL 7

A partir del lanzamiento del servidor Chef 11, la interfaz del servidor Chef está escrita en Erlang y el cliente usa Ruby para manejar los cambios de configuración.

Componentes de Chef:

Chef está compuesto por un servidor Chef, una o más estaciones de trabajo y un nodo donde se instala el chef-cliente. El nombre de los componentes se basa en las funciones que desempeña cada máquina en el ecosistema Chef.

Servidor de chef :este es el servidor concentrador central que almacena los libros de cocina y las recetas cargadas desde las estaciones de trabajo, al que luego accede Chef-Client para implementar la configuración.

Estaciones de trabajo de chef :Aquí se crean o editan recetas, libros de cocina y otros detalles de configuración del chef. Luego, todos estos se envían al servidor Chef desde la estación de trabajo, donde estarán disponibles para implementarse en los nodos chef-cliente.

Cliente Chef :este es el nodo de destino donde se implementan las configuraciones en las que está instalado el chef-client. Un nodo puede ser cualquier máquina (física, virtual, en la nube, dispositivo de red, etc.)

Configurar un Chef 12 en CentOS 7:

Requisitos del sistema/Entorno:

Asegúrese de que su sistema cumpla con los siguientes requisitos de recursos. Aquí usaré CentOS 7 como sistema operativo base para la instalación de Chef.

Requisitos previos:

El host debe tener un nombre de dominio completo.

Debe tener una entrada DNS o Host en su lugar.

vi /etc/hosts

192.168.12.11  chefserver.itzgeek.local  chefserver
192.168.12.12  chefdk.itzgeek.local  chefdk
192.168.12.20  chefclient.itzgeek.local chefclient

Instale el paquete wget.

yum -y install wget

Servidor de chef:

El servidor Chef actúa como un concentrador central para los datos de configuración. El servidor almacena libros de recetas, las políticas que se aplican a los nodos y los metadatos relacionados con un nodo registrado. El nodo registrado utiliza el chef-cliente para solicitar al Chef Server los detalles de configuración, como recetas, plantillas y distribución de archivos.

Instalar y configurar Chef Server:

Descargue la última versión del núcleo del servidor Chef (12.10 en el momento de escribir este artículo).

wget https://packages.chef.io/stable/el/7/chef-server-core-12.10.0-1.el7.x86_64.rpm

Una vez que se complete la descarga, instale el núcleo del servidor Chef usando el siguiente comando.

rpm -ivh chef-server-core-*.rpm

Si su sistema de servidor Chef no cumple con los requisitos de hardware recomendados, este paso puede fallar.

Una vez completada la instalación, debe volver a configurar los componentes del servidor chef para que el servidor funcione en conjunto. La reconfiguración puede tardar un poco más .

chef-server-ctl reconfigure

Verifique el estado de los componentes de Chef Server usando el siguiente comando.

chef-server-ctl status

Salida:

run: bookshelf: (pid 6084) 387s; run: log: (pid 6114) 385s
run: nginx: (pid 5973) 417s; run: log: (pid 6276) 359s
run: oc_bifrost: (pid 5816) 477s; run: log: (pid 5831) 476s
run: oc_id: (pid 5961) 420s; run: log: (pid 5966) 419s
run: opscode-erchef: (pid 6186) 379s; run: log: (pid 6176) 381s
run: opscode-expander: (pid 6039) 388s; run: log: (pid 6071) 388s
run: opscode-solr4: (pid 5992) 399s; run: log: (pid 5999) 398s
run: postgresql: (pid 5805) 478s; run: log: (pid 5809) 477s
run: rabbitmq: (pid 5767) 480s; run: log: (pid 5760) 481s
run: redis_lb: (pid 5377) 595s; run: log: (pid 6272) 359s

Cree un usuario administrador y una organización:

Necesitamos crear un usuario administrador. Este usuario tendrá acceso para realizar cambios en los componentes de la infraestructura de la organización que crearemos. El siguiente comando generará la clave privada RSA automáticamente y debe guardarse en una ubicación segura.

Los detalles del usuario se encuentran a continuación.

Nombre de usuario :administrador

Nombre :administrador

Apellido :administrador

Correo electrónico :[email protected]

Contraseña :contraseña

Nombre de archivo :admin.pem

Ruta :/etc/chef

chef-server-ctl user-create admin admin admin [email protected] password -f /etc/chef/admin.pem

Comando original:

chef-server-ctl user-create USER_NAME FIRST_NAME LAST_NAME EMAIL 'PASSWORD' -f PATH_FILE_NAME

Ha llegado el momento de crear una organización para albergar las configuraciones de los chefs.

Nombre corto :itzgeek (Nota:el nombre debe comenzar con una letra minúscula o un dígito, puede contener letras minúsculas, números, guiones y guiones bajos, y debe tener entre 1 y 255 caracteres )

Nombre completo de la organización :ITzGeek Inc (Nota:debe comenzar con un carácter que no sea un espacio en blanco y debe tener entre 1 y 1023 caracteres )

Usuario de asociación :admin (Nota:Esta opción asociará el usuario creado previamente (admin ) con los administradores grupo de seguridad en el servidor chef )

Nombre de archivo :itzgeek-validator.pem (Nota:el comando generará la clave privada RSA automáticamente y debe guardarse en una ubicación segura )

Ruta :/etc/chef

chef-server-ctl org-create itzgeek "ITzGeek, Inc" --association_user admin -f /etc/chef/itzgeek-validator.pem

Comando original:

chef-server-ctl org-create short_name 'full_organization_name' --association_user user_name --filename ORGANIZATION-validator.pem

A partir de ahora, tendrá dos .pem claves en /etc/chef directorio. En nuestro caso, se llamarán admin.pem y itzgeek-validator.pem . Pronto colocaremos estos dos archivos en la estación de trabajo Chef.

Cortafuegos:

El servidor Chef requiere que los siguientes puertos estén abiertos a través del firewall. Pero habilitando solo 80 y 443 también serviría para nosotros.

Ejecute el siguiente comando para permitir 80 y 443 a través del cortafuegos.

firewall-cmd --permanent --zone public --add-service http
firewall-cmd --permanent --zone public --add-service https
firewall-cmd --reload
Páginas:1 2 3
Cent OS
  1. Cómo configurar el servidor SysLog en CentOS 7 / RHEL 7

  2. Cómo configurar el servidor NFS en CentOS 7 / RHEL 7

  3. Cómo configurar Icinga Web 2 en CentOS 7 / RHEL 7

  4. Cómo configurar el servidor SVN en CentOS, RHEL y Fedora

  5. Cómo configurar un servidor proxy squid en CentOS/RHEL 7

Cómo configurar un clúster de alta disponibilidad en CentOS 8/RHEL 8

Cómo configurar Icinga Web 2 en CentOS 8 / RHEL 8

Cómo ejecutar Google Chrome como root en CentOS 7 / RHEL 7

Cómo configurar el inicio de sesión sin contraseña SSH en CentOS 8 / RHEL 8

Cómo configurar el servidor SysLog centralizado en CentOS 8 / RHEL 8

Cómo configurar la replicación de MySQL en RHEL/Centos

    NOMBRE DEL HOST DIRECCIÓN IP SO CPU MEMORIA DISCO PROPÓSITO
    chefserver.itzgeek.local 192.168.12.11 CentOS 7 4 4 GB 40 GB Servidor de chef
    chefdk.itzgeek.local 192.168.12.12 CentOS 7 1 512 MB NA Estación de trabajo Chef (kit de desarrollo Chef)
    chefclient.itzgeek.local 192.168.12.20 CentOS 7 1 512 MB NA Cliente Chef