name: inverse layout: true class: center, middle, inverse
--- # Galaxy Installation with Ansible .footnote[Tip: press `P` to view the presenter notes] ??? Presenter notes contain extra information which might be useful if you intend to use these slides for teaching. Press `P` again to switch presenter notes off Press `C` to create a new window where the same presentation will be displayed. This window is linked to the main window. Changing slides on one will cause the slide to change on the other. Useful when presenting. --- ### <i class="far fa-question-circle" aria-hidden="true"></i><span class="visually-hidden">question</span> Questions - How does it all connect? - What steps will we go through? --- ### <i class="fas fa-bullseye" aria-hidden="true"></i><span class="visually-hidden">objectives</span> Objectives - Get a high-level overview of a Galaxy server setup --- ## Install PostgreSQL & Galaxy extensions ![Graph showing a Postgres DB](../../images/ansible-galaxy-intro-0.png) --- ## Install Galaxy & Attach Storage ![Galaxy is now attached to the DB. uWSGI, storage, and compute are attached to Galaxy](../../images/ansible-galaxy-intro-1.png) --- ## Configure NGINX ![NGINX is added to proxy uWSGI](../../images/ansible-galaxy-intro-2.png) --- ## Configure Job Handlers ![Job Handlers are added, between Galaxy and the Compute](../../images/ansible-galaxy-intro-3.png) --- ## Install & Configure Slurm ![Slurm is attached to the handlers](../../images/ansible-galaxy-intro-4.png) --- ## Connect CVMFS & Reference Data ![CVMFS is attached to storage + compute + galaxy](../../images/ansible-galaxy-intro-5.png) --- ## Setup Remote Compute ![Remote compute site, with Pulsar and compute is attached to the job handlers](../../images/ansible-galaxy-intro-6.png) --- ## Major Initial Decisions * Where to install Galaxy * Where to store Galaxy datasets * Database location --- ## Where to install Galaxy * Must be at same path on cluster - more on this in cluster sessions --- ## Where to store Galaxy datasets * Must be at same path on cluster * Consider future scalability --- ## Database location * Fast local, reliable storage * Consider future scalability --- ## Basic best practices * Run as an **unprivileged user** * When possible, separate *code* from *data* and *configs* * Write protect code and configs .left[All of these practices are supported in the [galaxyproject.galaxy][galaxy-role] Ansible role and covered in the [Galaxy Installation with Ansible][ansible-galaxy-tutorial] tutorial!] [galaxy-role]: https://galaxy.ansible.com/galaxyproject/galaxy [ansible-galaxy-tutorial]: /archive/2020-12-01/topics/admin/tutorials/ansible-galaxy/tutorial.html --- ### <i class="fas fa-key" aria-hidden="true"></i><span class="visually-hidden">keypoints</span> Key points - Everything can be accomplished with Ansible roles from Galaxy - You can easily deploy a base Galaxy, or one with more features. --- ## Thank you! This material is the result of a collaborative work. Thanks to the [Galaxy Training Network](https://wiki.galaxyproject.org/Teach/GTN) and all the contributors!
This material is licensed under the
Creative Commons Attribution 4.0 International License