Symptoms
OACI VE console does not work.
The console shows the message:
Session Closed. Please click on Reset Console
Cause
OACH console requires a series of configuration entries on Branding and Virtuozzo hosts. Due to various reasons, the configuration may get broken as a result of reconfiguration - brands relocation, Apache reconfiguration, Virtuozzo nodes reinstallation, etc.
Resolution
The check-list below will help to validate the VE console configuration:
Each host that contains a brand should have the following configuration files in place:
# cat /etc/httpd/conf.d/oaci.conf SSLProxyEngine On ProxyVia Off ProxyRequests Off <Proxy *> Order allow,deny Allow from all </Proxy> Header set X-Forwarded-Proto https ProxyPass "/oaciws/22" "ws://10.10.10.11:80/websocket" ProxyPass "/oaciws/23" "ws://10.10.10.12:80/websocket"
The bottom lines are formed with the help of backnet IP addresses of the Virtuozzo hardware nodes.
The configuration file should be included into the Apache configuration tree:
# grep oaci.conf /etc/httpd/conf/httpd.conf Include conf.d/oaci.conf
Each Virtuozzo host should have Apache configuration file
/etc/httpd/conf.d/oaci.conf
, describing OACI virtual host that should be located at/var/www/oaci
. The virtual host includes a single.htaccess
file to forward the incoming requests to web sockets.# cat /var/www/oaci/html/.htaccess RewriteEngine on RewriteRule ^websocket/([^/]+) ws://10.10.10.1:$1/websockify [P] RewriteRule ^oaciws/([^/]+)/([^/]+) ws://10.10.10.1:$2/websockify [P]
All Branding and Virtuozzo hosts should have
mod_proxy_wstunnel
RPM package installed, with additional Apache configuration file to load the module:# cat /etc/httpd/conf.d/proxy_wstunnel.conf LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
Note: RedHat7/CentOS7 have
mod_proxy_wstunnel
shipped with httpd by default. RPM package mod_proxy_wstunnel is not required on servers with RedHat7/CentOS7.The request to access VE console arrives at the Branding host, which is proxied to the web sockets running on Virtuozzo hosts. Connectivity between Branding and Virtuozzo on port 80 is required to make this work.
Log files to check for possible errors:
/var/log/httpd/oaci_access_log /var/log/httpd/oaci_error_log /var/log/httpd/oaci_ssl_access_log /var/log/httpd/oaci_ssl_error_log
Apache service should be running on all Virtuozzo and Branding nodes:
# service httpd status