Saltar al contenido
TURNKEYGNU / LINUX
AplicacionesDocumentaciónBlogCapturas de pantallaGitHubTurnKey Hub
文Español
EnglishEspañol中文日本語PortuguêsDeutsch
Home/Ejemplo de escenario de uso

Documentación

Ejemplo de escenario de uso

Alon quiere refrescar todo TurnKey Linux appliances con las últimas actualizaciones de seguridad.

Escribe un script que acepta el nombre de un appliance como argumento, descarga la última versión de Sourceforge, extrae el sistema de archivos raíz, instala la seguridad actualizaciones, reempaca el sistema de archivos raíz en un appliance ISO y carga una nueva versión de la appliance de vuelta a Sourceforge.

Después de probar el script en su estación de trabajo Ubuntu local, pide al Hub que inicie una nueva instancia TurnKey Core (88.1.2.3), transfiere su script e instala cualquier dependencia una vez que todo se prueba para trabajar, crea una nueva copia de seguridad TKLBAM con captura el estado de su servidor maestro de trabajadores.

Alon ejecuta su primera prueba de nubes:

echo core | cloudtask --workers=88.1.2.3 refresh-iso-security-updates

Una vez que confirma que este trabajo de prueba funcionó correctamente, está listo para el gran trabajo de lote que se ejecutará en 10 servidores en paralelo.

Como esta es una tarea rutinaria Alon espera repetir regularmente, crea una plantilla de cloudtask preconfigurada para ella en $HOME/cloudtasks:

$ mkdir $HOME/cloudtasks
$ cd $HOME/cloudtasks

$ cat > refresh-iso << 'EOF'
from cloudtask import Task

class RefreshISO(Task):
    DESCRIPTION = "This task refreshes security updates on an ISO"
    BACKUP_ID = 123
    COMMAND = 'refresh-iso-security-updates'
    SPLIT = 10
    REPORT = 'mail: cloudtask@example.com alon@example.com liraz@example.com'

    HUB_APIKEY = 'BRDUKK3WDXY3CFQ'

RefreshISO.main()

EOF

$ chmod +x ./refresh-iso

$ cat $PATH_LIST_APPLIANCES | ./refresh-iso
About to launch 10 cloud servers to execute the following task:

  Parameter       Value
  ---------       -----

  jobs            40 (appengine .. zimbra)
  command         refresh-iso-security-updates
  hub-apikey      5YGVPEMHJHU5EA
  ec2-region      us-east-1
  ec2-size        m1.small
  ec2-type        s3
  user            root
  backup-id       123
  workers         -
  overlay         -
  post            -
  pre             -
  timeout         -
  report          mail: cloudtask@turnkeylinux.org liraz@turnkeylinux.org

Is this really what you want? [yes/no] yes

session 11 (pid 29709)
88.178.132.231 (29721): launched new worker
88.214.141.175 (29722): launched new worker
88.15.179.7 (29724): launched new worker
88.229.38.128 (29723): launched new worker

...

45 minutos más tarde, Alon recibe un correo electrónico de Cloudtask que el trabajo ha terminado. En el cuerpo está el registro de sesión detallando si se detectaron errores en cualquier trabajo (por ejemplo, código de salida no cero), cuánto tiempo se llevó a cabo la sesión, etc.

Si lo hubiera querido, Alon podría haber seguido la ejecución de los trabajos de tarea en tiempo real siguiendo los archivos de registro de los trabajadores:

tail -f ~/.cloudtask/11/workers/29721

 

TURNKEYGNU / LINUX

Controla tu infraestructura sin empezar desde cero.

Explorar TurnKey
Acerca deDocumentaciónPreguntas frecuentesBlogGitHub
Libre y de código abiertoSeguro de forma predeterminadaListo para desplegar