Dear Galaxy admins,
I am contacting you due to multiple problems during the installation of our own server of galaxy.
We have been struggling to install galaxy on our HPC system for 1.5 year. We have faced so many problems while installing galaxy that we have lost count.
Yet, our main problem was and remains the use of pulsar...
Even after following two training sessions, switched to a brand new CentOS 8 cluster (while CentOS 8 will die at the end of the year), we are still not able to use our galaxy instance.
We followed the ansible documentation and we are now able to reproduce the training sessions (i.e, execute an analysis with pulsar on our HPC system). Nevertheless, we are not able to connect pulsar with slurm (which makes it unusable). We do not want to use DRMAA because it is not well maintained and compatible with slurm. Instead, we choose to use CLI (as mentioned in the galaxy docs) but we are stuck (see below the pulsarservers.yaml file).
Is it possible to use something else than DRMAA to connect pulsar to the scheduler?
Thanks,
Best regards
Luc Cornet
- - pulsarservers.yaml - -
# Put your Galaxy server's fully qualified domain name (FQDN) (or the FQDN of the RabbitMQ server) above.
pulsar_root: /opt/pulsar
pulsar_pip_install: true
pulsar_pycurl_ssl_library: openssl
pulsar_systemd: true
pulsar_systemd_runner: webless
pulsar_create_user: false
pulsar_user: {name: pulsar, shell: /bin/bash}
pulsar_optional_dependencies:
- pyOpenSSL
# For remote transfers initiated on the Pulsar end rather than the Galaxy end
- pycurl
# drmaa required if connecting to an external DRM using it.
- drmaa
# kombu needed if using a message queue
- kombu
# amqp 5.0.3 changes behaviour in an unexpected way, pin for now.
- 'amqp==5.0.2'
# psutil and pylockfile are optional dependencies but can make Pulsar
# more robust in small ways.
- psutil
pulsar_yaml_config:
conda_auto_init: True
conda_auto_install: True
staging_directory: "{{ pulsar_staging_dir }}"
persistence_directory: "{{ pulsar_persistence_dir }}"
tool_dependency_dir: "{{ pulsar_dependencies_dir }}"
# The following are the settings for the pulsar server to contact the message queue with related timeouts etc.
message_queue_url: "pyamqp://galaxy_au:{{ rabbitmq_password_galaxy_au }}@{{ galaxy_server_url }}:5671//pulsar/galaxy_au?ssl=1"
managers:
_default_:
type: queued_cli
job_plugin: slurm
native_specification: "-p batch --tasks=1 --cpus-per-task=2 --mem-per-cpu=1000 -t 10:00"
min_polling_interval: 0.5
amqp_publish_retry: True
amqp_publish_retry_max_retries: 5
amqp_publish_retry_interval_start: 10
amqp_publish_retry_interval_step: 10
amqp_publish_retry_interval_max: 60
# We also need to create the dependency resolver file so pulsar knows how to
# find and install dependencies for the tools we ask it to run. The simplest
# method which covers 99% of the use cases is to use conda auto installs similar
# to how Galaxy works.
pulsar_dependency_resolvers:
- name: conda
args:
- name: auto_init
value: true
------------
Luc Cornet, PhD
Bio-informatician
Mycology and Aerobiology
Sciensano