Galaxy4Bioinformatics Développement et intégration d application sous Galaxy



Documents pareils
UTILISATION DE LA PLATEFORME WEB D ANALYSE DE DONNÉES GALAXY

GUGGO 4 ème rencontre

Galaxy Training days. Liste des sessions disponibles : Les formateurs :

Galaxy est une plateforme de traitements (bio)informatiques accessible depuis l'url : (en précisant votre login et mot de passe LDAP «genotoul»).

XtremWeb-HEP Interconnecting jobs over DG. Virtualization over DG. Oleg Lodygensky Laboratoire de l Accélérateur Linéaire

Installation UpdatEngine serveur (CentOs apache2 / MySQL)

Tutoriel Cloud IFB - Initiation -

Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.

Editing and managing Systems engineering processes at Snecma

Serveur Subversion Debian GNU/Linux

ADF Reverse Proxy. Thierry DOSTES

TP HTTP. Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A

Vers une meilleure gouvernance des plateformes d ingénierie

Présentation de la solution Open Source «Vulture» Version 2.0

SHAREPOINT PORTAL SERVER 2013

Cedric Dumoulin (C) The Java EE 7 Tutorial

EXALOGIC ELASTIC CLOUD MANAGEMENT

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5

Ocs Inventory et GLPI s appuie sur un serveur LAMP. Je vais donc commencer par installer les paquets nécessaires.

Qlik Education Services Des formations conçues par des experts pour vous permettre de maîtriser toute la puissance de QlikView et de Qlik Sense.

Machine virtuelle W4M- Galaxy : Guide d'installation

Mise en place de serveurs Galaxy dans le cadre du réseau CATI BBRIC

L installation a quelque peu changée depuis les derniers tutos, voici une actualisation.

Quatre axes au service de la performance et des mutations Four lines serve the performance and changes

How to Login to Career Page

Containers : Outils magiques pour les Devops? OpenNebula et son écosystème pour une infrastructure cloud agile

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server

Déploiement de owncloud à la DT/INSU

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

Guide Installation Serveur Extensive Testing

Retour d expérience en Astrophysique : utilisation du Cloud IaaS pour le traitement de données des missions spatiales

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril / 15

Automatisation de l administration système

Préparation d un serveur Apache pour Zend Framework

LAMP : une nouvelle infrastructure LAMP. Une architecture modulaire. Installation

Guide Installation Serveur Extensive Testing

Jahia. Guillaume Monnette École Ingénieurs 2000 Marne-La-Vallée IR3

Forthcoming Database

Installer Enterprise Miner 5.1 en SAS environnement Windows

Architecture de la plateforme SBC

Installation de la plate-forme Liberacces 2.0 «Intégrale» avec LiberInstall

PLM 2.0 : Mise à niveau et introduction à l'offre version 6 de Dassault systèmes

FOURNIR UN SERVICE DE BASE DE DONNÉES FLEXIBLE. Database as a Service (DBaaS)

Programming Server-Side Web Applications with Object-Oriented PHP NC Group Syllabus. Duration: 75 hours 1-2-2

Comment reproduire les résultats de l article : POP-Java : Parallélisme et distribution orienté objet

PRO CED U RE D I N STALLATI O N

Un exemple de cloud au LUPM : Stratuslab

PUPPET. Romain Bélorgey IR3 Ingénieurs 2000

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

Rendez-vous la liberté avec Rational Quality Manager

StratusLab : Le projet et sa distribution cloud

Déploiement de SAS Foundation

Enhancing cybersecurity in LDCs thru multi-stakeholder networking and free software

Technologies du Web. Ludovic DENOYER - ludovic.denoyer@lip6.fr. Février 2014 UPMC

e-biogenouest CNRS UMR 6074 IRISA-INRIA / Plateforme de Bioinformatique GenOuest yvan.le_bras@irisa.fr Programme fédérateur Biogenouest co-financé

POVERELLO KASONGO Lucien SIO 2, SISR SITUATION PROFESSIONNELLE OCS INVENTORY NG ET GLPI

e-science : perspectives et opportunités pour de nouvelles pratiques de la recherche en informatique et mathématiques appliquées

Fiche Produit TSSO Extension Mobility Single Sign-On

Un serveur web léger et ouvert

+ = OpenStack Presentation. Raphaël Ferreira - enovance. Credits : Thanks to the OpenStack Guys 1

HSCS 6.4 : mieux appréhender la gestion du stockage en environnement VMware et service de fichiers HNAS Laurent Bartoletti Product Marketing Manager

Pratique et administration des systèmes

Principes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle

Gérer ses environnements de développement avec Vagrant RMLL 2012

iqtool - Outil e-learning innovateur pour enseigner la Gestion de Qualité au niveau BAC+2

Le Cloud Open-Mind! Emilien Macchi

Configurer la supervision pour une base MS SQL Server Viadéis Services

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

4. SERVICES WEB REST 46

Mise en place d un projet VDI

Vanilla : Virtual Box

Les Portfolios et Moodle Petit inventaire

Connexions à un projet CVS via Eclipse en accès local et distant. 15 Mai 2007

Charte d'utilisation des infrastructures de la plate-forme bioinformatique Genotoul

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

GUIDE D INSTALLATION. Portaneo Enterprise Portal version 4.0

Compte Rendu d intégration d application

Comment la ville de Westmount a automatisé la préparation de ses réunions du conseil :

Catalogue des formations Edition 2015

Application Form/ Formulaire de demande

Supervision et infrastructure - Accès aux applications JAVA. Document FAQ. Page: 1 / 9 Dernière mise à jour: 15/04/12 16:14

Serveur Web Apache - SSL - PHP Debian GNU/Linux

Windows Server Chapitre 1: Découvrir Windows Server 2008

Règles et paramètres d'exploitation de Caparmor 2 au 11/12/2009. Pôle de Calcul Intensif pour la mer, 11 Decembre 2009

Grid Technology. ActiveMQ pour le grand collisionneur de hadrons (LHC) Lionel Cons Grid Technology Group Information Technology Department

WORKSHOP OBIEE 11g (version ) PRE-REQUIS:

Getting Started. 10 étapes pour bien démarrer. Avant de démarrer. Première connexion PCC

Utiliser une WebCam. Micro-ordinateurs, informations, idées, trucs et astuces

Serveur Linux : FTP. Mise en place d un service FTP sous Linux. Bouron Dimitri 20/04/2014

Installation d OwnCloud 8.0 sous Debian Avec connexion des utilisateurs active directory et mise en place de HTTPS

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com

Module 7 : Configuration du serveur WEB Apache

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Bon ben voilà c est fait!

Chapitre IX : Virtualisation

SAINT-GOBAIN. DSI Groupe. Un outil ITSM pour renforcer la Gouvernance. V. Broussin 26 février 2013

Transcription:

Galaxy4Bioinformatics Développement et intégration d application sous Galaxy Christophe Caron Alexis Dereeper Mars 3, 2015 14pm 17pm ARCHITECTURE GALAXY Installation et paramétrage d une instance

3 jours! Mardi 3 / 14-17H30 : Architecture A. Dereeper, C. Caron, V. Loux Mercredi 4 / 9-18H00 : Intégration des outils A. Lermine, G. Le Corguillé, JF. Dufayard, A. Dereeper, G. Andres, L. Guéguen Jeudi 5 / 9-16H00 : API & ToolShed G. Le Corguillé, M. Monsoor, O. Inizan, A. Lermine, F. Mareuil, O. Doppelt-Azeroual O. Inizan, M. Monsoor, JF. Dufayard, L. Guéguen, V. Loux

4 Mars GT Galaxy Tour de table Galaxy : success story? Architecture Installation standard Architecture plateforme

G4B V2 http://www.france-bioinformatique.fr/?q=fr/groupes-de-travail/galaxy gtgalaxy@groupes.france-bioinformatique.fr

Ecole AVIESAN 01/2013 Who! Contribute Share GT CORE IFB Platform x 6 MetaboHUB x 1 Meeting Teach And Open! Institut Pasteur (e.g. : training) GenOuest Rennes (ToolShed) Visio La Chapelle sur Erdre, Mars 2015 5

What! Animation Training Development La Chapelle sur Erdre, Mars 2015 6

RESULTS La Chapelle sur Erdre, Mars 2015 7

Animation National JOBIM 2013 Galaxy Day 2013 & 2014 x 200 International Galaxy Community Conference Oslo 2013 :» Poster GT» Institut Curie(Galaxy integration into an external information system), URGI (DevOps), ABiMS(Workflow4Metabolomics) Baltimore 2014» Institut Curie (GalaxyDx : A Web-server dedicated to cancer diagnostic data analysis), URGI(Puppet), ABiMS (Tools Integration) Galaxy Team contact : regular meeting ToolShed Extension, etc. Automatic Galaxy environment construction Galaxy-MODAL Deployment of a new Galaxy instance on IFB-cloud Rapsosnp: A workflow for the Rapsodyn project La Chapelle sur Erdre, Mars 2015 8

Federate platform skills Tools Integration : best practices API Tuning Wiki etc. Communities (Bio)-informatician Biologist Ecole AVIESAN Training La Chapelle sur Erdre, Mars 2015 9

Training Galaxy4Bioinformatics V1: Roscoff / IFB-CNRS funding / Nov. 2014 V2: Nantes / IFB-INRA funding / March 2015 Program Architecture Tools Integration API Toolshed ~20 students / 12 teachers La Chapelle sur Erdre, Mars 2015 10

Sharing : API, automatic deployment, How-To, etc. ASR Dev. : Python Architecture IFB/MetaboHub Development Workflow4Metabolomics: a collaborative research infrastructure for computational metabolomics IFB/FG project (ToolShed session) Setup a tools/workfow repository La Chapelle sur Erdre, Mars 2015 11

IFB/FG 18-month project (Oct. 2014 - March 2016) Structuring sequencing facilities and bioinformatics in NGS analyses GT Galaxy Building and offering facilities and services in bioinformatics Aims Distribute tools/workflow Setup a visible and centralized repository La Chapelle sur Erdre, Mars 2015 12

IFB/FG: roadmap JOBIM Clermont Oct. 14 Apr. 15 Oct. 15 Mar. 16 INVENTORY FG platforms / GT Galaxy / Other partners INTEGRATION INTO GALAXY GOOD PRACTICES MANUAL TRAINING SUPPORT Contacts with the Galaxy Team IFB DEV REPOSITORY La Chapelle sur Erdre, Mars 2015 MAIN TOOLSHED IFB TAG 13

IFB/FG: First results Galaxy Team contact New Toolshed Test IFB development Toolshed TAG for IFB Tools in the main Toolshed Work on pipelines : e.g. SarTools (Institut Pasteur / ebio) Improve quality packages automatical testing expert reviewing La Chapelle sur Erdre, Mars 2015 14

PERSPECTIVES La Chapelle sur Erdre, Mars 2015 15

Opened Grants IFB Platforms Federation Project Roadmap 2015! e.g. : Automatic Galaxy environment builder ++ Training 2015 / Galaxy4Bioinformatics V3 : Toulouse / IFB INRA - CIRAD / 2-4 Nov. 2015! Animation Galaxy Day 19 Nov. 2015 Galaxy Community Conference - Norwich July 2015 La Chapelle sur Erdre, Mars 2015 16

Galaxy

«Big Data» http://www.genome.gov/sequencingcosts/ Stein Genome Biology 2010, 11:207 18

Problèmes Accessibilité des outils des workflows Reproductibilité des analyse Transparence des analyses 19

Reproductibilité Exemple : Projet pilote «1000 genomes project» : Série de recomandations sur la procédure d analyse 299 articles publiés en 2011 citent le papier «best practices», 19 sont des projets de re-séquençage avec des design expérimentaux similaires. 10 utilisent les outils recommandés de mapping et de découverte de variants. 4 utilisent le workflow complet. Malgré l effort de description, chacun son pipeline! Pourquoi? Les «NGS» évoluent : séquenceurs, outils d analyse Complexité des analyses et des workflows Accessibilité des workflows 20

Reproductibilité Mat & Met Scripts «maison» non distribués, mal expliqués : Outils précisés, sans la version ni les paramètres. Sur 50 papiers utilisant bwa en 2011, 31 ne citent pas sa version et ses paramètres (et 26 ne donnent pas accès aux données). Moins de 50% des analyses de micro-arrays publiées dans Nature Genetics en 2009 sont répétables. 21

Transparence Mat & Met Données, méta-données. Comment réutiliser les données? 22

Problème critique de reproductibilité Pourtant la reproductibilité est à la base de la démarche scientifique Nature 496, 398 (25 April 2013) 23

Quelles solutions? Outils de construction et d exécution de workflows qui permettent de rejouer une analyse : Mobyle Taverna Kepler Galaxy Développé depuis 2005 par Pen state university Emory university Reprend les bonnes idées des outils précédents Orienté communauté, partage et reproductibilité Accessibilité Reproductibilité Transparence 24

Reproductibilité Objectifs : «democratization of biomedical computation so that even the smallest research units with modest budgets are capable of carrying out analyses using appropriate tools in a reproducible fashion» Environnement pour réaliser et enregistrer des analyses. Permet l utilisation ou l inclusion des ces analyses dans des publications. 25

Accessibilité Pas besoin de programmer ou d apprendre à manier la ligne de commande, de connaître les détails d implémentation d un outil Interface unifiée d obtention et d analyse de données génomiques (ou autres) 26

Portail Galaxy 27

Portail Galaxy 28

Reproductibilité Capturer automatiquement les méta-données : provenance des données paramètres et enchainements des outils Enregistrer les jeux de données et les résultats intermédiaires Fournir les outils de documentation (annotations, tags) et de partage des analyses métadonnées : «ce qui a été fait» annotations : «pourquoi cela a été fait» 29

Reproductibilité Chaque analyse peut être rejouée, extraite sous forme de workflow et partagée Les workflows peuvent et doivent également être annotés 30

Transparence Les jeux de données, historiques d analyses et workflows peuvent être partagés : import/export de l ensemble de l analyse partage entre utilisateurs mise à disposition publique sur une instance de Galaxy Une analyse peut être documentée sous forme de «Galaxy page» 31

Transparence Page Galaxy : page web permettant la documentation complète d une analyse Texte libre (avec éventuellement des figures) Inclusion des jeux de données, historique d analyse et workflows Mécanisme d import permettant de rejouer l ensemble de l analyse sur les données fournies 32

Pages Galaxy 33

GigaDB Données brutes mises à dispositions sur SRA Données primaires mises à disposition sur GigaDB, avec un DOI associé. 34

Références Page web de Galaxy : http://galaxyproject.org/ Use galaxy : galaxy-central Get galaxy : distribution (install locale, cloud) Learn galaxy : tutorials, screencast Get involved : mailing lists and wiki How to cite Galaxy : https://wiki.galaxyproject.org/citinggalaxy Publications : Nekrutenko A, Taylor J: Next-generation sequencing data interpretation: enhancing reproducibility and accessibility. Nat Rev Genet 2012, 13:667 672. Goecks J, Nekrutenko A, Taylor J et al : Galaxy: a comprehensive approach for supporting accessible, reproducible, and transparent computational research in the life sciences. Genome Biol 2010, 11:R86. 35

Machines Virtuelles Virtual Box 4.3.12 Extensions Mode USB 2.0 désactivé Guest additions installés CentOS 6.6

Les outils installés sous /usr/local/ Python 2.7.2 ipython 2.3.0 Bioblend 0.5.2 BLAST+ 2.2.28 MEME 7 SAMTOOLS Phylip R 3.1.1 + modules Environnement logiciel

Sessions Deux comptes galaxy Compte qui tourne le serveur Galaxy A utiliser pour se connecter! $HOME = /usr/local/galaxy mot de passe : galak42 root Compte pour installer d éventuelles librairies, etc.

TP myvm Executer la VM Se connecter avec le login galaxy su - galak42

Galaxy Open Source Framework Integrating Tools : biology, ecology, statistical, etc. Data connexion Access Web API

Architecture

Bases de données Stocke les meta-données workflow, historique, API, etc. utilisateurs, droits, etc. 130 tables! Par défaut : SQLite Base de données embarquée Relationnelle Problèmes de gestion des accès concurrents prevent database locking issues that can arise with multiple users. Utiliser MySQL /InnoDB ou PostgreSQL!

Galaxy : Installation - Objectif : encapsuler l instance dans un environnement Python vierge et dédié - Se connecter avec le compte galaxy - d wget http://bitbucket.org/ianb/virtualenv/raw/tip/virtualenv.py python virtualenv.py --no-site-packages galaxy_env - Executer l'environnement virtuel (activé dans le.bashrc) source $HOME/galaxy-dist/galaxy_env/bin/activate - Installer les modules pour l atelier API easy_install bioblend

Galaxy : Installation 1) Installation basique (instance niveau I) 1-1- Créer un utilisateur galaxy (déjà fait ici) et se connecter avec cet utilisateur

Galaxy : Installation 1) Installation basique (instance niveau I) 1-2- Récupérer les sources de Galaxy (en utilisant Mercurial) hg clone https://bitbucket.org/galaxy/galaxy-dist/ cd galaxy-dist hg update stable

Galaxy : Installation 1) Installation basique (instance niveau I) 1-2- Récupérer les sources de Galaxy (en utilisant Mercurial) (Solution sans réseau, récupération des sources sur un dépôt local de Mercurial) En root, lancer le serveur Mercurial su /etc/init.d/hgserver start exit Avec l utilisateur galaxy, clôner le dépot hg clone http://localhost:9000/galaxy-dist/ cd galaxy-dist hg update stable

Galaxy : Installation 1) Installation basique (instance niveau I) 1-3- Lancer le service Galaxy sh run.sh -v Tester l application via l URL: http://localhost:8080/

Galaxy : Installation 2) Test de bon fonctionnement de l instance TP: Tester l upload du fichier multi-fasta /usr/local/galaxy/galaxy-dist/testdata/meme/meme/meme_input_1.fasta Tester le bon fonctionnement de l outil Select lines that match an expression (Filter and sort) sur ce fichier pour ne garder que les noms de séquences Arrêter le service galaxy (Ctrl+C)

Galaxy : Installation 3) Répertoires et principaux fichiers de configuration - Les principaux fichiers de configuration se trouvent dans le répertoire galaxy-dist/config. galaxy.ini: configuration générale de l instance tool_conf.xml: configuration des outils disponibles tool_sheds_conf.xml: configuration des toolshed accessible depuis votre instance shed_tool_conf.xml: configuration des outils déployés sur l instance via un toolshed datatypes_conf.xml: déclaration des différents types de données - Les outils et wrappers se trouvent dans le répertoire galaxy-dist/tools. - Les descripteurs de données (fichier.loc ( location )) sont dans galaxy-dist/tool-data. La liste des génomes disponibles est à renseigner dans shared/ucsc/builds.txt - Le style et les pages HTML sont dans le répertoire galaxy-dist/static. Pour personnaliser la page d accueil, modifier le script galaxy-dist/static/welcome.html - A chaque modification d un de ces fichiers, le service doit être relancé: sh run.sh --daemon (pour lancer le service) sh run.sh --stop-daemon (pour arrêter)

Galaxy : Installation 4) Quelques paramétrages pour une instance (niveau II) Connecter à une base de données postgresql (par défaut SQLlite) - Se connecter sous le user postgres et créer l utilisateur et la base galaxy - Modifier le fichier galaxy.ini.sample pour indiquer les paramètres de connexion à cette base database_connection=postgres://galaxy:galak42@localhost/galaxy - Relancer le service et créer un compte utilisateur galaxy (login => Register) qui sera par la suite configuré en administrateur

4) Quelques paramétrages pour une instance (niveau II) - Gestion des utilisateurs. Dans le fichier galaxy.ini: Demander un accès par login et empêcher la création de compte require_login = True allow_user_creation = False Ajouter des comptes admin admin_users = prenom.nom@monmail.fr - Rendre l instance visible sur le réseau host = 0.0.0.0 - Lier un ToolShed local. Ajouter l info dans le fichier tool_sheds_conf.xml - Autoriser la gestion des quotas Galaxy : Installation <tool_shed name="my Own ToolShed" url="http://mytoolshed.fr/"/> enable_quotas = True

Galaxy : Installation 4) Quelques paramétrages pour une instance (niveau II) - Relancer le service en redirigeant les sorties vers un fichier de log mkdir /usr/local/galaxy/galaxy_logs sh run.sh --daemon --log-file /usr/local/galaxy/galaxy_logs/galaxy.log => TP: Relancer Galaxy sur ce modèle et tester la connexion du mode admin

Galaxy : Mode admin - Gestion des utilisateurs, groupes et rôles - Gestion des données et des librairies partagées - Gestion des quotas d espace disque - Visualisation des data types et data tables - Relance d un outil individuel après modification du wrapper XML d un outil - Gestion des jobs en cours - Gestion des toolsheds: installation d outil via toolshed

Galaxy : Gestion des données - Data libraries : partage de données entre utilisateurs - Création de nouvelles librairies en mode admin - Possibilité de lier des données lourdes stockées sur le serveur. Editer le fichier galaxy.ini: library_import_dir = mydir_of_data Puis aller chercher le fichier en mode admin dans la librairie - Possible également pour les utilisateurs non-admin user_library_import_dir = mydir_of_data => TP: Tester la création d une librairie et y lier un fichier de votre historique, puis un fichier du filesystem

Galaxy : Gestion des utilisateurs - Ajout de nouvel utilisateur, groupe et rôle Plus d infos: https://wiki.galaxyproject.org/learn/securityfeatures - Droits d accès aux librairies de données => TP: Tester la création d un utilisateur associé à un rôle, puis l accès à la librairie partagée à cet utilisateur

Galaxy : PATH et Tool dependencies Gestion du PATH galaxy: Ce que l on préconise: - Ajout des exécutables dans un répertoire bin spécifique à Galaxy. Puis ajout de ce répertoire dans le PATH de l utilisateur galaxy (via.bashrc) => TP: Tester l outil MEME. Puis installer MEME (/usr/local/src/meme_4.9.1) et ajouter l exécutable dans le PATH. (attention: l exécutable s appelle meme.bin) Relancer Galaxy. Retester.

Galaxy : PATH et Tool dependencies Pour les dépendances des outils installés via un ToolShed Les dépendances des outils installés via le toolshed peuvent être installées automatiquement, s ils sont correctement déclarés entre balises <requirement>, puis détaillés dans un fichier tool_dependencies.xml associé à l outil (cf TP Toolshed) Exemple: <requirements> <requirement type="package" version="4.9.1">meme</requirement> </requirements> Pour permettre la gestion de ces dépendances, créer un répertoire tool_dependencies à la racine du compte galaxy et le déclarer dans galaxy.ini en modifiant la directive tool_dependency_dir tool_dependency_dir = /usr/local/galaxy/tool_dependencies

Galaxy : Job configuration - Par défaut, les jobs Galaxy sont exécutés en local sur la machine où l application a été lancée. - De nombreuses options existent pour que les jobs soient lancés sur d autres systèmes, des clusters de calcul ou des machines distantes. - Capable de gérer différents DRMs (Distributed Resource Managers): Torque, SGE, LSF. - Le fichier job_conf.xml permet de spécifier différentes voies par lesquelles les jobs peuvent être exécutées. <plugin id="local" type="runner" load="galaxy.jobs.runners.local:localjobrunner"/> <plugin id="sge" type="runner" load="galaxy.jobs.runners.drmaa:drmaajobrunner"> <destinations> <destination id= local runner= local /> <destination id= remote_cluster runner= sge /> </destinations> - Une collection de Job destination permet de définir les paramètres à utiliser pour faire tourner un job à envoyer sur telle ou telle destination Remplace l ancien default_cluster_job_runner et la section [galaxy:tool_runners] - Par exemple, si un outil doit être exécuté avec des conditions particulières (spécifier une file d attente, davantage de mémoire...)

Galaxy : Job configuration - Autre exemple d application: Permet l envoi de données dans l historique Galaxy depuis un site distant

Galaxy : Job configuration Procédure - Déclarer une nouvelle source de données dans un fichier tools/data_source/mysource.xml <tool name="musa hub" id="mysource" tool_type="data_source"> <description> : Advanced Search Browser</description> <command interpreter="python">data_source.py $output $ app.config.output_size_limit</command> <inputs action="http://banana-genome.cirad.fr/advanced" check_values="false" method="get">... - Puis déclaration de cette source dans la section Get Data du tool_conf.xml. <section name="get Data" id="getext"> <tool file="data_source/upload.xml"/> <tool file="data_source/mysource.xml" /> - Déclarer la destination dans job_conf.xml <destination id= mysource runner= local /> - Enfin, il faut depuis le site distant générer un fichier accessible depuis une URL, puis spécifier un lien vers le tool_runner de galaxy: http://localhost:8080/tool_runner?tool_id=mysource;url=link_to_file

Mode pl@ : Architecture ++

Debug d une instance Mode debug log_level = INFO debug = False use_interactive = False Tracer les jobs cleanup_job = onsuccess

Statistiques d usage Par utilisateurs, mois, etc. Un script run_reports.sh Un fichier de configuration config/reports_wsgi.ini Log : reports_webapp.log Reporting

Reporting

Reporting

TP TP Reporting Activer le processus de reporting Consulter les stats (9001)

Un proxy? Performance Déléguer la gestion des données au serveur HTTP (e.g. : Apache) e.g. : Module XSendFile

Un proxy? Authentification externe Annuaire LDAP Module LDAP Apache LDAP

Un proxy? Exemple de configuration Apache <VirtualHost *:80> DocumentRoot /bidule ServerName mygalak.trotinet.com RewriteEngine on RewriteRule ^(.*) http://localhost:8080$1 [P] <Location "/"> # Apache renvoie les fichiers directement XSendFile on XSendFileAllowAbove on AuthType Basic AuthName "Galaxy Web Site: Use your LDAP login" AuthBasicProvider ldap AuthzLDAPAuthoritative off AuthLDAPURL "ldap://myldap.trotinet.com/o=versailles,c=fr?uid?sub?(objectclass=person)" Require valid-user # Set the REMOTE_USER header to the contents of the LDAP query response's "uid" RequestHeader set REMOTE_USER %{AUTHENTICATE_uid}e </Location> </VirtualHost>

Optimisations Infrastructure Calcul Stockage

Optimisations Traitement Connecter un cluster de calcul Couche DRMAA Serveur NFS Middleware type SGE : paramètrage

Optimisations WEB : Proxy upload et download

Optimisations BDD Configuration : galaxy.ini database_engine_option_pool_size = 20 database_engine_option_max_overflow = 40 La base de données : tuning dépendant

Optimisations Instance

Multiplier les gestionnaires WEB : galaxy.ini Optimisation Instance As already mentioned, unloading work from the Galaxy process is important due to the Python Global Interpreter Lock (GIL). The GIL is how Python ensures thread safety, and it accomplishes this by only allowing one thread to control execution at a time. Utiliser le frontal Apache en mode balancer Ex: Formation avec 20 connexions simultanées Job : job_conf.xml https://wiki.galaxyproject.org/admin/config/jobs

FIN