Comenzando con SaltStack en Ubuntu 17.04

SaltStack es un programa de administración de configuración basado en Python que está optimizado para la automatización de archivos de configuración, implementaciones y cualquier otra cosa bajo el tema del centro de datos definido por software. En esta guía, aprenderá cómo comenzar con SaltStack, agregar sus primeros nodos y escribir su primera fórmula.

Requisitos

  • Vultr instancia ejecutando Ubuntu 17.04 (maestro)
  • Vultr instancia ejecutando Ubuntu 17.04 (minion)

Terminología

SaltStack utiliza algunas palabras clave que representan un dispositivo o configuración particular, como se explica a continuación:

Maestro

Esta es la instancia maestra que se conecta a todos los servidores agregados a su "clúster" SaltStack, por lo que también ejecuta cualquier comando / comunicación a sus servidores.

Esbirro

Los servidores que se agregan a su SaltStack se llaman minions. Cualquier acción se realiza en uno, en un grupo o en todos tus secuaces.

Fórmula

Una fórmula representa un archivo o un conjunto de archivos que presenta a los minions los comandos que deben ejecutarse. Esto puede ser la instalación de una sola aplicación, como nginxdesplegar archivos de configuración, etc.

Pilar

Un pilar es un archivo que almacena información relacionada con un grupo de minions o un solo minion. Como ejemplo, usaría este tipo de archivo para almacenar los "Hosts virtuales" para Nginx para un minion en particular.

Configuración del servidor

Maestro

Primero, comenzaremos con la configuración del maestro para nuestro clúster SaltStack:

apt-get update
apt-get dist-upgrade
apt-get install salt-master

Por defecto, el maestro SaltStack no está escuchando en ninguna interfaz, ya que el maestro generalmente se está comunicando con los secuaces a través de Internet público. Tenemos que hacer un pequeño cambio en el archivo de configuración que se puede encontrar en /etc/salt/master:

# The address of the interface to bind to:
interface: 0.0.0.0

Después de que los cambios se hayan escrito en el archivo, reinicie el servicio maestro:

service salt-master restart

Esbirro

Ahora podemos proceder con la adición de nuestro primer minion. Siga recto e instale los paquetes necesarios:

apt-get update
apt-get dist-upgrade
apt-get install salt-minion

Luego, necesitamos hacer otro pequeño cambio en la configuración de SaltStack del minion que se puede encontrar en /etc/salt/minion:

# Set the location of the salt master server. If the master server cannot be
# resolved, then the minion will fail to start.
master: <master_server_ip>

Reemplace <master_server_ip>con la dirección IP de su servidor maestro como se configuró anteriormente. Sin embargo, lo ideal sería configurar un registro DNS para esto, a fin de facilitar el cambio del servidor maestro.

Luego, tenemos que reiniciar el servicio de minion para que los cambios se activen:

service salt-minion restart

Operaciones maestras de SaltStack

Ahora tenemos una configuración de maestro y siervo en funcionamiento, por lo que podemos seguir adelante directamente y trabajar con un pequeño conjunto de comandos de SaltStack en el maestro.

Mostrando todos los minions

# salt-key -L
Accepted Keys:
Denied Keys:
Unaccepted Keys:
Rejected Keys:

Nota: Ya le hemos dicho al minion a qué servidor maestro debe conectarse. Por lo tanto, si has seguido esta guía, ya verías al minion debajo de la Unaccepted Keys:sección.

Aceptar un súbdito no aceptado

# salt-key -a <minion_id>

Aceptar a todos los súbditos no aceptados

# salt-key -A

Eliminar a un minion

# salt-key -d <minion_id>

Nota: <minion_id> generalmente representa el nombre de host UNIX de sus minions y se almacena en el /etc/salt/minion_idarchivo en los minions.

Creando tu primera fórmula

Después de agregar nuestro minion al maestro, podemos continuar escribiendo nuestra primera fórmula. Inicialmente, tenemos que crear la carpeta que almacena nuestras fórmulas:

mkdir -p /srv/salt/

Crea la carpeta para nuestra primera fórmula:

mkdir -p /srv/salt/nginx

Básicamente, cualquier instrucción para una fórmula se almacena en el init.slsarchivo, por ejemplo /srv/salt/nginx/init.sls,. Como hay una inmensa cantidad de operaciones que se pueden realizar a través de una fórmula, escribiremos una pequeña fórmula que instala Nginx:

nginx:
  pkg:
    - installed

Ejecutando tu primera fórmula

Después de escribir en el init.slsarchivo como se explicó anteriormente, podemos continuar y ejecutarlo:

salt '*' state.sls nginx

Nota: nginx representa el nombre de la carpeta que hemos creado previamente.

Conclusión

SaltStack es un muy buen software para automatizar cualquier tipo de archivos de configuración, despliegues de servicios, despliegues iniciales de servidores y similares. Debido al hecho de que SaltStack se basa en Python, también puede agregar fácilmente sus propios módulos, si tiene fluidez con el idioma. ¡Feliz automatización!

Dejar un comentario

ZPanel y Sentora en CentOS 6 x64

ZPanel y Sentora en CentOS 6 x64

ZPanel, un panel de control de alojamiento web popular, se bifurcó en 2014 a un nuevo proyecto llamado Sentora. Aprende a instalar Sentora en tu servidor con este tutorial.

Cómo instalar Vtiger CRM Open Source Edition en CentOS 7

Cómo instalar Vtiger CRM Open Source Edition en CentOS 7

Aprende cómo instalar Vtiger CRM, una aplicación de gestión de relaciones con el cliente, en CentOS 7 para aumentar tus ventas y mejorar el servicio al cliente.

Cómo instalar el servidor Counter-Strike 1.6 en Linux

Cómo instalar el servidor Counter-Strike 1.6 en Linux

Esta guía completa le mostrará cómo configurar un servidor Counter-Strike 1.6 en Linux, optimizando el rendimiento y la seguridad para el mejor juego. Aprende los pasos más recientes aquí.

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

Los ataques de ransomware van en aumento, pero ¿puede la IA ayudar a lidiar con el último virus informático? ¿Es la IA la respuesta? Lea aquí, sepa que la IA es una bendición o una perdición

ReactOS: ¿Es este el futuro de Windows?

ReactOS: ¿Es este el futuro de Windows?

ReactOS, un sistema operativo de código abierto y gratuito, está aquí con la última versión. ¿Puede satisfacer las necesidades de los usuarios de Windows de hoy en día y acabar con Microsoft? Averigüemos más sobre este estilo antiguo, pero una experiencia de sistema operativo más nueva.

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Whatsapp finalmente lanzó la aplicación de escritorio para usuarios de Mac y Windows. Ahora puede acceder a Whatsapp desde Windows o Mac fácilmente. Disponible para Windows 8+ y Mac OS 10.9+

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

Lea esto para saber cómo la Inteligencia Artificial se está volviendo popular entre las empresas de pequeña escala y cómo está aumentando las probabilidades de hacerlas crecer y dar ventaja a sus competidores.

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

Recientemente, Apple lanzó macOS Catalina 10.15.4, una actualización complementaria para solucionar problemas, pero parece que la actualización está causando más problemas que conducen al bloqueo de las máquinas Mac. Lee este artículo para obtener más información

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

¿Qué es un sistema de archivos de diario y cómo funciona?

¿Qué es un sistema de archivos de diario y cómo funciona?

Nuestra computadora almacena todos los datos de una manera organizada conocida como sistema de archivos de diario. Es un método eficiente que permite a la computadora buscar y mostrar archivos tan pronto como presiona buscar.