in

SaltStack – Ejemplo de trabajo


En este ejemplo de trabajo, crearemos una fórmula de Salt que configurará el servidor web apache junto con el software PHP. Salt es una excelente manera de ejecutar comandos ad-hoc, pero realmente no querrá configurar continuamente su infraestructura de esta manera. Al crear un conjunto de fórmulas de Salt, puede reproducir de manera confiable cualquier configuración.

Las fórmulas de Salt son archivos de texto YAML simples y, por defecto, residen en su Salt Master en / srv / salt / *. Comencemos por crear una fórmula Salt para instalar el servidor web Apache y PHP al mismo tiempo.

Cree un archivo llamado «websetup.sls» en / srv / salt / directorio y agregue el siguiente código.

websetup.sls

websetup:
   pkg:
      - installed
      - pkgs:
         - apache2
         - php5
         - php5-mysql

En este ejemplo, observe el argumento «- pkgs:». Cada elemento de la lista a continuación «- pkgs:» se pasará junto al administrador de paquetes del sistema operativo para que se instalen juntos. Siempre que tenga una gran lista de paquetes para instalar, esta es la forma más eficiente de instalarlos.

Aplique esta fórmula a Salt master usando el siguiente comando.

root@saltmaster:/home/vagrant# salt 'minion2' state.sls websetup

Ahora, verá lo siguiente producción

minion2:
----------
   ID: websetup
   Function: pkg.installed
   Result: True
   Comment: 3 targeted packages were installed/updated.
   Started: 01:50:53.978396
   Duration: 86738.132 ms
   Changes:
      ----------
         apache2:
            ----------
            new:
               2.4.7-1ubuntu4.13
            old:
         apache2-api-20120211:
            ----------
            new:
               1
            old:
         apache2-bin:
            ----------
            new:
               2.4.7-1ubuntu4.13
            old:
         apache2-data:
            ----------
            new:
               2.4.7-1ubuntu4.13
            old:
         libapache2-mod-php5:
            ----------
            new:
               5.5.9+dfsg-1ubuntu4.21
            old:
         libapr1:
            ----------
            new:
               1.5.0-1
            old:
         libaprutil1:
            ----------
            new:
               1.5.3-1
            old:
         libaprutil1-dbd-sqlite3:
            ----------
            new:
               1.5.3-1
            old:
         libaprutil1-ldap:
            ----------
            new:
               1.5.3-1
            old:
         php5:
            ----------
            new:
               5.5.9+dfsg-1ubuntu4.21
            old:
         php5-cli:
            ----------
            new:
               5.5.9+dfsg-1ubuntu4.21
            old:
         php5-common:
            ----------
            new:
               5.5.9+dfsg-1ubuntu4.21
            old:
         php5-json:
            ----------
            new:
               1.3.2-2build1
            old:
         php5-mhash:
            ----------
            new:
               1
            old:
         php5-mysql:
            ----------
            new:
               5.5.9+dfsg-1ubuntu4.21
            old:
         php5-readline:
            ----------
            new:
               5.5.9+dfsg-1ubuntu4.21
            old:
         phpapi-20121212:
            ----------
            new:
               1
            old:
         ssl-cert:
            ----------
            new:
               1.0.33
            old:
Summary for minion2
------------
Succeeded: 1 (changed = 1)
Failed:    0
------------ 
Total states run:     1
Total run time:  86.738 s

Ahora, ha instalado los paquetes en minion2.

Highstate

Un «estado alto» es una forma de Salt para determinar cuál de las fórmulas de Salt se debe aplicar a un minion determinado. Ejecute un «highstate» usando el siguiente comando.

root@saltmaster:/home/vagrant# salt <targets> state.highstate

top.sls

Cuando el minion solicita ejecutar un estado alto, como se mencionó anteriormente, el minion solicita el top.sls del maestro de Salt y busca fórmulas que coincidan. De forma predeterminada, este archivo se encuentra en /srv/salt/top.sls. Agreguemos nuestra fórmula al archivo top.sls y establezcamos minion2 como objetivo.

base:
   '*':
      - common
   'minion2’:
      - websetup

Ahora, ejecute el alto estado apuntando a minion2 como se muestra a continuación.

root@saltmaster:/home/vagrant# salt 'minion2' state.highstate

Después de aplicar esto, podría ver lo siguiente producción

minion2:
----------
   ID: common_packages
   Function: pkg.installed
   Result: True
   Comment: All specified packages are already installed
   Started: 01:55:17.998824
   Duration: 461.615 ms
   Changes:

Summary for minion2
------------
Succeeded: 1
Failed:    0
------------
Total states run:     1
Total run time: 461.615 ms

Ahora, el servidor web Apache y PHP están instalados en minion2. De esta manera, tenemos que apuntar a los súbditos usando ambos top.sls y alto estado e instale el software necesario con un trabajo mínimo y la máxima flexibilidad.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

soluciona los problemas de desinstalación de algunos programas con esta nueva versión compatible con Windows 7

apple touch icon@2

jakarta ee – ¿Qué son los interceptores en Java EE?