Estoy escribiendo un script para iniciar un experimento de generación de carga en varios hosts. Podría escribir un script bash para iniciar varias sesiones ssh, pero esperaba usar algo más estructurado. Como utilizo Python para la mayoría de mis scripts, pensé que Fabric parecía una buena opción.Pasar diferentes argumentos a diferentes hosts en Fabric
El único problema es que tengo que pasar una pequeña cantidad de datos específicos del host con cada comando (realmente solo una identificación o contador), y me gustaría ejecutarlos en paralelo.
En otras palabras, me gustaría hacer algo como lo siguiente, donde host_num es diferente (posiblemente solo incrementado) para cada host.
@parallel
def launch():
with cd('/working/dir'):
run("./start/script -id=%d", host_num)
¿Es esto posible en la tela? Si no, ¿hay alguna otra herramienta que pueda usar para lograr lo mismo?
Gracias. Es una lástima que no haya un mecanismo mejor: este método no parece funcionar demasiado bien si desea ejecutar el mismo script en diferentes conjuntos de host. – bsowell
¿Esto todavía se ejecutará en paralelo? Tengo el mismo desafío, pero tengo 20 hosts, que se activan en tiempo de ejecución (instancias de AWS EC2). Por lo tanto, no creo que programar las declaraciones '' if-then' antes de tiempo funcionaría. –