Déploiement de Virtuoso
De Dbpedia.fr.
(Démarage automatique de Virtuoso) |
(→Démarage automatique de Virtuoso : MAJ avec Upstart) |
||
Ligne 45 : | Ligne 45 : | ||
== Démarage automatique de Virtuoso == | == Démarage automatique de Virtuoso == | ||
+ | |||
+ | === Avec Upstart === | ||
+ | |||
+ | Copier le code suivant dans le fichier ''/etc/init/virtuoso.conf'': | ||
+ | <nowiki># myservice - myservice job file | ||
+ | |||
+ | description "Virtuoso" | ||
+ | author "Julien Cojan <julien.cojan@inria.fr>" | ||
+ | |||
+ | # Stanzas | ||
+ | # | ||
+ | # Stanzas control when and how a process is started and stopped | ||
+ | # See a list of stanzas here: http://upstart.ubuntu.com/wiki/Stanzas#respawn | ||
+ | |||
+ | # When to start the service | ||
+ | start on runlevel [2345] | ||
+ | |||
+ | # When to stop the service | ||
+ | stop on runlevel [016] | ||
+ | |||
+ | # Automatically restart process if crashed | ||
+ | respawn | ||
+ | |||
+ | # Start the process | ||
+ | script | ||
+ | virtuoso-t -d -c /data/virtuoso/db/virtuoso.ini +wait | ||
+ | sleep 60 | ||
+ | end script | ||
+ | </nowiki> | ||
+ | où ''/data/virtuoso/db/virtuoso.ini'' est le chemin du fichier de configuration à utiliser. (adapté de http://thegeekcorner.pagesperso-orange.fr/fr/memo/creer_script_upstart.html). | ||
+ | |||
+ | Recharger la configuration de Upstart: | ||
+ | <nowiki># initctl reload-configuration</nowiki> | ||
+ | |||
+ | Virtuoso devrait être lancé au démarrage et redémarrer automatiquement après une pause de 60 secondes en cas d'arrêt. | ||
+ | |||
+ | Pour le démarrer manuellement: | ||
+ | <nowiki>$ initctl start virtuoso</nowiki> | ||
+ | Pour l'arrêter (il n'y aura pas de redémarrage auto): | ||
+ | <nowiki>$ initctl stop virtuoso</nowiki> | ||
+ | |||
+ | |||
+ | === Ancienne version, avec system V === | ||
Un modèle de script de démarage est donné dans les sources de virtuoso : <nowiki>debian/init.d</nowiki> | Un modèle de script de démarage est donné dans les sources de virtuoso : <nowiki>debian/init.d</nowiki> | ||
Ligne 61 : | Ligne 104 : | ||
Voir les instructions sur [http://docs.openlinksw.com/virtuoso/unxinstvirt.html#unxautovirt les instructions de openlink]. | Voir les instructions sur [http://docs.openlinksw.com/virtuoso/unxinstvirt.html#unxautovirt les instructions de openlink]. | ||
- | |||
== Commandes et emplacement des fichiers == | == Commandes et emplacement des fichiers == |
Version du 11 septembre 2012 à 15:21
Sommaire |
Sources
Ces informations ont été tirées principalement des sites suivants :
- How to Install Virtuoso Open Source (VOS) on Fedora Core Linux
- Example for DBpedia data sets Upload
- Guide for Internationalization Developers
- Documentation officielle
Installation de Virtuoso
Installation depuis un dépôt Linux
Sur Fedora 15 et RHEL 6:
# yum install virtuoso-opensource
Compilation des sources
Téléchargement des sources
Page correspondante de la doc Openlink
$ cvs -z3 -d:pserver:anonymous@virtuoso.cvs.sourceforge.net:/cvsroot/virtuoso co -rVOS-6_1_4 virtuoso-opensource
pour télécharger la version 6.1.4.
Compilation
Page correspondante de la doc Openlink
- Génération des fichiers de configuration :
$ cd virtuoso-opensource $ ./autogen.sh
- Pour optimiser le code, spécifier les paramètres de compilation donnés dans cette page, dans le cas d'une machine Linux 64:
$ CFLAGS="-O2 -m64" $ export CFLAGS
- configuration du chemin d'installation, différentes options sont décrites sur cette page, par exemple pour installer virtuoso dans le répertoire /usr/bin/virtuoso :
$ ./configure --prefix=/usr/bin/virtuoso
Rq. l'option --program-transform-name="s/isql/isql-v/" permet aussi de renommer l'interface de commande sql de virtuoso en isql-v pou éviter un clash avec celle de unixODBC.
- compilation et installation
$ make # make install
Démarage automatique de Virtuoso
Avec Upstart
Copier le code suivant dans le fichier /etc/init/virtuoso.conf:
# myservice - myservice job file description "Virtuoso" author "Julien Cojan <julien.cojan@inria.fr>" # Stanzas # # Stanzas control when and how a process is started and stopped # See a list of stanzas here: http://upstart.ubuntu.com/wiki/Stanzas#respawn # When to start the service start on runlevel [2345] # When to stop the service stop on runlevel [016] # Automatically restart process if crashed respawn # Start the process script virtuoso-t -d -c /data/virtuoso/db/virtuoso.ini +wait sleep 60 end script
où /data/virtuoso/db/virtuoso.ini est le chemin du fichier de configuration à utiliser. (adapté de http://thegeekcorner.pagesperso-orange.fr/fr/memo/creer_script_upstart.html).
Recharger la configuration de Upstart:
# initctl reload-configuration
Virtuoso devrait être lancé au démarrage et redémarrer automatiquement après une pause de 60 secondes en cas d'arrêt.
Pour le démarrer manuellement:
$ initctl start virtuoso
Pour l'arrêter (il n'y aura pas de redémarrage auto):
$ initctl stop virtuoso
Ancienne version, avec system V
Un modèle de script de démarage est donné dans les sources de virtuoso : debian/init.d
Après l'avoir édité :
# cp [chemin vers le fichier édité] /etc/init.d/virtuoso # chmod ugo+rx /etc/init.d/virtuoso
Cela permet de lancer virtuoso par la commande service:
$ service virtuoso start
(idem pour l'arrêt en remplaçant start par stop).
Pour faire démarrer virtuoso lors du boot:
# ln -s /etc/init.d/virtuoso /etc/rc2.d/S99virtuoso # ln -s /etc/init.d/virtuoso /etc/rc3.d/S99virtuoso # ln -s /etc/init.d/virtuoso /etc/rc5.d/S99virtuoso
Voir les instructions sur les instructions de openlink.
Commandes et emplacement des fichiers
Fichier de configuration : virtuoso.ini, par défault il se trouve dans /var/lib/virtuoso/db/.
Démarrage de virtuoso :
virtuoso-t -f -c [chemin/vers/virtuoso.ini]
L'option -f permet d'avoir la sortie dans la console (foreground), l'option -c permet de spécifier le fichier de configuration.
Configuration
- Pour activer les logs d'accès au serveur http de Virtuoso, il faut ajouter la ligne suivante (la décommenter) au fichier virtuoso.ini :
HTTPLogFile = ../logs/http.log
A l'exécution de Virtuoso, les fichiers de log auront des noms de la forme http[date sous forme JJMMAAA].log
- Pour rendre le serveur http de Virtuoso accessible sur le port 80 :
- autoriser virtuoso-t à lire les ports sécurisés (<1024), avec les droits root :
# setcap 'cap_net_bind_service=+ep' /usr/bin/virtuoso-t
(où /usr/bin:virtuoso-t est le chemin d'accès à virtuoso-t). Cela permet d'accéder au port 80 sans pour autant donner les droits root à virtuoso.
- configurer Virtuoso pour lire sur le port 80
- soit directement dans le fichier virtuoso.ini
- soit par isql (méthode recommandée par l'équipe de DBpedia).
- configurer Virtuoso pour lire sur le port 80