Sie können mehrere Instanzen von EPM Automate in einer Umgebung aus demselben Verzeichnis ausführen. Ebenso können Sie mehrere Instanzen in verschiedenen Umgebungen aus demselben oder verschiedenen Verzeichnissen ausführen.
https://cloudpln.pbcs.us1.oraclecloud.com und https://testcloudpln.pbcs.us1.oraclecloud.com. In diesem Szenario haben Sie zwei Möglichkeiten:
Zwei Sessions aus demselben Verzeichnis ausführen
Sie können zwei Instanzen von EPM Automate aus demselben Verzeichnis ausführen. Spezifische Skripte müssen implementiert werden, um sicherzustellen, dass die einzelnen Instanzen unabhängig voneinander arbeiten, sodass Sie beim Abmelden von einer Instanz nicht von der anderen abgemeldet werden. Diese Skripte stellen sicher, dass EPM Automate-Aktivitäten weiterhin bis zum Abschluss in der Umgebung ausgeführt werden, auch wenn Sie sich von der anderen Instanz abmelden. Dieser Abschnitt enthält Beispielskripte für Windows und Unix/Linux (caller und multisession), die verwendet werden können, um zwei Sessions aus demselben Verzeichnis zu erstellen.
Um mehrere gleichzeitige Sessions auszuführen, fügen Sie Verbindungsinformationen im caller-Skript hinzu. Damit wird das multisession-Skript zum Ausführen der Befehle login, uploadfile, listfiles und logout aufgerufen. Sie können das multisession-Skript ändern, um damit andere Aufgaben als diese auszuführen. Stellen Sie sicher, dass diese Skripte in demselben Verzeichnis gespeichert sind.
EPM Automate verwendet die Umgebungsvariable EPM_SID, um mehrere Sessions zu unterscheiden. Diese Variable muss im Aufruferskript für jede Session auf einen eindeutigen Wert gesetzt sein. In den Beispielskripten ist sie wie folgt auf eindeutige Werte gesetzt:
In caller.bat ist EPM_SID auf !RANDOM! gesetzt. Dadurch wird der ID eine eindeutige systemgenerierte Zahl zugewiesen. Diese Zahl wird auch zum Generieren der Logdateien für jede Session verwendet. Wenn Sie die Logdatei für jede Session verfolgen möchten, können Sie eine eindeutige Zahl anstelle von !RANDOM! angeben.
In caller.sh, ist EPM_SID auf die Prozess-ID gesetzt, die eindeutig ist. Wenn Sie die Logdatei für jede Session verfolgen möchten, können Sie einen eindeutigen Wert für EPM_SID angeben, indem Sie die Anweisung export EPM_SID=$$ im multisession-Skript ändern, sodass der übergebene Wert verwendet wird, und dann einen eindeutigen Wert für diesen Parameter in das caller-Skript für jede Session übergeben, indem Sie z.B. wie folgt den Wert von EPM SID in caller.sh angeben:
$SCRIPT_DIR/multisession.sh EPM_SID "USERNAME" "PASSWORD" "URL" "/home/user/Snapshot1.zip" & $SCRIPT_DIR/multisession.sh EPM_SID "USERNAME" "PASSWORD" "URL" "/home/user/Snapshot2.zip" &
USERNAME: Anmelde-ID eines Serviceadministrators
PASSWORD: Kennwort des Serviceadministrators
URL: Verbindungs-URL der Umgebung
Windows-Beispielskripte
caller.bat
@echo off setlocal EnableExtensions EnableDelayedExpansion REM syntax: start /B multisession.bat EPM_SID "USERNAME" "PASSWORD" "URL" "SNAPSHOTPATH" start /B multisession.bat !RANDOM! "USERNAME" "PASSWORD" "URL" "C:\Snapshot1.zip" start /B multisession.bat !RANDOM! "USERNAME" "PASSWORD" "URL" "C:\Snapshot2.zip" endlocal
multisession.bat
@echo off set EPM_SID=%1 set USERNAME=%2 set PASSWORD=%3 set URL=%4 set SNAPSHOTNAME=%5 echo User: %USERNAME% > %EPM_SID%.log echo Cloud Instance: %URL% >> %EPM_SID%.log call epmautomate login %USERNAME% %PASSWORD% %URL% >> %EPM_SID%.log call epmautomate uploadfile %SNAPSHOTNAME% >> %EPM_SID%.log call epmautomate listfiles >> %EPM_SID%.log call epmautomate logout
Bourne-Shell-Beispielskript
caller.sh#!/bin/sh
set +x
SCRIPT_DIR=`dirname "${0}"`
# syntax: /home/user/multisession.sh "USERNAME" "PASSWORD" "URL" "SNAPSHOTPATH" &
$SCRIPT_DIR/multisession.sh "USERNAME" "PASSWORD" "URL" "/home/user/Snapshot1.zip" &
$SCRIPT_DIR/multisession.sh "USERNAME" "PASSWORD" "URL" "/home/user/Snapshot2.zip" &
multisession.sh
#!/bin/sh set +x EPM_AUTOMATE_HOME=/home/user/epmautomate export JAVA_HOME=/home/user/jre export EPM_SID=$$ USERNAME=$1 PASSWORD=$2 URL=$3 SNAPSHOTNAME=$4 echo User: $USERNAME > $EPM_SID.log echo Cloud Instance: $URL >> $EPM_SID.log $EPM_AUTOMATE_HOME/bin/epmautomate.sh login $USERNAME $PASSWORD $URL >> $EPM_SID.log $EPM_AUTOMATE_HOME/bin/epmautomate.sh uploadfile $SNAPSHOTNAME >> $EPM_SID.log $EPM_AUTOMATE_HOME/bin/epmautomate.sh listfiles >> $EPM_SID.log $EPM_AUTOMATE_HOME/bin/epmautomate.sh logout
Zwei Sessions aus verschiedenen Verzeichnissen ausführen
Auf UNIX/Linux-Servern können Sie zwei Sessions in verschiedenen Umgebungen aus unterschiedlichen Verzeichnissen ausführen, ohne spezifische Skripte schreiben zu müssen. Die EPM Automate-Befehle, die aus zwei verschiedenen Verzeichnissen ausgeführt werden, beeinträchtigen sich nicht gegenseitig und können unabhängig voneinander arbeiten. Dieser Ansatz funktioniert nicht auf Windows-Computern, auf denen Sie spezifische Skripte verwenden müssen, die im vorherigen Abschnitt erwähnt wurden.