Vous pouvez exécuter plusieurs instances d'EPM Automate sur un seul environnement à partir du même répertoire. Vous pouvez également exécuter plusieurs instances sur différents environnements, à partir du même répertoire ou de plusieurs répertoires.
https://cloudpln.pbcs.us1.oraclecloud.com et https://testcloudpln.pbcs.us1.oraclecloud.com. Dans ce scénario, deux possibilités s'offrent à vous :
Exécution de deux sessions à partir du même répertoire
Vous pouvez exécuter deux instances d'EPM Automate à partir du même répertoire. Des scripts spécifiques doivent être implémentés afin de s'assurer que chaque instance fonctionne indépendamment de sorte que la déconnexion d'une instance ne vous déconnecte pas de l'autre. Ces scripts permettent de garantir que les activités EPM Automate poursuivent leur exécution jusqu'à achèvement dans l'environnement, même si vous vous déconnectez de l'autre instance. Cette section contient des échantillons de script pour Windows et Unix/Linux (caller et multisession) que vous pouvez utiliser afin de créer deux sessions à partir du même répertoire.
Pour exécuter plusieurs sessions simultanées, vous devez ajouter les informations de connexion dans le script caller, qui appelle le script multisession afin d'exécuter les commandes login, uploadfile, listfiles et logout. Vous pouvez modifier le script multisession pour effectuer d'autres tâches. Assurez-vous que ces scripts sont stockés dans le même répertoire.
EPM Automate utilise la variable d'environnement EPM_SID pour distinguer plusieurs sessions. Cette variable doit être définie dans le script demandeur sur une valeur unique pour chaque session. Dans les exemples de scripts, il est défini sur les valeurs uniques suivantes :
Dans caller.bat, EPM_SID est défini sur !RANDOM!, ce qui lui affecte un numéro unique généré par le système. Ce numéro est également utilisé lors de la génération des fichiers journaux des sessions. Si vous souhaitez suivre le fichier journal de chaque session, vous pouvez indiquer un numéro unique au lieu de !RANDOM!.
Dans caller.sh, EPM_SID est défini sur l'ID de processus, qui est unique. Si vous souhaitez suivre le fichier journal de chaque session, vous pouvez indiquer un EPM_SID unique en modifiant l'instruction export EPM_SID=$$ dans le script multisession afin d'utiliser la valeur transmise, puis transmettre une valeur unique pour ce paramètre dans le script caller pour chaque session, par exemple en indiquant la valeur EPM SID dans caller.sh comme suit :
$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 : ID de connexion de l'administrateur de service
PASSWORD : mot de passe de l'administrateur de service
URL : URL de connexion de l'environnement
Exemples de script Windows
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
Exemple de script shell Bourne
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
Exécution de deux sessions à partir de répertoires différents
Sur les serveurs UNIX/Linux, vous pouvez exécuter deux sessions dans des environnements différents à partir de répertoires différents sans écrire de scripts spécifiques. Les commandes EPM Automate exécutées à partir de deux répertoires différents n'interfèrent pas l'une avec l'autre, et peuvent fonctionner indépendamment l'une de l'autre. Cette approche ne fonctionne pas sur les ordinateurs Windows où vous devez utiliser des scripts spécifiques mentionnés dans la section précédente.