salt-stack - tutorial - saltstack gui
SaltStack: ¿es posible aplicar estados en el master y, si es así, cómo? (3)
Soy un principiante total con SaltStack, pero he logrado configurar algunos estados en una máquina y ejecutarlos en un minion.
Lo que tengo ahora es una configuración de la máquina Debian con salt-master, así como otra configuración de Debian como salt-minion.
Ya que estoy usando el salt-master también como una máquina de desarrollo, me gustaría saber si también puedo aplicar los estados en el propio maestro. Y si es así, ¿cómo?
¿Hay un comando que pueda ejecutar para aplicar los estados en el maestro? (Hasta ahora no he podido encontrarlo)
¿Debo instalar salt-minion en la misma máquina para poder hacer esto y simplemente registrar la misma máquina que un minion en sí mismo?
¡Gracias!
Ya que estoy usando el salt-master también como una máquina de desarrollo, me gustaría saber si también puedo aplicar los estados en el propio maestro. Y si es así, ¿cómo?
Puedes hacerlo siguiendo los siguientes pasos:
- Instala Salt-Minion en tu máquina de desarrollo.
- Edite / etc / salt / minion para señalar a su maestro (vi / etc / salt / minion y cambie lo siguiente: master: salt -> master: 127.0.0.1)
- (opcional) Edite / etc / salt / minion_id a algo que sea significativo para usted
- Pon en marcha tu sal minion
- Usa la tecla de sal para aceptar la llave de tu siervo.
- Usa tu maestro de sal para controlar a tu subordinado como si fuera cualquier otro minion de sal.
¿Hay un comando que pueda ejecutar para aplicar los estados en el maestro?
El salt-master realmente no ejecuta los archivos de estado, los salt-minions lo hacen. Si siguió los pasos anteriores, entonces puede dirigir su Salt-master para ejecutar highstate con el siguiente comando:
salt ''the_value_of_/etc/salt/minion_id'' state.highstate
¿Debo instalar salt-minion en la misma máquina para poder hacer esto y simplemente registrar la misma máquina que un minion en sí mismo?
Sip. Creo que tienes una idea de lo que necesitas hacer y solo necesitas un impulso en la dirección correcta.
Instala tanto Minion como Master en un solo nodo
Yo llamo tal nodo Master Minion . No hay pasos proporcionados - ya lo sabes basado en la pregunta.
Alguna información conceptual en su lugar:
- En resumen, el Maestro nunca aplica estados. En su lugar, activa Minions (el Minion local maestro en este caso).
- Salt Minion y Master son dos servicios independientes con tiempo de ejecución y configuración independientes .
- Mientras que las instancias utilizan software común, el tiempo de ejecución habla a través de la red (independiente de la ubicación).
- Si puede aplicar estados en el Minion remoto, el mismo mecanismo se usará también para el Minion local.
información adicional
Hay dos formas de aplicar estados:
El comando de
salt
lado maestro para "empujar" estados a múltiples minions remotos.rpm -qf $(which salt) salt-master-2015.5.3-4.fc22.noarch
El comando de
salt-call
lado de Minion para "jalar" estados en un solo subordinado local.rpm -qf $(which salt-call) salt-minion-2015.5.3-4.fc22.noarch
Hasta que más de un siervo esté involucrado , es mejor usar salt-call
de salt-call
para el mismo efecto:
salt-call state.highstate
La salt-call
lado de Minion ofrece ventajas especialmente para pruebas, aislamiento y solución de problemas:
- Hace que los problemas de red (si los hay) sean más obvios.
- Aplica de forma segura los estados solo en un solo servidor local (no hay forma de especificar más de uno).
Muestra la salida de depuración directamente en el terminal local:
salt-call -l debug test.ping
El último punto, salt-call
--local
también se puede usar en una configuración sin maestro sin usar una red .
Ahora está cerca de finales de 2015. Revisemos algunas posibilidades más para dominar el autocontrol maestro:
- Instala un minion aparte con sal master en la misma caja.
Este ha sido ampliamente discutido como anteriormente dos respuestas.
- Utilice salt-ssh + salt-run state.orchestrate
Pasos de configuración:
Paso 1: instalar salt-ssh
Paso 2: modifique el archivo de la lista (por ejemplo, / etc / salt / roster en CentOS 6). La instalación por defecto ya le proporciona algún ejemplo. Debido a que probablemente esté en el salt master, por supuesto, la configuración del nombre de usuario / contraseña / clave privada no debería ser un problema para usted. Por ejemplo, para controlar la caja de vagrant de master de sal, esta muestra debería hacer:
localhost:
host: 127.0.0.1
user: vagrant
passwd: vagrant
sudo: True
Ahora, robar de tutorial oficial con un poco de giro:
# /srv/salt/orch/cleanfoo.sls
cmd.run:
salt.function:
- tgt: ''localhost''
- ssh: ''true''
- arg:
- touch /tmp/test.txt
Y ejecutarlo con:
salt-run state.orchestrate orch.cleanfoo
Verifique su directorio de vagrant box / tmp de salt master si el archivo test.txt está allí.
Este enfoque también debería funcionar para el estado. De cualquier manera necesitas instalar algo. Prefiero la segunda forma, ya que, en general, llamar a Salt Master Autocontrol (para proporcionar algo de trabajo) es solo un paso antes de llamar a Minion para procesar otros estados.