====== DEV Servers ======
==== dev01.exphosted.com ====
Internal IP: 192.168.225.214\\
Roles: Web/App, Database, Search (Tomcat/Solr), Chat, Capistrano DEV deployment
==== devcollab02.exphosted.com ====
IP: 184.106.199.92\\
Roles: Recorder (with BBBv0.8), BBB Client
==== devcollab01.learnexa.com ====
IP: 107.170.84.6\\
Roles: Expertus Meeting (with BBBv0.81)
====== DEV Application Server (dev01.exphosted.com) ======
===== Server Access =====
Use the DEV Server External IP Address or the Domain Name provided with the DEV userid to login to the DEV Server.\\ Login is only allowed with authorized ssh keys.
===== Software Components =====
The following components are installed/configured on the DEV Application Server
* Loadbalancer: Haproxy (Server version: Haproxy/1.5.15 - Compiled with Openssl v1.0.2d library)
* Web Server: Apache (Server version: Apache/2.2.17)
* Application Programming Language: Ruby (ruby 1.8.7 (2011-02-18 patchlevel 334) [x86_64-linux], MBARI 0x6770, Ruby Enterprise Edition 2011.03)
* Database: MySQL (5.5.13)
* Search: Apache Solr (1.4.1) and Tomcat (6.0.32)
* Code Deployment: Capistrano (2.5.21) and capistrano-ext (1.2.1)
* Chat: node (v0.2.4), redis (v2.0.3), juggernaut 2
* gem (v1.3.7)
Local gems installed:
* bundler (1.0.18)
* capistrano (2.5.21)
* capistrano-ext (1.2.1)
* daemon_controller (0.2.6)
* daemons (1.1.4)
* fastthread (1.0.7)
* god (0.11.0)
* highline (1.6.2)
* net-scp (1.0.4)
* net-sftp (2.0.5)
* net-ssh (2.2.1)
* net-ssh-gateway (1.1.0)
* passenger (3.0.9)
* rack (1.3.2)
* rake (0.8.7)
* rmagick (1.15.17)
In addition to above, all other software listed in the software installation page required for the working of the application is installed.
===== Scripts and Processes =====
All scripts and processes need to be ran as DEV userid
==== Loadbalancer (Haproxy) ====
sudo /etc/init.d/haproxy [start|stop|restart|reload] ## use reload once you have made configuration changes.
haproxy.cfg.http_only and haproxy.cfg.https_only ## These 2 files are self explanatory, make changes according to requirement and reload haproxy
cphaproxy.sh and rlhaproxy.sh ## Are available for SSL configuration on haproxy in /home/expdev01/bin folder
==== Apache ====
cd ~/bin
./apache_sss.sh [stop|start|restart|status] ## Use one of the 4 options
Starting or restarting Apache will also restart Rails application
==== MySQL ====
cd ~/bin
./mysql_sss.sh [stop|start|restart|status] ## Use one of the 4 options
==== Tomcat/Solr ====
cd ~/bin
./tomcat_sss.sh [stop|start|restart|status] ## Use one of the 4 options
==== God ====
God controls and monitors the following processes:
* memcached
* Xvfb
* starling
* workling (dependent on starling)
* openoffice
* rufus (dependent on DB)
cd /deploy/systasks
./god.sh [stop|start|restart|status] ## Use one of the 4 options
god is stopped before code deployment and started after the code deployment by the cap scripts, will normally won't need to handle manually.
==== Chat ====
cd ~/bin
./chat_sss.sh [stop|start|restart|status] ## Use one of the 4 options
====== DEV Collab Server (devcollab02.exphosted.com) ======
===== Server Access =====
Use the DEV Collab Server External IP Address or the Domain Name provided with the DEV userid
===== Software Components =====
bbb-apps 0.80ubuntu37 BigBlueButton applications for Red5
bbb-apps-deskshare 0.80ubuntu37 BigBlueButton deskshare module for Red5
bbb-apps-sip 0.80ubuntu16 BigBlueButton SIP module for Red5
bbb-apps-video 0.80ubuntu18 BigBlueButton video module for Red5
bbb-client 0.80ubuntu282 BigBlueButton Flash client
bbb-common 0.80ubuntu93 BigBlueButton common files
bbb-config 0.80ubuntu93 BigBlueButton group package
bbb-freeswitch 1.0.7-ubuntu41 open source telephony platform
bbb-freeswitch-config 0.80ubuntu8 BigBlueButton group package
bbb-openoffice-headless 0.80ubuntu2 BigBlueButton wrapper for OpenOffice
bbb-playback-slides 0.80ubuntu86 BigBluebutton playback of slides and audio
bbb-record-core 0.80ubuntu107 BigBlueButton record and playback
bbb-web 0.80ubuntu117 BigBlueButton API
bigbluebutton 0.80ubuntu4 Open Source Web Conferencing System (bbb)
libtomcat6-java 6.0.24-2ubuntu1.10 Servlet and JSP engine -- core libraries
nginx 0.7.65-1ubuntu2.3 small, but very powerful and efficient web s
openjdk-6-jdk 6b24-1.11.5-0ubuntu1~10.04.2 OpenJDK Development Kit (JDK)
openjdk-6-jre 6b24-1.11.5-0ubuntu1~10.04.2 OpenJDK Java runtime, using Hotspot JIT
openjdk-6-jre-headless 6b24-1.11.5-0ubuntu1~10.04.2 OpenJDK Java runtime, using Hotspot JIT (hea
openjdk-6-jre-lib 6b24-1.11.5-0ubuntu1~10.04.2 OpenJDK Java runtime (architecture independe
tomcat6 6.0.24-2ubuntu1.10 Servlet and JSP engine
tomcat6-common 6.0.24-2ubuntu1.10 Servlet and JSP engine -- common files
===== Scripts and Processes =====
All scripts and processes need to be ran as Collab-DEV userid
==== Running the deployment scripts ====
ssh into dev01.exphosted.com
Call the runcap.sh from the cap directory
cd crossbow (as the given dev user, or cd ~/crossbow)
./runcap.sh
Output for deploy task show below (your output may vary depending on options selected):
./runcap.sh
Select Target environment
1). Development
2). Production
Enter target environment number [1,2]: 1 (Enter 1) /* Note: Always enter 1. Never use 2 */
Select Cap Task
1). deploy (Use this for incremental code deployments)
2). deploy:setup (Use this to setup the necessary application folders)
3). deploy:check (Use this to verify application folder setup)
4). deploy:cold
5). deploy:migrate
6). deploy:restart
7). deploy:update
8). deploy:web:enable (Use this to remove maintenance page, App2 becomes accessible from back-end)
9). httpstate:allup (Use this as a final step to enable Internet access to all web servers)
Enter Cap Task number [1-9]: 1 (Enter 1)
Enter TAG value or leave blank to use trunk as repository:
Ready to run task deploy in environment development..? [yY]: y (Enter y)
Enter SVN UserName:
Enter SVN Password:
More details: [[qastageandproductiondeployment#running_the_deployment_scripts]]
==== BBB Client Code Deployment ====
This script will refresh bbbclient code from collaboration/bbb/trunk/ repository, recompile using ant and restart all BBB processes.
cd ~/bin
./deploybbbclient.sh (will prompt to enter TAG, password for SVN and BBB-DEV user)
==== Recorder Code Deployment ====
This script will refresh recorder war file from collaboration/recorder/server/(trunk|tag) repository, recompile using ant, replace recorder.war and restart all BBB processes.
cd ~/bin
./deploy_recorder_server.sh (will prompt to enter TAG, password for SVN and BBB-DEV user)
==== Expertus Meeting Code Deployment ====
Follow this article. [[https://wiki.exphosted.com/doku.php/meetingservers|Click here]]
==== BBB Processes ====
In case BBB processes need to be restarted manually, run the below:
sudo bbb-conf --restart
==== Expertus Meeting Ruby Process ====
cd ~/bin
./expertus_meeting.sh [stop|start|status|restart]