LPBS

Screenshot der Software:
LPBS
Softwarebeschreibung:
Version: 0.9.0
Upload-Datum: 15 Apr 15
Entwickler: Michael Goerz
Lizenz: Frei
Popularität: 24

Rating: nan/5 (Total Votes: 0)

LPBS (Local Mobile Batch System) ist ein Werkzeug, um PBS auf einer lokalen Arbeitsstation zu emulieren.
PBS / TORQUE ist ein Job-Scheduling-System, das auf vielen High Performance Computing Cluster verwendet wird. Die LPBS Paket enthält Werkzeuge für PBS Jobskripte auf einer lokalen Arbeitsstation ausgeführt. Insbesondere liefert die LPBS lqsub Befehl, die gleichen Möglichkeiten wie der PBS qsub Befehl benötigt und betreibt ein Jobskript lokal, in einer Umgebung, praktisch identisch mit einer, PBS / TORQUE würde. Der Job wird im Hintergrund ausgeführt und eine Job-ID zugeordnet werden. Im Gegensatz zu den PBS-System wird LPBS irgendwie festlegen nicht ausführen, aber einfach das ihm vorgelegten Arbeit. LPBS bietet weitere Werkzeuge zur Ausführung von Jobs zu verwalten.
Installation
LPBS aus PyPI installiert werden, wobei
pip LPBS installieren
Alternativ kann das Paket von der Quelle mit installiert werden
python setup.py install
Konfiguration
LPBS speichert alle Konfigurations- und Laufzeitdaten in dem Ordner in der Umgebungsvariable $ LPBS_HOME gegeben. Diese Umgebungsvariable definiert werden. Die Konfiguration ist in der Datei lpbs.cfg innerhalb $ LPBS_HOME. Wenn diese Datei nicht vorhanden ist, wenn eine der LPBS Skripte ausführen, wird eine Konfigurationsdatei mit den folgenden Standardwerten erstellt werden:
[Server]
# Vollständiger Hostname des Vorlage-Server (hostname.domain). Zur Verfügung gestellt werden
# Zu laufenden Job durch die Umgebungsvariable PBS_SERVER. Job-IDs werden am Ende
# In der Server-Hostnamen
Hostname: localhost
Domain: lokale
[Knoten]
# Vollständiger Hostname des Ausführungsknoten (hostname.domain). Zur Verfügung gestellt werden
# Zu laufenden Job durch die Umgebungsvariable PBS_O_HOST. Seit LPBS ist
# Entwickelt, um Arbeitsplätze hier vor Ort durchzuführen, die Einstellungen sollte im allgemeinen
# Identisch mit denen im Abschnitt [Server]
Hostname: localhost
Domain: lokale
[LPBS]
# Einstellung für Auftragsabwicklung.
# Wenn 'username_in_jobid "aktiviert ist, wird die Job-IDs die Form haben
# 'Seqnr.user.hostname.domain "wo" Benutzer "ist der Benutzername des Benutzers
# Den Job.
# Die Datei in "sequence_file 'gegeben wird, für die Verfolgung der" SEQNR' verwendet
# In der Job-ID erscheint.
# Die Datei in "Log-Datei" angegeben ist für die Speicherung aller LPBS Veranstaltungen genutzt. Beide
# 'Sequence_file "und" Log-Datei "beziehen sich auf $ LPBS_HOME.
username_in_jobid: 0
sequence_file: Reihenfolge
Logdatei: lpbs.log
[Scratch]
# Einstellungen für den Scratch-Bereich, um Arbeitsplätze zur Verfügung gestellt. 'Scratch_root' definiert eine
# Stelle, wo Arbeitsplätze sollten temporäre Daten zu schreiben. Wenn als relativer Pfad angegeben,
# Es ist relativ zu $ ​​LPBS_HOME. Umgebungsvariablen werden auf die erweitert werden
# Zeit der Auftragsübermittlung.
# Wenn der Wert von # 'create_jobid_folder' auf 1 mit dem Namen gesetzt, einen Ordner
# Die full job ID innerhalb scratch_root erstellt. Dieser Ordner wird automatisch
# Gelöscht, wenn der Job beendet ist, es sei denn, "keep_scratch 'um 1. Wenn der Job eingestellt
# Gescheitert, der Kratzer werden nicht gelöscht, es sei denn, "delete_failed_scratch 'gesetzt
# Zu 1.
scratch_root: $ SCRATCH_ROOT
create_jobid_folder: 0
keep_scratch: 0
delete_failed_scratch: 0
[Benachrichtigung]
# Einstellungen, wie der Benutzer über Ereignisse wie Start benachrichtigt werden
# Und Ende eines Auftrags. Wenn sent_mail auf 1 gesetzt ist, werden E-Mails gesendet werden
# Meldungen in Abhängigkeit vom Wert des "-m 'Option lqsub. Wenn
# 'Send_growl "auf 1 gesetzt ist, wird Growl (http://growl.info) für die Benachrichtigung verwendet
# Auf MacOS X Benachrichtigungen über Growl berücksichtigen nicht die '-m' Option nehmen
# Während der Auftragsübermittlung.
send_mail: 0
send_growl: 0
[Mail]
# SMTP-Einstellungen für E-Mail-Benachrichtigungen. Benachrichtigung E-Mails werden versandt
# Die mit der Option "von" angegebene Adresse. Der SMTP-Server in 'smtp' angegeben ist
# Für das Senden von E-Mails verwendet, wenn "Authentifizierung" auf 1 gesetzt ist, ist die Authentifizierung
# Mit dem angegebenen "Benutzername" und "Passwort" getan. Wenn "tls" ist 1, TLS-Verschlüsselung
# Verwendet.
von: nobody@example.org
smtp: smtp.example.com:587
Benutzername: user
Passwort: geheim
Authentifizierung: 0
tls: 1
[Knurren]
# Einstellungen für Growl-Benachrichtigungen. Benachrichtigungen werden gesendet, entweder
# Localhost oder ein Remote-Host über das GNTP Protokoll. Die 'hostname' Einstellung
# Gibt die Adresse und den Port des Growl-Server ist die gegebenen 'password'
# Für die Authentifizierung verwendet (beachten Sie, dass, wenn das Senden auf localhost, nicht
# Authentifizierung notwendig, und das Kennwort sollte leer sein). Wenn
# "Klebrig" auf 1 gesetzt ist, werden die Growl-Benachrichtigungen klebrig sein. Es ist
# Möglich, Benachrichtigungen an mehr als einem Host zu senden. In diesem Fall werden sowohl
# "Hostname" und "Kennwort" sollte eine durch Kommata getrennte Liste von Werten sein, mit
# Jede Position, die einem Host. Z.B.
# Hostname: localhost, remote
# Passwort: Geheim
Hostname: localhost: 23053
Passwort:
sticky: 0
[Anmelden]
# 'Logfile' gibt den Namen des zentralen Protokolldatei, relativ zum $ LPBS_HOME.
Logdatei: lpbs.log
Beachten Sie, dass, wenn die Standard-Konfigurationsdatei verwendet wird, muss die Umgebungsvariable $ SCRATCH_ROOT definiert werden und das Verzeichnis, auf das zu existieren und beschreibbar sein, um alle Benutzer, die Jobs übergeben könnte.
Für eine systemweite Installation, / var / lpbs ist ein geeigneter Ort für $ LPBS_HOME. Die Umgebungsvariable kann in /etc/bash.bashrc für alle Benutzer festgelegt werden. Für eine Installation im User-Space wird virtualenv empfohlen.
Nach der Hauptkonfigurationsdatei, wird die Datei $ HOME / .lpbs.cfg auch gelesen werden. Ein Benutzer kann diese nutzen, um die Einstellungen in der Systemkonfiguration zu überschreiben. Schließlich hat die Befehls qsub auch eine --config-Option, eine zusätzliche Konfigurationsdatei noch angeben können, um zu lesen.
Verwendung
LPBS enthält die Skripte lqsub, lqstat und lqdel, die das PBS / Drehmomentbefehle qsub, qstat und lqdel bzw. emulieren. Der Befehl lqsub wird verwendet, um Arbeitsplätze, lqstat wird verwendet, um Informationen über das Ausführen von Arbeitsplätzen zeigen werfen und lqdel wird verwendet, um laufende Aufträge abgebrochen. Zum Beispiel:
Goerz @ localhost: ~> lqsub job.pbs
3.localhost.local
Goerz @ localhost: ~> lqstat
Job-ID Name des Gebiets Kundenwalltime
-------------------- --------------- --------------- ---------------
3.localhost.local pbstest Goerz 00.00.22
Goerz @ localhost: ~> lqstat -f 3.localhost.local
Job Id: 3.localhost.local
& Nbsp; job_name = pbstest
& Nbsp; Job_Owner = Goerz
& Nbsp; Server = localhost.local
& Nbsp; EXEC_HOST = localhost.local
& Nbsp; PID = 14649
& Nbsp; Error_Path = STDERR
& Nbsp; Join_Path = True
& Nbsp; Mail_Points = n
& Nbsp; output_path = pbstest.out
& Nbsp; resources_used.walltime = 00.00.43
Goerz @ localhost: ~> lqdel 3.localhost.local
Der Befehl qsub ist für alle Befehlszeilenoptionen des Befehls qsub in DREHMOMENT Version 2.18 zu verstehen, mit der Ausnahme, dass alle Optionen auf Terminplanung zu tun haben stillschweigend ignoriert. Daher sollten alle PBS Jobskript submittable ohne Veränderung. Einzelheiten dazu führen lqsub, lqstat und lqdel mit der Option --help, und / oder Blick auf die TORQUE Handbuch.
Ein Beispiel Job-Skript
Das Folgende ist ein Beispiel für eine einfache PBS Job-Skript, das gedruckt wird heraus die volle Umfeld, dass die Arbeit sieht. Sie können diese Aufgabe auch mit LPBS und PBS / TORQUE vorlegen, um sicherzustellen, dass mit den entsprechenden Einstellungen in lpbs.cfg, verfügt über die gleiche Umgebung wie LPBS LPBS.
#! / Bin / bash
#PBS -N Pbstest
#PBS -j Gewähr
#PBS -l Nodes = 1: ppn = 1
#PBS -l Walltime = 00: 00: 10
#PBS -l Mem = 10mb
#PBS -o Pbstest.out
echo "################################################ #### "
echo "Benutzer: $ PBS_O_LOGNAME"
echo "Batch Job gestartet auf $ PBS_O_HOST"
echo "PBS Job-ID: $ PBS_JOBID"
echo "PBS Jobnamen: $ PBS_JOBNAME"
echo "PBS-Arbeitsverzeichnis: $ PBS_O_WORKDIR"
echo "Job begann am" `` hostname` date`
echo "Aktuelles Verzeichnis:" `pwd`
echo "PBS Umwelt: $ PBS_ENVIRONMENT"
echo "################################################ #### "
echo "################################################ #### "
echo "Full Umwelt:"
printenv
echo "################################################ #### "
echo "Der Job wird auf dem folgenden Knoten ausgeführt:"
cat $ {PBS_NODEFILE}
echo "################################################ ########## "
echo "Job-Ende:" `date`
exit 0

Anforderungen :

  • Python

Ähnliche Software

BalanceNG
BalanceNG

22 Jun 18

Pyro4
Pyro4

14 Apr 15

mrjob
mrjob

20 Feb 15

python-hostlist
python-hostlist

20 Feb 15

Kommentare zu LPBS

Kommentare nicht gefunden
Kommentar hinzufügen
Schalten Sie auf die Bilder!