-
Notifications
You must be signed in to change notification settings - Fork 0
A list of all services needed by Galaxy
Kjetil Klepper edited this page Apr 30, 2024
·
36 revisions
The tables below list all the services that are required by Galaxy on the different nodes. The list does not include services that are expected to be present on the servers anyway, such as regular network services, and services related to monitoring and other functions that are not strictly needed by Galaxy.
The ports have codes that indicate which servers that need access to that port:
-
I
: the port is only used internally on the same server.I*
means it is proxied by a web server to allow external access -
M
: the port must be accessible from the Main node (usegalaxy.no) -
D
: the port must be accessible from the Database node (db.usegalaxy.no) -
C
: the port must be accessible from all the compute nodes -
S
: the port must be accessible from sibling Squid proxies (i.e. other nodes in the "cvmfsproxy" host group) -
W
: the port must be open to the world
service | description | Ports |
---|---|---|
galaxy-gunicorn | Gunicorn is the Galaxy web application server. It handles incoming web requests from users (Galaxy clients) that are relayed by the NGINX web proxy, and it communicates with the proxy through the socket file "/srv/galaxy/var/gunicorn.sock" | UDS socket file |
galaxy-celery | Celery is a distributed task queue that performs small tasks on behalf of Galaxy (not tool jobs). Communicates via messages sent to the RabbitMQ on the database server | |
galaxy-celery-beat | Celery's scheduler | |
galaxy-tusd | TusD handles uploads from the users' local machines | 1080 (I* ) |
galaxy-handler@N | Galaxy job handlers. N is an integer between 0 and 1. These handlers perform pre- and post-processing of jobs that are submitted to the Slurm cluster | |
NGINX | A web server that proxies several services on the main node, including the Galaxy web application (Gunicorn), TusD, NGA and Flower (and Jenkins?) | 80 (W ), 443 (W ) |
NGA | The NeLS Galaxy API service performs tasks that are specific to the NeLS-branded UseGalaxy.no server. It used to handle transfers of histories between UseGalaxy.no and NeLS Storage via the "nga-runner@N" services, but currently only the "nga-master" service is used to check if users have agreed to our Terms of Service. NGA is proxied by NGINX | 8888 (I* ) |
slurmctld | The Slurm controller daemon that schedules jobs on the Slurm compute nodes | 6817 (M,C ) |
slurmdbd | The Slurm database daemon that stores information about Slurm job statistics in the MySQL database on the database node. Not strictly needed for Galaxy to function, but nice to have. | 6819 (I? ) |
redis | Redis is an in-memory key-value database used as a backend by Celery to store task results | 6379 (I ) |
flower | (optional) Flower is a web interface for monitoring Celery clusters. It is proxied by NGINX | 5555 (I* ) |
cvmfs client | ||
ECC | (Currently disabled) The Elastic Compute Cloud service can dynamically spin up new compute nodes and add them to the Slurm cluster in times of heavy work load, and then take them down again afterwards | |
Jenkins | Not used by Galaxy | 4000 (I* ) |
service | description | Ports |
---|---|---|
postgresql-10 | The database that stores all the information needed by Galaxy (except the actual datasets which are stored as files under "/data/part0") | 5432 (M,C? ) |
rabbitmq-server | RabbitMQ is an asynchronous message broker that Galaxy relies on for communication between the Galaxy services. It is also used by NGA. | 5671 for AMQPS (M,C? ), 5672 for AMQP (? ), 15672 for admin web page (I* ) |
httpd | An Apache web server that proxies our CVMFS stratum 0 server "data.usegalaxy.no". It also proxies the RabbitMQ administration web page | 80 (W ), 443 (W ) |
mariadb | A MariaDB (MySQL) database that stores Slurm job statistics on behalf of the Slurm Database daemon running on the main node. It is only used for this purpose and is not strictly needed by Galaxy | 3306 (M ) |
cvmfs server |
service | description | Ports |
---|---|---|
slurmd | The Slurm daemon that accepts tasks from the Slurm controller daemon on the main node, launches tasks on the compute node and monitors them | 6818 (M ) |
cvmfs client |
service | description | Ports |
---|---|---|
squid | A caching proxy that sits between the CVMFS clients on the compute nodes and the remote Stratum servers | 3128 for external requests (M,C ), 3130 for ICP communication between siblings (S ) |