wiki:Tests

Version 64 (modified by /C=FR/O=CNRS/OU=UMR8607/CN=Antoine Perus/emailAddress=perus@…, 9 years ago) (diff)

--

Installer StratusLab

Tout est écrit ici (depuis le 8/7/14)

Creation d'une image disque "PSPA" à partir d'une machine existante :

stratus-create-image --author-email=garnier@lal.in2p3.fr \
                                 --author="Garnier Laurent" \
                                 --comment="CentOS V6.5 / PSPA Wep App." \
                                 --no-shutdown  \
                                 --image-version 1.0 \
                                 --title="CentOS V6.5 / PSPA Wep App"  \
                                KT8gOU8gve_k3UFL7p5Els57My2


 :::::::::::::::::::::::::::::
 :: Starting image creation ::
 :::::::::::::::::::::::::::::
 :: Checking that base image exists
 :: Retrieving image manifest
 :: Starting base image
  [WARNING] Image availability check is disabled.

 :::::::::::::::::::::::::
 :: Starting machine(s) ::
 :::::::::::::::::::::::::
 :: Starting 1 machine
 :: Machine 1 (vm ID: 4908)
	Public ip: 134.158.75.200
 :: Done!
 :: Waiting for machine to boot
............................
 :: Waiting for machine network to start
....
 :: Check if we can connect to the machine
 :: Executing user prerecipe
 :: Installing user packages
 :: Executing user recipe
 :: Executing user scripts

 ::::::::::::::::::::::::::::::::::::::::
 :: Finished building image increment. ::
 ::::::::::::::::::::::::::::::::::::::::

 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 :: Please check garnier@lal.in2p3.fr for new image ID and instruction. ::
 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 :: Machine ready for use

	Machine IP: 134.158.75.200	Remember to stop the machine when finished

Installation des paquets essentiels à PSPA

ssh -Y root@134.158.75.200
yum update yum
yum update -y

# Jenkins (from https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+RedHat+distributions)
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
yum install jenkins -y

# Compiler and others
yum install hg gcc-c++ boost-devel wt-devel make gcc-gfortran gdb subversion cmake \
                 xerces-c-devel Coin2 expat-devel  doxygen pango-devel GraphicsMagick-devel openssl-devel fcgi-devel httpd \
                 qt qt-devel \
                 openmotif-devel libX11-devel xorg-x11-server-Xvfb xorg-x11-xauth libXxf86dga xorg-x11-server-Xorg xorg-x11-xinit xterm \
                 zlib hg  daemonize

# Wt (from )
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
rpm --import https://fedoraproject.org/static/0608B895.txt
rpm --import http://packages.atrpms.net/RPM-GPG-KEY.atrpms
yum update; yum upgrade -y
#
# Wt and Dependencies (source: http://redmine.webtoolkit.eu/boards/1/topics/6178)
yum install wt wt-devel wt-dbo wt-dbo-postgres wt-examples \
                 GraphicsMagick GraphicsMagick-devel \
                 jasper-libs fcgi lcms-libs libICE libSM libwmf-lite urw-fonts 

# Haru :
curl https://codeload.github.com/libharu/libharu/legacy.tar.gz/master -olibhpdf.tar.gz
tar -xzf libhpdf.tar.gz 
mkdir libharu-libharu-build
cd libharu-libharu-build/
cmake ../libharu-libharu-ec89be4/
make -j
sudo make install

# CMT 
 curl http://www.cmtsite.net/v1r25/CMTv1r25Linux-i686.tar.gz -o CMTv1r25Linux-i686.tar.gz
tar -xvf CMTv1r25Linux-i686.tar.gz
rm CMTv1r25Linux-i686.tar.gz
mv CMT/ /usr/local/.
ln -sf v1r25/ /usr/local/CMT/current
cd /usr/local/CMT/current/mgr/
./INSTALL 

# Changement de cmake
rm /usr/bin/cmake
ln -sf /usr/bin/cmake28 /usr/bin/cmake

# Installation de UAP
cd /usr/local/
svn checkout svn://svn.code.sf.net/p/accelerator-ml/code/ accelerator-ml-code
cd accelerator-ml-code/uap/trunk/
export UAP_FORTRAN_COMPILER=GFORTRAN
gmake

# Installation de Java (pour Jenkins)
yum install java-1.6.0-openjdk

# Lancement de jenkins
sudo service jenkins start

Mise à disposition de cette machine dans la market place

stratus-shutdown-instance 4908

Installation sur une machine stratus-Lab

Creation d'un disque :

 stratus-create-volume --size=6 --tag="Serveur PSPA"
  DISK 088dd96c-d97a-4f39-9788-ee00572114dc

L'ID de la machine PSAP est "Fdku_AK8qDH73Y93vpn0jpZOzYf" (trouvée via https://marketplace.stratuslab.eu)

Lancer la machine avec ce disque persistant :

 stratus-run-instance  --type=c1.xlarge --persistent-disk=088dd96c-d97a-4f39-9788-ee00572114dc KgZJLfwFgRi0zHCi2DL5QJUqNSY

 :::::::::::::::::::::::::
 :: Starting machine(s) ::
 :::::::::::::::::::::::::
 :: Starting 1 machine
 :: Machine 1 (vm ID: 1486)
        Public ip: 134.158.75.148
 :: Done!

Vérifier :

stratus-describe-instance                                                           
id   state     vcpu memory    cpu% host/ip                  name
1942 Running   4    2124480   3    vm-169.lal.stratuslab.eu one-1942

Lancer le service web Jenkins : 134.158.75.148:8080

Copier l'ancienne config de Jenkins :

  • sur l'ancienne config
     tar -czvf jobs.tgz jobs
     scp jobs.tgz root@134.158.75.148:jobs.tgz
    
  • sur la machine virtuelle :
     cd "jenkins_home"/jobs
     cd /var/lib/jenkins
    

Killer le serveur jenkins existant :

 ps -ax | grep jenk
 kill …..

Le relancer :

 service jenkins restart

Vérifier que tout est bon : http://134.158.75.148:8080

Installation de wt sur un mac avec fink

Via fink

/sw/bin/fink install cmake graphicsmagick-dev openssl100-dev pangomm1.4.1-shlibs pkgconfig

Installation de haru

A COMPLETER !!!!!!
curl https://nodeload.github.com/kdeforche/libharu/zip/master -o master.zip
unzip master.zip
cd libharu-master/
./configure --with-png=/sw  
make -j
sudo make install

Installation de wt :

curl http://freefr.dl.sourceforge.net/project/witty/wt/3.2.3/wt-3.2.3.tar.gz -o wt-3.2.3.tar.gz
tar -xzf wt-3.2.3.tar.gz 
cd wt-3.2.3
mkdir build
cd build
cmake ../. -DGM_PREFIX=/sw/
make -j6
sudo make install

Lancement des pages Web (apache)

service httpd start

Les pages web se trouvent ici sur le serveur (stratus lab): /var/www/html/

Relancer la machine virtuelle

Si vous n'avez pas stratus-lab, l'installer stratusLab Refaire les 2 exports :

export PATH=$PATH:<install location>/bin
export PYTHONPATH=$PYTHONPATH:<install location>/lib/stratuslab/python
Dans mon cas :
export PATH=$PATH:/Users/garnier/Work/stratuslab-cli-user-pkg-2/bin;
export PYTHONPATH=$PYTHONPATH:/Users/garnier/Work/stratuslab-cli-user-pkg-2/lib/stratuslab/python 

Tuer l'ancienne machine :

stratus-describe-instance  
id   state     vcpu memory    cpu% host/ip                  name
1940 Failed    1    0         0    vm-166.lal.stratuslab.eu one-1940
1942 Unknown   4    2124480   3    vm-169.lal.stratuslab.eu one-1942
2118 Running   4    2124800   18   vm-148.lal.stratuslab.eu one-2118

stratus-kill-instance 2118

La relancer (l'adresse pspa.lal.in2p3.fr est mappée sur 134.158.75.148)

 stratus-run-instance --type=c1.xlarge \
                                 --persistent-disk=088dd96c-d97a-4f39-9788-ee00572114dc KgZJLfwFgRi0zHCi2DL5QJUqNSY \
                                 --address 134.158.75.148

Se logger sur la machine, puis lancement des pages Web (apache)

ssh root@....
service httpd start

Relancer Jenkins

Après être logé et Jenkins relancé :

[root@onevm-108 ~]# service jenkins restart
Shutting down Jenkins                                      [  OK  ]
Starting Jenkins                                           [  OK  ]

Accédez à la page web de configuration de la sécurité de Jenkins : http://onevm-196.lal.in2p3.fr:8080/configureSecurity/

  • Cocher dans un premier temps :
  • "Activer la sécurité",
  • "Tout le monde a accès à toutes les fonctionnalités",
  • "Base de données des utilisateurs de Jenkins",
  • "Se protéger contre les exploits de type Cross Site Request Forgery",
  • "Default Crumb Issuer",
  • "Activer la compatibilité proxy"
  • Ajouter des plugins :
    • Post build task
    • Mercurial plugin

Création du job Projet PSPA-Software =

Compilation des softwares

Le script lancé se trouve ici PSPA/Softwares/build-PSPA-Softwares.sh

Les fichiers de configuration pour ce job se trouvent ici PSPA/Softwares/config-PSPA-Softwares.xml

Pour remettre en place ce job :

  • Créer un job du même nom sur Jenkins
  • Se logger sur la machine du cloud
  • Déposer ce fichier à cet emplacement /var/lib/jenkins/jobs/PSPA-Softwares/.

Création du job Projet PSPA_Develop =

Compilation et lancement du serveur web sur la branch "develop"

Le script lancé se trouve ici PSPA/PSPA/build-PSPA.sh

Les fichiers de configuration pour ce job se trouvent ici PSPA/PSPA/config-PSPA_Develop.xml

Pour remettre en place ce job :

  • Créer un job du même nom sur Jenkins
  • Se logger sur la machine du cloud
  • Déposer ce fichier à cet emplacement /var/lib/jenkins/jobs/PSPA_Develop/.

Création du job PSPA-Check_Develop =

Test et lancement du serveur Web si il est planté

Le script lancé se trouve ici PSPA/PSPA/check-PSPA_Develop.sh

Les fichiers de configuration pour ce job se trouvent ici PSPA/PSPA/config-PSPA-Check_Develop.xml

Pour remettre en place ce job :

  • Créer un job du même nom sur Jenkins
  • Se logger sur la machine du cloud
  • Déposer ce fichier à cet emplacement /var/lib/jenkins/jobs/PSPA_Develop/.