Table des matières

Exalead / Installation

Cet article décrit les étapes pour installer PLMA sur un serveur vdemopro :

Script d'installation

Exemple de script d'installation : installBmw-2019X.R0-19000.sh

Ne pas oublier de faire un chmod 755 sur le script :

chmod 755 installBmw-2019X.R0-19000.sh

A changer :

# Remove old datadir
datadir='/home/data/RTV/DEMOR420/cloudview/data-bmw-2019X-19000/'
kitdir='/home/data/RTV/DEMOR420/cloudview/cloudview-V6R2019x.R0.94953-linux-x64'
license='/tmp/cvlicense.dat'
appfile='/tmp/bmwplm-app-1.1-20191022.212240-18-no-cas.zip'
propfile='/tmp/app.properties'
enoviaxml='/home/data/RTV/DEMOR420/cloudview/enovia_init.xml'
if [ -d $datadir ]; then
        echo '============== STOP CLOUDVIEW INSTANCE =============='
        $datadir/bin/cvinit.sh stop
        sleep 15
        echo '============== REMOVE DATADIR =============='
        rm -rf $datadir
fi
echo '============== INSTALL CLOUDVIEW INSTANCE =============='
# Install from Kit
$kitdir/install.sh -port 19000 -host localhost -data $datadir -license $license
# Start instance to initialize
$datadir/bin/cvinit.sh start
# Wait for started
$datadir/bin/cvinit.sh wait-started
# Initialize instance configuration
$datadir/bin/postinstall --addDefaultCrawlerServer=false --consolidation=true --defineStandardMetas=false --dynamicReporting=false --enableUDR=false
# Build configuration
$datadir/bin/buildgct
# Restart instance
$datadir/bin/cvinit.sh restart
# Wait for started
$datadir/bin/cvinit.sh wait-started
echo '============== INSTALL APPLICATION =============='
# Install application
$datadir/bin/cvadmin apps install noversioncheck=true apps-file=$appfile propertyFile=$propfile
echo '============== INIT ENOVIA JARS AND ENV VARIABLES =============='
# Init Enovia configuration
curl --header "Content-Type: text/xml;charset=UTF-8"  --header "SOAPAction:tns:scanConnector"  --data @$enoviaxml http://localhost:19011/mami/connect/soap
sleep 30
# Build configuration
$datadir/bin/buildgct
# Restart instance
$datadir/bin/cvinit.sh restart
# Wait for started
$datadir/bin/cvinit.sh wait-started
echo '============== INSTALLATION DONE =============='

Exemple de fichier app.properties

ENOVIA_URL=vdemopro078dsy.extranet.3ds.com
ENOVIA_PWD_CRYPTED=DemoCenter01
BASEPORT=13000
HOSTNAME=localhost
INSTALL=cvdefault

Exemple de fichier enoviaxml

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:exa="exa:com.exalead.mercury.mami.connect.v10" xmlns:exa1="exa:exa.bee">
        <soapenv:Header/>
        <soapenv:Body>
                <ScanConnector xmlns="exa:com.exalead.mercury.mami.connect.v10" xmlns:ns2="exa:exa.bee" xmlns:ns3="exa:com.exalead.mercury.component.config.descriptor" scanMode="Bind CloudView to Matrix installation" connectorName="Project">
                        <ns2:KeyValue value="/home/data/RTV/DEMOR420/studio" description="" type="string" key="MatrixHome"/>
                        <ns2:KeyValue value="V6R2018x" description="" type="enum:V6R2018x,V6R2017x,V6R2016x,V6R2015x,V6R2014x,V6R2014,V6R2013x,V6R2013,V6R2012x,V6R2012,V6R2011x,V6R2011,V6R2010x,V6R2010,V6R2009x,V6R2009" key="MatrixVersion"/>
                        <ns2:KeyValue value="/var/DassaultSystemes/Licenses/DSLicSrv.txt" description="" type="string" key="DSLSConfig"/>
                </ScanConnector>
        </soapenv:Body>
</soapenv:Envelope>

Modifications de la config Apache

En tant que 'root', aller dans le répertoire '/usr/local/reverseproxy/' et modifier le fichier 'conf/httpd.conf ' en ajoutant, avant le tag </VirtualHost> les lignes suivantes :

  # Analytics Applications
  ProxyPass        /issue http://vdemoproXXXdsy.extranet.3ds.com:10000/issue
  ProxyPassReverse /issue http://vdemoproXXXdsy.extranet.3ds.com:10000/issue

  ProxyPass        /change http://vdemoproXXXdsy.extranet.3ds.com:10000/change
  ProxyPassReverse /change http://vdemoproXXXdsy.extranet.3ds.com:10000/change

  ProxyPass        /project http://vdemoproXXXdsy.extranet.3ds.com:10000/project
  ProxyPassReverse /project http://vdemoproXXXdsy.extranet.3ds.com:10000/project

Redémarrer le proxy avec une des commandes suivantes

bin/apachectl restart

ou

/usr/local/reverseproxy/bin/httpd -k restart

Modifications de la config Enovia

En tant que 'e4apop', aller dans le répertoire : /home/data/RTV/DEMOR419/server/scripts/ Editer tous les fichiers 'sh' dont le nom commence par 'mxEnv' en ajoutant les lignes suivantes :

IssueIntelligence_URL=https://vdemoproXXXdsy.extranet.3ds.com:443/issue
export IssueIntelligence_URL
ProjectIntelligence_URL=https://vdemoproXXXdsy.extranet.3ds.com:443/project
export ProjectIntelligence_URL
ChangeIntelligence_URL=https://vdemoproXXXdsy.extranet.3ds.com:443/change
export ChangeIntelligence_URL

Redémarrer le Tomcat de l'application à partir de la page d'admin du serveur 'vdemopro' (URL fourni dans l'email)

Prise en compte du certificat de sécurité

kitdir/amd64-linux/java-jre/bin/keytool -importcert -alias passport  -file passport.cert -keystore trusted.servers.ks

Pour retirer le certificat

kitdir/amd64-linux/java-jre/bin/keytool -delete -alias passport -keystore trusted.servers.ks

Pour plus d'informations sur keytool

Intégration 3DPassport

Dans le Mashup Builder, pour chaque application, aller dans 'Application> General> Security' et ajouter un CAS Security Provider avec les paramètres suivants

Sélectionner toutes les pages Mashup à sécuriser

Remarque : 'Server Name' est l'URL d'accès à l'application PLMA à travers le reverse proxy (sans le nom de l'appli)

Internationalisation du connecteur

Pour Oracle

Pour faire en sorte que le connecteur prenne en compte les caractères accentués, il faut ajouter les variables d'environnement dans DeploymentInternal.xml dans la section “connectors.*” :

<KeyValue xmlns="exa:exa.bee" key="NLS_LANG" value="_.AL32UTF8">
</KeyValue>
<KeyValue xmlns="exa:exa.bee" key="LANG" value="en_US.UTF-8">
</KeyValue>
<KeyValue xmlns="exa:exa.bee" key="MX_CHARSET" value="UTF8">
</KeyValue>

Redémarrez CV.

Lien vers la dsdoc

Pour MS SQL

Définition dans enovia.ini :

MX_CHARSET=UTF8
MX_JAVA_OPTIONS=-Xms2g -Xmx4g -Xss2m -XX:+UseG1GC -XX:SurvivorRatio=3 -XX:+DisableExplicitGC -Dfile.encoding=UTF-8 -Dfile.encoding.override=UTF-8 -Dclient.encoding.override=UTF-8 -Djava.awt.headless=true -Djava.locale.providers=COMPAT

Et dans DeploymentInternal.xml

   <StringValue xmlns="exa:exa.bee" value="-Dfile.encoding.override=UTF-8"/>
   <StringValue xmlns="exa:exa.bee" value="-Dclient.encoding.override=UTF-8"/>

Changement du port

Remplacer toutes les références au port dans les fichiers :

Si changement de machine, remplacer le host par le nouveau dans les 2 fichiers précédents.

Puis faire un buildgct

Changement du kitdir

Le chemin vers le kitdir est à changer dans le fichier './bin/ngstart.env'

Redirection vers http plutôt que https

Si au lancement des Apps depuis la 3DExperience, le widget Exalead est appelé sur l’adresse en « http » plutôt qu'en « https », il faut modifier la configuration du reverse proxy :

X-Forwarded-Host : <HOST>

doit être changé en

X-Forwarded-Host : <HOST>:<PORT>

Chez EDF UK, ils ont bien ajouté les lignes suivantes :

Exemple de fichier EDF UK