Websocket Server Role


#1

Could someone please explain exactly what the new websocket server role does and what it’s used for? I had heard that it’s purpose is to toggle the SSUI on and off, but after testing it seems that turning off this role turns off the main GUI, the SSUI, and the REST API, even when the user_interface and web_services roles are still enabled. Is this the intended result?


#2

It was added for starting/stopping websocket workers required for proxying remote consoles. However, the issue you are describing might be a bug. I will try to reproduce it tomorrow …


#3

In previous release the remote consoles functionality spawned a proxy process for each web socket client (opened console).

In Darga, there’s a single websocket proxy process – the websocket server role/worker that does the proxying for all the opened consoles.

The websocket worker also might be used for UI notifications about anync tasks happening.

One goal of the websocket worker is to support the remote consoles in more complicated network topologies and setups such as multiple isolated zones for different ManageIQ roles and hypervisors or front-end HA proxies.

For Darga, having a single proxy process also allowed us to bind that process to a single port and together with proxying that port through Apache on 443 we could greatly simplify the setup of SSL certificates for the remote consoles to work.


#4

But it isn’t the intent for the websocket role to also disable (but leave listed as enabled) the user_interface and web_services roles, right?


#5

Sure. I think that David answered that above already and will look into it. Thx for reporting the issue.


#6

OK, just clarifying to make sure I understood. Thanks guys.


#7

We have just run into this issue when upgrading from 3.2 to 4.1. Post upgrade, we could not log into out appliances until we manually added the websocket role through the rails console.