InglésFrancésEspañol

icono de página de OnWorks

pdsh: en línea en la nube

Ejecute pdsh en el proveedor de alojamiento gratuito de OnWorks a través de Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando pdsh que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


pdsh: emite comandos a grupos de hosts en paralelo

SINOPSIS


DPA [opciones] ... comando

DESCRIPCIÓN


DPA es una variante de la rsh(1) comando. diferente a rsh(1), que ejecuta comandos en un solo
servidor remoto, DPA Puede ejecutar varios comandos remotos en paralelo. DPA utiliza un "deslizamiento
ventana "(o fanout) de subprocesos para conservar recursos en el host de inicio al tiempo que permite
algunas conexiones para el tiempo de espera.

Cuándo DPA recibe SIGINT (ctrl-C), enumera el estado de los hilos actuales. Un segundo
SIGINT dentro de un segundo termina el programa. Los hilos pendientes pueden ser cancelados por
emitiendo ctrl-Z dentro de un segundo de ctrl-C. Los hilos pendientes son aquellos que aún no han
iniciado, o todavía está en proceso de conectarse al host remoto.

Si no se especifica un comando remoto en la línea de comando, DPA se ejecuta de forma interactiva,
solicitando comandos y ejecutándolos cuando terminan con un retorno de carro. En
modo interactivo, los nodos de destino que agotan el tiempo de espera en el primer comando no son contactados para
comandos posteriores, y los comandos con el prefijo de un signo de exclamación se ejecutarán en
el sistema local.

La funcionalidad principal de DPA puede complementarse con módulos cargables dinámicamente. los
Los módulos pueden proporcionar un nuevo protocolo de conexión (reemplazando el estándar rcmd(3) protocolo
utilizado por rsh(1)), opciones de filtrado (p. Ej., Eliminar hosts que están "inactivos" del objetivo
lista) y / o opciones de selección de host (p. ej., -a selecciona todos los hosts de una configuración
expediente.). Por defecto, DPA debe tener al menos un módulo "rcmd" cargado. Ver el RCMD MÓDULOS
sección para más información.

RCMD MÓDULOS


El método por el cual DPA ejecuta comandos en hosts remotos se pueden seleccionar en tiempo de ejecución usando
de la forma más -R opción (Ver CAMPUS debajo). Esta funcionalidad se implementa en última instancia a través de
módulos cargables dinámicamente, por lo que la lista de opciones disponibles puede ser diferente de
instalación a instalación. Se imprime una lista de los módulos rcmd actualmente disponibles cuando
usando cualquiera de los -h, -Vo -L opciones. También se mostrará el módulo rcmd predeterminado
con el -h y -V .

Una lista de los rcmd módulos actualmente distribuidos con DPA de la siguiente manera.

rsh Utiliza una implementación interna segura para subprocesos de BSD rcmd(3) para ejecutar comandos usando
la norma rsh(1) protocolo.

exec Ejecuta un comando arbitrario para cada host de destino. El primero de los DPA sanaciones
argumentos es el comando local a ejecutar, seguido de cualquier argumento adicional. Algunos
los parámetros simples se sustituyen en la línea de comando, incluyendo %h para el objetivo
nombre de host, %u para el nombre de usuario remoto, y %n para el rango remoto [0-n] (Para obtener un
literal % use %%). Por ejemplo, lo siguiente se duplicaría usando el ssh
módulo para ejecutar hostname(1) en los hosts foo [0-10]:

pdsh -R exec -w foo [0-10] ssh -x -l% u% h nombre de host

y esta línea de comando se ejecutaría grep(1) en paralelo a través de los archivos
console.foo [0-10]:

pdsh -R exec -w foo [0-10] grep BUG consola.% h

ssh Utiliza una variante de papa(3) para ejecutar varias copias del ssh(1) comando.

mrsh Este módulo utiliza la señor(1) protocolo para ejecutar trabajos en hosts remotos. El mrsh
El protocolo utiliza una autenticación basada en credenciales, renunciando a la necesidad de asignar
puertos reservados. En otros aspectos, actúa como rsh. Los nodos remotos deben
correr mrshd(8) para que funcione el módulo mrsh.

qsh permite DPA para ejecutar trabajos MPI sobre QsNet. Qshell propaga el trabajo actual
directorio, entorno pdsh y capacidades de Elan al proceso remoto. los
Las siguientes variables de entorno también se añaden al entorno: RMS_RANK,
RMS_NODEID, RMS_PROCID, RMS_NNODES y RMS_NPROCS. Ya que DPA necesita ejecutar setuid
root para el soporte de qshell, qshell no admite directamente la propagación de
LD_LIBRARY_PATH y LD_PREOPEN. En su lugar, QSHELL_REMOTE_LD_LIBRARY_PATH y
Las variables de entorno QSHELL_REMOTE_LD_PREOPEN se pueden utilizar y se
reasignado a LD_LIBRARY_PATH y LD_PREOPEN por el demonio qshell si está configurado.

mqsh Similar a qshell, pero usa el protocolo mrsh en lugar del protocolo rsh.

krb4 El módulo krb4 permite a los usuarios ejecutar comandos remotos después de autenticarse con
kerberos. Por supuesto, los demonios rshd remotos deben ser kerberizados.

xcpu El módulo xcpu usa el servicio xcpu para ejecutar comandos remotos.

CAMPUS


La lista de opciones disponibles se determina en tiempo de ejecución complementando la lista de
estándar DPA opciones con cualquier opción proporcionada por cargado rcmd y misceláneos módulos. En algunos
En los casos, las opciones proporcionadas por los módulos pueden entrar en conflicto entre sí. En estos casos, el
los módulos son incompatibles y el primer módulo cargado gana.

Estándar dirigidos lista de nodos opciones


-w OBJETIVOS, ...
Orientar o filtrar la lista especificada de hosts. No usar con ningún otro nodo
opciones de selección (p. ej. -a, -g, si están disponibles). No se permiten espacios en
la lista separada por comas. Argumentos en el OBJETIVOS la lista puede incluir un host normal
nombres, una gama de hosts en formato de lista de hosts (consulte LISTA DE HOSPEDADORES EXPRESIONES), o una sola
Carácter `- 'para leer la lista de hosts en stdin.

Si un host o una lista de hosts está precedido por un carácter '-', esto hace que esos hosts sean
explícitamente excluido. Si el argumento está precedido por un solo carácter '^', es
se toma como la ruta al archivo que contiene una lista de hosts, uno por línea. Si el artículo
comienza con un carácter `/ ', se toma como una expresión regular en la que
filtrar la lista de hosts (un argumento regex también puede ser seguido opcionalmente por
otro '/', por ejemplo /node.*/). También puede ir precedido de un argumento de nombre de archivo o expresión regular
por un signo menos `- 'para excluir en lugar de incluir esos hosts.

Una lista de hosts también puede ir precedida por "usuario @" para especificar un nombre de usuario remoto, otro
que el predeterminado, o "rcmd_type:" para especificar un tipo de conexión rcmd alternativo para
estos hosts. Cuando se usan juntos, el tipo rcmd debe especificarse primero, p. Ej.
"ssh: user1 @ host0" usaría ssh para conectarse a host0 como usuario "user1".

-x anfitrión, anfitrión, ...
Excluya los hosts especificados. Puede especificarse junto con otro nodo de destino
enumerar opciones como -a y -g (Cuando esté disponible). Las listas de host también se pueden especificar para
de la forma más -x opción (ver la LISTA DE HOSPEDADORES EXPRESIONES sección siguiente). Argumentos para -x pueden
también estar precedido por el nombre de archivo (`^ ') y los caracteres regex (' / ') como se describe
anterior, en cuyo caso los hosts resultantes se excluyen como si se hubieran dado a
-w y precedido por el carácter menos `- '.

Estándar DPA opciones


-S Devuelve el mayor de los valores de retorno del comando remoto.

-h Salida del menú de uso y salir. También se imprimirá una lista de módulos rcmd disponibles
al final del mensaje de uso.

-s Solo en AIX, separe el comando remoto stderr y stdout en dos sockets.

-q Enumere los valores de las opciones y la lista de nodos de destino y salga sin realizar ninguna acción.

-b Desactive la función de estado ctrl-C para que un solo ctrl-C elimine el trabajo paralelo. (Lote
Moda)

-l usuario
Esta opción se puede utilizar para ejecutar comandos remotos como otro usuario, sujeto a
autorización. Para BSD rcmd, esto significa que el usuario y el sistema que invoca deben estar en la lista
en el archivo .rhosts del usuario (incluso para root).

-t segundos
Configure el tiempo de espera de la conexión. El valor predeterminado es 10 segundos.

-u segundos
Establezca un límite en la cantidad de tiempo que se permite ejecutar un comando remoto. Defecto
no hay límite. Consulte la nota en LIMITACIONES si utiliza -u con ssh.

-f número
Establezca el número máximo de comandos remotos simultáneos en número. El valor predeterminado es
32.

-R nombre
Establezca el módulo rcmd en nombre . Esta opción también se puede configurar a través de PDSH_RCMD_TYPE
Variable ambiental. Se puede obtener una lista de módulos rcmd disponibles a través del -h,
-Vo -L opciones. El valor predeterminado se enumerará con -h or -V.

-M nombre,...
Cuando varios misceláneos Los módulos ofrecen las mismas opciones para DPA, el primer módulo
"gana" inicializado y los módulos subsiguientes no se cargan. los -M opción permite un
lista de módulos que se especificarán que se inicializarán forzosamente antes que todos los demás,
en efecto, asegurando que se carguen sin conflicto (a menos que entren en conflicto con
mutuamente). Esta opción también se puede configurar a través del entorno PDSH_MISC_MODULES
variable.

-L Listar información sobre todos los cargados DPA módulos y salir.

-N Desactivar nombre de host: prefijo en las líneas de salida.

-d Incluya un estado de hilo más completo cuando se reciba SIGINT y muestre la conexión
y comandar estadísticas de tiempo en stderr cuando haya terminado.

-V Salida DPA información de la versión, junto con la lista de módulos cargados actualmente, y
salida.

qsh / mqsh módulo opciones


-n tareas_por_nodo
Establezca el número de tareas generadas por nodo. El valor predeterminado es 1.

-m bloquear | cíclico
Establezca la asignación en bloque frente a la asignación cíclica de procesos a los nodos. El valor predeterminado es bloque.

-r máscara de riel
Configure la máscara de bits de riel para un trabajo en un sistema de riel múltiple. La máscara de riel predeterminada es 1,
que corresponde únicamente al carril 0. Cada bit establecido en el argumento para -r corresponde a
un riel en el sistema, por lo que un valor de 2 correspondería solo al riel 1, y 3
indique utilizar tanto el carril 1 como el carril 0.

máquinas módulo opciones


-a Apunte a todos los nodos del archivo de máquinas.

géneros módulo opciones


Además de las opciones de géneros que se presentan a continuación, el atributo géneros pdsh_rcmd_type
también se puede utilizar en la base de datos de géneros para especificar un tipo de conexión rcmd alternativo que
el pdsh predeterminado para hosts con este atributo. Por ejemplo, la siguiente línea en el
archivo de géneros

host0 pdsh_rcmd_type = ssh

causaría DPA para usar ssh para conectarse a host0, incluso si rsh fuera el predeterminado. Esto puede
se anulará en la línea de comandos con la sintaxis "rcmd_type: host0".

-A Apunte a todos los nodos en la base de datos de géneros. los -A la opción apuntará a todos los hosts enumerados
en géneros: si desea omitir algunos hosts de forma predeterminada, consulte la -a opción a continuación.

-a Apuntar a todos los nodos de la base de datos de géneros, excepto a aquellos con "pdsh_all_skip"
atributo. Esta es una forma abreviada de ejecutar "pdsh -A -X pdsh_all_skip ..."

-g attr [= val] [, attr [= val], ...]
Nodos de destino que coincidan con cualquiera de los atributos de género especificados (con opción
valores). Conflictos con el -a opción. Si se usa en combinación con otro nodo
opciones de selección como -w, el -g La opción seleccionará de la lista de nodos proporcionada,
en lugar del archivo de géneros en su conjunto. De lo contrario, esta opción se dirige a
nombres de host alternativos en la base de datos de géneros de forma predeterminada. los -i opción proporcionada por
el módulo de géneros se puede utilizar para traducirlos a los géneros canónicos
nombres de host. Si la versión instalada de géneros lo admite, los atributos suministrados a
-g también puede tomar la forma de géneros consultas. Géneros consultas consultará el
base de datos de géneros para la unión, intersección, diferencia o complemento de géneros
atributos y valores. La unión de operación establecida está representada por dos símbolos de tubería
('||'), intersección por dos símbolos y ('&&'), diferencia por dos menos
símbolos ('-') y complementar con una tilde ('~'). Se pueden usar paréntesis para cambiar
el orden de las operaciones. Ver el nodoattr(1) página de manual para ejemplos de géneros
consultas.

-X attr [= val] [, attr [= val], ...]
Excluya los nodos que coincidan con cualquiera de los atributos de género especificados (opcionalmente con
valores). Esta opción se puede utilizar en combinación con cualquier otro nodo
opciones de selección (p. ej. -w, -g, -a, -X también puede tomar la forma de géneros consultas.
Consulte la documentación para los géneros. -g opción para obtener más información sobre
géneros consultas.

-i Solicite traducción entre nombres de host canónicos y alternativos.

-F nombre de archivo
Leer información sobre géneros de nombre de archivo en lugar del archivo de géneros predeterminado del sistema.
If nombre de archivo no especifica una ruta absoluta, entonces se considera que es relativa a la
directorio especificado por el PDSH_GENDERS_DIR Variable ambiental (/ Etc por defecto).
También se puede especificar un archivo de géneros alternativos a través del PDSH_GENDERS_FILE
Variable ambiental.

nodo arriba módulo opciones


-v Elimina los nodos de destino que libnodeupdown considera "inactivos".

barrio bajo módulo opciones


El barrio bajo módulo permite DPA para apuntar a nodos basados ​​en trabajos SLURM que se están ejecutando actualmente. los
barrio bajo El módulo normalmente se llama después de que todas las demás opciones de selección de nodos hayan sido
procesado, y si no se han seleccionado nodos, el módulo intentará leer una ejecución
jobid de la variable de entorno SLURM_JOBID (que se establece cuando se ejecuta bajo un SLURM
asignación). Si SLURM_JOBID hace referencia a un trabajo no válido, se ignorará en silencio.

-j jobid [, jobid, ...]
Lista de destino de nodos asignados al trabajo SLURM Identificación del trabajo. Esta opción se puede utilizar
varias veces para apuntar a múltiples trabajos SLURM. El argumento especial "todos" puede ser
utilizado para apuntar a todos los nodos que ejecutan trabajos SLURM, p. ej. -j all.

-P partición [, partición, ...]
Lista de destino de nodos que contiene la partición SLURM tabique. Esta opción puede
usarse varias veces para apuntar a múltiples particiones SLURM y / o las particiones pueden ser
dado en una lista delimitada por comas.

esfuerzo de torsión módulo opciones


El esfuerzo de torsión módulo permite DPA para apuntar a los nodos según los trabajos de Torque / PBS que se estén ejecutando actualmente.
Similar al módulo slurm, el esfuerzo de torsión El módulo normalmente se llama después de todos los demás nodos.
se han procesado las opciones de selección y, si no se han seleccionado nodos, el módulo
intentar leer un jobid en ejecución de la variable de entorno PBS_JOBID (que se establece cuando
funcionando con una asignación de par).

-j jobid [, jobid, ...]
Lista de destino de nodos asignados al trabajo Torque Identificación del trabajo. Esta opción se puede utilizar
varias veces para apuntar a múltiples trabajos de torsión.

rms módulo opciones


El rms El módulo permite que pdsh apunte a los nodos en función de un recurso RMS. los rms el módulo es
normalmente se llama después de todas las demás opciones de selección de nodos, y si no se han
seleccionado, el módulo examinará la variable de entorno RMS_RESOURCEID e intentará
establezca la lista de destino de hosts en los nodos del recurso RMS. Si un recurso inválido es
denotado, la variable se ignora silenciosamente.

DEG módulo opciones


El módulo SDR admite hosts de destino a través del repositorio de datos del sistema en los SP de IBM.

-a Apunte a todos los nodos en el SDR. La lista se genera a partir del "nombre de host confiable" en
el SDR por defecto.

-i Traduzca los nombres de host entre confiables e iniciales en el SDR, cuando corresponda. Si
el nombre de host de destino coincide con el nombre de host inicial o confiable en el SDR,
se sustituirá el nombre alternativo. Por lo tanto, una lista compuesta de nombres de host iniciales
en su lugar, será reemplazado por una lista de nombres de host confiables. Por ejemplo, cuando se usa
con -a arriba, todos los nombres de host iniciales en el SDR están dirigidos.

-v No apunte a los nodos que están marcados como que no responden en el SDR en el objetivo
interfaz. (Si un nombre de host no aparece en el SDR, ese nombre permanecerá en
la lista de host de destino.)

-G En combinación con -a, incluye todas las particiones.

nodoattr módulo opciones


El nodoattr El módulo admite el acceso a la base de datos de géneros a través del nodoattr(1) comando.
Consulte las géneros sección anterior para obtener una lista de opciones de soporte con este módulo. La opción
uso con el nodoattr módulo es el mismo que géneros, arriba, con la excepción de que el
-i La opción solo se puede utilizar con -a or -g. NOTA: Este módulo solo funcionará con muy antiguos
lanzamientos de géneros donde el nodoattr(1) el comando admite el -r opción, y antes de la
La API de libgenders estaba disponible. Los usuarios que ejecutan versiones más recientes de géneros deberán utilizar la
géneros módulo en su lugar.

grupodsh módulo opciones


El módulo dshgroup permite a pdsh usar archivos de grupo de estilo dsh (o el shell de Dancer) de
/ etc / dsh / group / o ~ / .dsh / grupo /. La ruta de búsqueda predeterminada se puede anular con la
Variable de entorno DSHGROUP_PATH, una lista de directorios separados por dos puntos para buscar. los
El valor predeterminado para DSHGROUP_PATH es / etc / dsh / group.

-g Nombre del grupo,...
Los nodos de destino en el archivo de grupo dsh "nombre de grupo" se encuentran en ~ / .dsh / grupo / nombre de grupo
o / etc / dsh / group / groupname.

-X Nombre del grupo,...
Excluir nodos en el archivo de grupo dsh "nombre de grupo".

Como mejora en DPA, los archivos dshgroup pueden incluir opcionalmente otros archivos dshgroup a través de
un especial #incluir CADENA sintaxis. El argumento para #incluir puede ser una ruta de archivo o
un nombre de grupo, en cuyo caso la ruta utilizada para buscar el archivo de grupo es la misma que si
el grupo había sido especificado para -g.

grupo de red módulo opciones


El módulo netgroup permite que pdsh utilice entradas de netgroup estándar para crear listas de objetivos.
Hospedadores. (/ etc / netgroup o NIS)

-g Nombre del grupo,...
Nodos de destino en el grupo de red "nombre de grupo".

-X Nombre del grupo,...
Excluir nodos en el grupo de red "nombre de grupo".

MEDIO AMBIENTE VARIABLES


PDSH_RCMD_TYPE
Equivalente a la -R opción, el valor de esta variable de entorno se utilizará para
establezca el módulo rcmd predeterminado para que lo use pdsh (por ejemplo, ssh, rsh).

PDSH_SSH_ARGS
Anula los argumentos estándar que DPA pasa al ssh(1) comando ("-2 -a -x
-l% u% h "). El uso de los parámetros %u, %hy %n (como se documenta en el rcmd / exec
sección anterior) es opcional. Si faltan estos parámetros, DPA los anexará
a la línea de comandos ssh porque se asume que son obligatorios.

PDSH_SSH_ARGS_APPEND
Agregue opciones adicionales al ssh(1) comando invocado por DPA. Por ejemplo,
PDSH_SSH_ARGS_APPEND = "- q" ejecutaría ssh en modo silencioso, o "-v" aumentaría el
verbosidad de ssh. (Nota: estos argumentos en realidad se anteponen al ssh
línea de comandos para asegurarse de que aparezcan antes de cualquier argumento de nombre de host de destino para ssh).

WCOLL Si no se utiliza ninguna otra opción de selección de nodo, la variable de entorno WCOLL puede ser
establecido en un nombre de archivo desde el que se leerá una lista de hosts de destino. El archivo debe
contener una lista de hosts, uno por línea (aunque cada línea puede contener una lista de hosts
expresión. Ver LISTA DE HOSPEDADORES EXPRESIONES sección abajo).

CAMINO DE DSHP
Si se establece, la ruta en DSHPATH se utilizará como la RUTA para los procesos remotos.

FANOUT Configure el DPA fanout (Ver descripción de -f encima).

LISTA DE HOSPEDADORES EXPRESIONES


Como se señaló en las secciones anteriores DPA acepta listas de hosts en la forma general: prefijo [nm, l-
k, ...], donde n <my l <k, etc., como alternativa a las listas explícitas de hosts. Esta
La forma no debe confundirse con las clases de caracteres de expresión regular (también denotadas por
`` [] ''). Por ejemplo, foo [19] no representa una expresión que coincida con foo1 o foo9, pero
más bien representa la lista de host degenerada: foo19.

La sintaxis de la lista de hosts está pensada solo como una conveniencia en clústeres con un nombre "prefixNNN"
la convención y la especificación de rangos no deben considerarse necesarias; esto
foo1, foo9 podría especificarse como tal, o por la lista de host foo [1,9].

A continuación se muestran algunos ejemplos de uso:

Ejecute el comando en foo01, foo02, ..., foo05
comando pdsh -w foo [01-05]

Ejecute el comando en foo7, foo9, foo10
comando pdsh -w foo [7,9-10]

Ejecute el comando en foo0, foo4, foo5
comando pdsh -w foo [0-5] -x foo [1-3]

También se admite un sufijo en el nombre de host:

Run command on foo0-eth0,foo1-eth0,foo2-eth0,foo3-eth0
comando pdsh -w foo [0-3] -eth0

Como recordatorio para el lector, algunos shells interpretarán los corchetes ('[' y ']') para el patrón
pareo. Dependiendo de su shell, puede ser necesario incluir listas de rango dentro
citas. Por ejemplo, en tcsh, el primer ejemplo anterior debe ejecutarse como:

comando pdsh -w "foo [01-05]"

D.O. Casablanca


Originalmente una reescritura de IBM DSH(1) por Jim Garlick[email protected]> en ASCI Blue de LLNL-
Sistema Pacífico IBM SP. Ahora se usa en clústeres de Linux en LLNL.

LIMITACIONES


Cuando usas ssh para la ejecución remota, espere que el stderr de ssh se doble con el de
el mando a distancia. Cuando lo invoca DPA, no es posible para ssh pedir
contraseñas si las claves RSA / DSA están configuradas correctamente, etc. ssh implementaciones que
admitir una opción de tiempo de espera de conexión, DPA intenta usar esa opción para hacer cumplir el tiempo de espera
(por ejemplo, -oConnectTimeout = T para OpenSSH); de lo contrario, los tiempos de espera de conexión no son compatibles cuando
usando ssh. Finalmente, no existe una forma confiable de DPA para asegurar que los comandos remotos sean
realmente terminó cuando se usa un tiempo de espera de comando. Así que si -u se usa con ssh los comandos pueden
permanecer ejecutándose en hosts remotos incluso después de que el tiempo de espera haya matado a los locales ssh de los empleados.

La salida de varios procesos por nodo se puede intercalar cuando se usa qshell o mqshell
módulos rcmd.

El número de nodos que DPA puede ejecutar trabajos remotos simultáneamente en está limitado por el
número máximo de subprocesos que se pueden crear al mismo tiempo, así como la disponibilidad de
puertos reservados en los módulos rsh y qshell rcmd. En sistemas que implementan Posix
subprocesos, el límite se define típicamente por la constante PTHREADS_THREADS_MAX.

Use pdsh en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

Comandos de Linux

Ad