1.8.2. eXo Chat installation into a dedicated server

Warning

You are looking at documentation for an older release. Not what you want? See the current release documentation.

eXo Platform provides the standalone mode to install eXo Chat into a dedicated server. In this mode, the backend of eXo Chat application is deployed in its own Tomcat application server while the frontend i.e. the portlets are deployed in eXo Platform instance.

This alternative architecture brings better scalability and performance since server resources are not shared between eXo Platform and eXo Chat. It allows to add more eXo Chat server nodes independently from eXo Platform nodes.

The schema below summaries the standalone mode architecture:

To install eXo Chat in standalone mode, follow this procedure:

  1. Ensure to uninstall eXo Chat from eXo Platform server if it is already installed by the Addon manager: addon uninstall exo-chat

  2. Download eXo Chat package: chat-standalone-server-tomcat into a known location and rename it to chat_server_package.

    The package chat_server_package is a ready tomcat server for eXo Chat.

    Note

    Make sure there is no port conflicts between the eXo Chat server and other systems.

    If you deploy the eXo Chat server on the same host than eXo Platform, then, you should change all the ports in chat_server_package/conf/server.xml as in the example below:

    
    <Connector port="8280" protocol="HTTP/1.1"
        connectionTimeout="20000"
        redirectPort="8243" URIEncoding="UTF-8" />
                            ....
  3. Create the file chat.properties under the path chat_server_package/conf then add the configuration to fit with your environments by updating the following properties:

    standaloneChatServer=true
    dbServerHost=[MongoDB-Host]
    dbServerPort=[MongoDB-Port]
    dbName=chat
    dbAuthentication=false
    dbUser=admin
    dbPassword=pass
    chatPortalPage=/portal/intranet/chat
    chatPassPhrase=change-me
    
  4. Install and configure MongoDB database by following this link.

  5. Start the chat server:

    						cd  chat_server_package
    						./start_chatServer.sh
    					
  6. Install Chat application into eXo Platform server : ./addon install exo-chat-client

  7. Configure these properties in eXo_tomcat/gatein/conf/chat.properties:

    standaloneChatServer=true 
    chatServerBase=http://[chat-server-IP-address]:8280
    chatPortalPage=/portal/intranet/chat
    chatIntervalSession=60000
    chatPassPhrase=change-me
    
  8. Start eXo Platform server:

    cd eXo_tomcat 
    ./start_eXo.sh
    		
  9. Install a frontal server and configure it to redirect Chat server requests to the right server. Below an example of an Apache2 configuration file (It should be adapted according to your environment):

    
    
    <VirtualHost *:80>
        ErrorLog /var/log/apache2/error.log
        CustomLog /var/log/apache2/access.log combined
        #Put your used ServerName 
        ServerName www.domainexo.com
         
         <Proxy *>
            Order deny,allow
            Allow from all
         </Proxy>

         <IfModule proxy_wstunnel_module>    

    ProxyPass /chatServer/cometd ws://localhost:8280/chatServer/cometd  max=100 acquire=5000   retry=5 disablereuse=on flushpackets=on 

      ProxyPass /cometd  ws://localhost:8080/cometd/ max=100 acquire=5000 retry=5  disablereuse=on flushpackets=on 

         </IfModule>
         
         ProxyPass /chatServer  http://localhost:8280/chatServer
         ProxyPassReverse /chatServer http://localhost:8280/chatServer
         ProxyPassReverse /chatServer/cometd/  ws://localhost:8280/chatServer/cometd/

        

         ProxyPassReverse /cometd  ws://localhost:8080/cometd/
         ProxyPass / http://localhost:8080/
         ProxyPassReverse / http://localhost:8080/  
       
         ProxyRequests Off
         ProxyPreserveHost On
    </VirtualHost>


            
  10. Login to the platform using this url http://www.domainexo.com:80/portal/intranet/, you should have the chat application in the top navigation menu.

Copyright ©. All rights reserved. eXo Platform SAS
blog comments powered byDisqus