IDR deployment and Servers


On the internet site of IDR, it is mentioned that the main production IDR consists of 7 servers (With Openstack).

Is the list below right ? Thank you very much.

-1 PostgreSQL server
-2 servers : Internal OMERO.server and Internal OMERO.web ( are services OMERO.server and OEMRO.web separate with 2 virtual servers ?)
-2 servers : 4 public read-only OMERO.server and OMERO.web ( are services OMERO.server and OMERO.web separate with 2 virtual servers ?)
1 Nginx server
1 Haproxy server

HI Faisal,

the current architecture of the IDR deployment is as follows:

  • 1 proxy server (nginx + HAProxy)
  • 1 database instance (PostgreSQL)
  • 1 read-write OMERO instance (OMERO.server + OMERO.web)
  • 4 read-only OMERO instances (OMERO.server + OMERO.web each)
  • 1 management deployment (prometheus + kibana + fluentd)

For all OMERO instances, OMERO.server and OMERO.web are hosted on the same VM but deployed separately under /opt/omero/server and /opt/omero/web respectively.


1 Like

Thank you very much Sébastien.
My understanding is that it is interesting to deploy (via Ansible) Omero.server and Omero.web separately in order to facilitate the maintenance of services ( installation of plugins, updates, …). So, there is not a lot of interest to separate Omero.server and Omero.web in 2 VMs ?

Hi Faisal

Our Ansible roles will work with OMERO.web and OMERO.server on different VMs, just ensure you configure OMERO.web with the address of OMERO.server since the default is localhost.

In the IDR we have them on the same VM because the bottleneck tends to be OMERO.server, so at present any benefits of running OMERO.web separately are outweighed by having to manage more VMs.

Ok thank you. So the most important is tu deploy deparately OMERO.web and OMERO.server but not necessarily in two VMs even if your Ansible roles can do that (like IDR).

Yes, that’s right.
If you want a simpler example of our Ansible playbooks have a look at


1 Like