We're Hiring!

Launching Omero server on web

Having a problem deploying OMERO? Please ask new questions at https://forum.image.sc/tags/omero
Please note:
Historical discussions about OMERO. Please look for and ask new questions at https://forum.image.sc/tags/omero

The OMERO.server installation documentation begins here and you can find OMERO.web deployment documentation here.

Launching Omero server on web

Postby kverbist » Mon Nov 16, 2015 1:51 pm

Hi, I need some advice and possibly a solution on the following matter. I have currently created an installer which basically installs all components, prerequisites and the Omero server package on any 64 bit Windows OS. This is so far working well, using the Django development server.

However, the idea is to integrate the Omero server in a demonstration by the end of the year, and we would like to run the Omero server on a different server as all the remaining software which will communicate with it.

I am running into some trouble deploying Omero server using either IIS or Apache, but before I ask for any solutions, I would like to ask if it is possible to just keep using Django. Is Django able to host the Omero server over the internet? I tried setting the omero.web.application_server.host to my online IP, but got the error that Django could not bind to that IP.

If this is not possible, I would prefer to use IIS. I have followed all the steps on the website, but I receive the following error message when trying to open the omero page:

HTTP Error 500.0 - Internal Server Error
The page cannot be displayed because an internal server error has occurred.


Code: Select all
Detailed Error Information:
Module      IsapiModule
Notification      ExecuteRequestHandler
Handler      AboMapperCustom-1230601
Error Code      0x800700c1
Requested URL      http://192.168.60.236:80/omero
Physical Path      C:\inetpub\wwwroot
Logon Method      Anonymous
Logon User      Anonymous


Most likely causes:
IIS received the request; however, an internal error occurred during the processing of the request. The root cause of this error depends on which module handles the request and what was happening in the worker process when this error occurred.
IIS was not able to access the web.config file for the Web site or application. This can occur if the NTFS permissions are set incorrectly.
IIS was not able to process configuration for the Web site or application.
The authenticated user does not have permission to use this DLL.
The request is mapped to a managed handler but the .NET Extensibility Feature is not installed.


Things you can try:
Ensure that the NTFS permissions for the web.config file are correct and allow access to the Web server's machine account.
Check the event logs to see if any additional information was logged.
Verify the permissions for the DLL.
Install the .NET Extensibility feature if the request is mapped to a managed handler.
Create a tracing rule to track failed requests for this HTTP status code. For more information about creating a tracing rule for failed requests, click here.


After some more research it appears the AboMapperCustom is linked to the _omero_web_iis.dll file. I have no idea where to start solving this issue. IIS shows no error logs and the Omero server logs also reveal no errors or information regarding anything around the time frame I try calling the page. So on this matter I seem to be a bit in the dark with no clue where to even start looking.

I hope someone can help me out with this.
kverbist
 
Posts: 16
Joined: Mon Nov 16, 2015 10:51 am

Re: Launching Omero server on web

Postby jmoore » Mon Nov 16, 2015 9:06 pm

kverbist wrote:I am running into some trouble deploying Omero server using either IIS or Apache, but before I ask for any solutions, I would like to ask if it is possible to just keep using Django. Is Django able to host the Omero server over the internet? I tried setting the omero.web.application_server.host to my online IP, but got the error that Django could not bind to that IP.


application_server.host is more for where nginx or apache can expect to find django running. If I understand you correctly, you're looking for omero.web.server_list which allows an OMERO.web to point at an OMERO.server on a different host.

~Josh.
User avatar
jmoore
Site Admin
 
Posts: 1591
Joined: Fri May 22, 2009 1:29 pm
Location: Germany

Re: Launching Omero server on web

Postby atarkowska » Mon Nov 16, 2015 9:46 pm

Hi,

Could you also give us output of
Code: Select all
bin\omero admin diagnostics
?

Ola
atarkowska
 
Posts: 327
Joined: Mon May 18, 2009 12:44 pm

Re: Launching Omero server on web

Postby kverbist » Tue Nov 17, 2015 12:58 pm

Hello,

I managed to get one step further. But I do think its worthy to make a note of it. I followed the instructions on:

http://www.openmicroscopy.org/site/supp ... l-iis.html

and I basically copied the settings from the screenshots. However, the Enable 32 bit aplications setting should also be set back to False if you upgrade to a 64 bit installation, apparently. After doing so, I no longer get an internal server error from IIS, but now I do get a Django error:

A server error occurred. Please contact the administrator.

Should I change one of the omero.web settings when I switch to IIS? By the way, everything works perfectly fine, as long as I use the Django development server.

Diagnostics output:

C:\OMERO.server>bin\omero admin diagnostics

================================================================================

OMERO Diagnostics 5.2.0-ice35-b12
================================================================================


Commands: java -version 1.8.0 (C:\ProgramData\Oracle\Java
\javapath\java.EXE)
Commands: python -V 2.7.10 (C:\Python27\python.EXE --
2 others)
Commands: icegridnode --version 3.5.1 (C:\Ice-3.5.1\bin\icegridno
de.EXE)
Commands: icegridadmin --version 3.5.1 (C:\Ice-3.5.1\bin\icegridad
min.EXE)
Commands: psql --version 9.4.5 (C:\Program Files\PostgreSQ
L\9.4\bin\psql.EXE)

Server: icegridnode running
Server: Blitz-0 active (pid = 10648, enabled)
Server: DropBox inactive (disabled)
Server: FileServer active (pid = 6000, enabled)
Server: Indexer-0 active (pid = 6248, enabled)
Server: MonitorServer active (pid = 11004, enabled)
Server: OMERO.Glacier2 active (pid = 2704, enabled)
Server: OMERO.IceStorm active (pid = 7732, enabled)
Server: PixelData-0 active (pid = 10056, enabled)
Server: Processor-0 active (pid = 9172, enabled)
Server: Tables-0 inactive (disabled)
Server: TestDropBox inactive (enabled)
Server: OMERO.master active (running as LocalSystem)

Log dir: C:\OMERO.server\var\log exists
Log files: Blitz-0.log 2.0 MB errors=85 warnings=26

Log files: DropBox.log 2.0 KB errors=12 warnings=0

Log files: FileServer.log 1.0 KB
Log files: Indexer-0.log 75.0 KB errors=6 warnings=0

Log files: MonitorServer.log 1.0 KB
Log files: OMEROweb.log 311.0 KB errors=8 warnings=15
3
Log files: OMEROweb_brokenrequest.log 95.0 KB errors=14 warnings=67

Log files: PixelData-0.log 35.0 KB errors=6 warnings=4

Log files: Processor-0.log 4.0 MB errors=2384 warnings=11
88
Log files: Tables-0.log n/a
Log files: TestDropBox.log n/a
Log files: master.err 0.0 KB
Log files: master.out 0.0 KB
Log files: Total size 6.76 MB


Environment:OMERO_HOME=(unset)
Environment:OMERO_NODE=(unset)
Environment:OMERO_MASTER=(unset)
Environment:OMERO_USERDIR=(unset)
Environment:OMERO_TMPDIR=(unset)
Environment:PATH=C:\Python27\;C:\Python27\Scripts;C:\Python27\;C:\Python26\;C:\P
rogramData\Oracle\Java\javapath;C:\Python27\Lib\site-packages\PyQt4;C:\Program F
iles\Common Files\Siemens\Automation\Simatic OAM\bin;C:\Program Files (x86)\Inte
l\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Program Files (x86)\NVIDIA
Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbe
m;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Windows Liv
e\Shared;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x
86)\Intel\OpenCL SDK\2.0\bin\x64;C:\Program Files\Intel\Intel(R) Management Engi
ne Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\I
PT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Pro
gram Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program File
s (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;C:\Program Files (x86)\Windows
Kits\8.0\Windows Performance Toolkit\;C:\Program Files\Microsoft SQL Server\110
\Tools\Binn\;C:\Program Files\OpenVPN\bin;C:\Program Files (x86)\CMake 2.8\bin;C
:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files (x86
)\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server
\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files\Perforce;C:\Program Files\
TortoiseSVN\bin;C:\Python27;C:\Python27\Scripts;C:\OgreCommandLineTools_1.7.2;C:
\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Fi
les\nodejs\;C:\Program Files (x86)\Git\cmd;C:\Program Files (x86)\Git\bin;C:\Pro
gram Files (x86)\Skype\Phone\;D:\MATLAB\R2015b\bin;C:\Program Files\Perforce\Ser
ver;C:\php;C:\Users\Kenneth\AppData\Local\atom\bin;C:\Users\Kenneth\AppData\Roam
ing\npm;C:\Program Files\TortoiseGit\bin;C:\Ice-3.4.2\bin;C:\Program Files\Postg
reSQL\9.4\bin;C:\Ice-3.5.1\bin;
Environment:PYTHONPATH=C:\Ice-3.5.1\python
Environment:ICE_HOME=(unset)
Environment:LD_LIBRARY_PATH=(unset)
Environment:DYLD_LIBRARY_PATH=(unset)

OMERO SSL port:4064
OMERO TCP port:4063
OMERO data dir:'C:\OMERO' Exists? True Is writable? Tru
e
OMERO temp dir:'C:\Users\Kenneth\AppData\Roaming\omero\tmp' Exists? True
Is writable? True (Size: 0)

JVM settings: Blitz-${index} -Xmx1270m -XX:MaxPermSize=1g -XX:+Ig
noreUnrecognizedVMOptions
JVM settings: Indexer-${index} -Xmx846m -XX:MaxPermSize=1g -XX:+Ign
oreUnrecognizedVMOptions
JVM settings: PixelData-${index} -Xmx1270m -XX:MaxPermSize=1g -XX:+Ig
noreUnrecognizedVMOptions
JVM settings: Repository-${index} -Xmx846m -XX:MaxPermSize=1g -XX:+Ign
oreUnrecognizedVMOptions

OMERO.web status... DEVELOPMENT: You will have to kill processes by hand!
Django version: 1.8.6

C:\OMERO.server>
kverbist
 
Posts: 16
Joined: Mon Nov 16, 2015 10:51 am

Re: Launching Omero server on web

Postby atarkowska » Tue Nov 17, 2015 3:44 pm

Hi,

If you get Django error, what is in C:\\OMERO.server\var\log\OMEROweb.log?

I am afraid OMERO.web doesn't work on Windows with Django 1.8. Windows limitation are stated in our documentation. Please install Django 1.6 using
Code: Select all
pip install -r share/web/requirements-py26-iis.txt
For more details refer to https://docs.djangoproject.com/en/1.6/howto/windows/


Ola
atarkowska
 
Posts: 327
Joined: Mon May 18, 2009 12:44 pm

Re: Launching Omero server on web

Postby kverbist » Wed Nov 18, 2015 9:33 am

Hello Ola,

Thank you for your response. I have uninstalled Django, and installed Django version 1.6. This still did not solve the problem for me. When I browse to http://localhost/omero, all I see is the following message:

A server error occurred. Please contact the administrator.

The server did redirect me to:

http://localhost/omero/webclient/login/ ... bclient%2F

so something seems to be happening at least.

Please be reminded that I am trying the web deployment, so I am using IIS as a webserver. When I do not use IIS as webserver, but simply use the built-in omero web start, everything works fine and I can log into the Omero insight web client. The problem only seems to happen once I let IIS serve the web content.

As far as the logs are concerned, there are no more log entries since 2 days ago, which was the last time I actually used the omero web start.

My own guess is that I need to change a config setting somewhere when switching to IIS? Or do I perhaps still need to launch omero web start, even when using IIS?

Regards,
KVerbist
kverbist
 
Posts: 16
Joined: Mon Nov 16, 2015 10:51 am

Re: Launching Omero server on web

Postby atarkowska » Wed Nov 18, 2015 11:10 am

Hi,

Once you managed to set up IIS, would need to set:
Code: Select all
C:\omero_dist>bin\omero web iis
to add bindings. This will automatically add two applications, /omero and /static, to the default web site and application pool. You can customize these locations by setting omero.web.prefix and omero.web.static_url.

Code: Select all
C:\omero_dist>bin\omero config set omero.web.static_url '/omero/static/'
C:\omero_dist>bin\omero config set omero.web.prefix '/omero'


and remove IIS bindings
Code: Select all
C:\omero_dist>bin\omero web iis --remove


After running bin\omero web iis could you paste an output of:
Code: Select all
bin\omero config get --hide-password


Ola
atarkowska
 
Posts: 327
Joined: Mon May 18, 2009 12:44 pm

Re: Launching Omero server on web

Postby kverbist » Fri Nov 20, 2015 11:42 am

Hi,

Just thought you should know that it works now. I did downgrade to Django1.6, but this alone didnt do the trick. I also unset the omero.web.application_server and omero.web.debug. After that it still did not work, but I reset IIS a few times and then it somehow decided to work.

So in the end, I don't really know what was wrong, but it is working now ... :?

Regards,
KVerbist
kverbist
 
Posts: 16
Joined: Mon Nov 16, 2015 10:51 am

Re: Launching Omero server on web

Postby atarkowska » Fri Nov 20, 2015 12:30 pm

Thanks for the update. To clarify it works with 1.6, not 1.8 right?

Ola
atarkowska
 
Posts: 327
Joined: Mon May 18, 2009 12:44 pm

Re: Launching Omero server on web

Postby kverbist » Tue Nov 24, 2015 10:28 am

I now have it working with 1.6 indeed.
kverbist
 
Posts: 16
Joined: Mon Nov 16, 2015 10:51 am


Return to Installation and Deployment

Who is online

Users browsing this forum: No registered users and 1 guest