Thursday, February 3, 2011

BigBlueButtonVM - bigbluebutton - How to setup your own BigBlueButton Virtual Machine - Project Hosting on Google Code

How to setup your own BigBlueButton Virtual Machine
How to setup your own BigBlueButton Server in a few minutes
Installing BigBlueButton VM
Installing the BigBlueButton VM using VirtualBox
Running the BigBlueButton VM
Developing BigBlueButton
Upgrading the BigBlueButton VM
How to upgrade to the next release
Updating the BigBlueButton VM to packages on trunk (aka Living on the Edge)
The console gives an error when booting
I'm still having problems
How to setup your own BigBlueButton Server in a few minutes
Many universities and colleges have told us they want to run their own version BigBlueButton behind their firewall. In addition, developers have asked how to setup a development environment to enhance and extend BigBlueButton.

In response to these requests, we've created a Ubuntu-based virtual machine (VM) that makes it easy for anyone to download and run a BigBlueButton server. The VM runs under VMWare Player, which is available on Unix, Windows, or Mac. We've also pre-configured the VM so it can serve as a full development environment. We've added scripts (using bbb-conf) to make it easy for a developer to checkout BigBlueButton's source from Google Code repository, make local changes, and, with a few commands, re-compile various components of BigBlueButton for development and testing.


VMWare Player (or VMWare Workstation) for Windows or Unix, or VM Fusion for Mac
A DHCP Server for the VM to acquire an IP address on boot
The second point is key: the VM must be able to connect to the internet to update from packages. If it does not acquire an IP address, it won't be able to finish the setup of BigBlueButton.

Note: This video refers to 0.64, but the steps are valid for 0.71a.

Installing BigBlueButton VM
Download and uncompress the the VM.
Download from SourceForge: Download

2. Open the enclosed folder.

3. Double-click on the bigbluebutton-vm.vmx icon.
This will start VMWare Player (or VMWare Workstation) and boot the VM. Note: In VMWare, make sure the networking is set to Bridged, not NAT.

The BigBlueButton VM takes about 10 minutes to first initialize. Sit back, relax, go watch some youtube videos. During this time, the BigBlueButton VM goes through its initial startup script that

Sets up the networking (acquire an IP address from a DHCP server)
Installs the BigBlueButton packages
Configures BigBlueButton to use the VM's current IP address
Installs OpenSSH
When it's done, you'll see a a login message. NOTE: The VM has been pre-configured to have the following user-id/password:

user-id: firstuser
password: default
To secure your server, immediately login with the above user-id/password. This password is set to expire, so you'll be asked to enter the password default again, then to provide a new password (entering it twice to confirm). Again, do this now as it will secure your server.

After resetting the default password, you'll get the following welcome message (this appears each time you login as firstuser).

Note: Due to an upgrade to OpenOffice 3.2, you'll need to restart the VM after this first boot sequence to have OpenOffice properly running for document conversation. The next time the VM starts everything will be working properly.

Installing the BigBlueButton VM using VirtualBox
See Running BigBlueButton VM in Virtual Box.

Running the BigBlueButton VM
At this point, you've got a full BigBlueButton server up and running. Open a web browser to the URL provided using the IP address of the VM.

Enter whatever name you like and then click Join. You'll join the default meeting.

Developing BigBlueButton
We've included all the development tools in this VM to compile and deploy the source for bigbluebutton-client, bigbluebutton-web, and bigbluebutton-apps. See developing BigBlueButton for more information.

Upgrading the BigBlueButton VM
How to upgrade to the next release
This is where packages make life easy.

The BigBlueButton components are installed as Ubuntu packages. The VM already has apt configure to check the repository for updates. This means, when we ship BigBlueButton 0.8 (for example), you'll be able to upgrade your server with two commands.

# sudo apt-get update
# sudo apt-get dist-upgrade
When you run these commands, you'll see BigBlueButton download a packages for the new release. You may be prompted to update an existing configuration file.

Note: Best to always check the release notes for specific instructions to upgrade to a new release.

When updating, you'll see the upgrade messages.

Updating the BigBlueButton VM to packages on trunk (aka Living on the Edge)
We upgrade the repository with every release. In addition, during each iteration of BigBlueButton, we have our continuous integration server Hudson automatically updating packages off our GitHUB repository.

These packages are used to update our devbuild server, so you can always try out the latest version. Keep in mind that trunk isn't always going to be stable, so devbuild will be as stable as trunk.

However, if you want to live on the edge and use the latest packages built by our from the trunk of the BigBlueButton Google Code repository, then edit /etc/apt/sources.list.d/bigbluebutton.list and change

# Repository for BigBlueButton
deb bigbluebutton main

# Repository for BigBlueButton
deb bigbluebutton main
If you have an ubuntu-10.04 lucid running, please do following changes:

# Repository for BigBlueButton
deb bigbluebutton-lucid main
Do an apt-get update/apt-get dist-upgrade and you'll be running the latest builds, which are not guaranteed to be stable, but you can see what's happing in the current itteration.

The console gives an error when booting
When the VM first boots, it acquires an IP address and runs a setup script to finish the installation of BigBlueButton. The script:

updating the packages
installs BigBlueButton
The update step ensures that any updates to packages issued after the release of the BigBlueButton VM will be automatically downloaded before installation proceeded.

The most common error that prevents update and installation is occurs when the BigBlueButton VM failed to acquire an IP address. When this occurs, you'll see errors in the console when booting.

You can manually finish the installation process, but you first need to ensure the VM has (1) acquired an IP address and (2) the IP address is accessible by the host computer.

First, check in VMWare Player that has networking set to bridged. Next, type

You should get some ping results

PING ( 56(84) bytes of data.
64 bytes from ( icmp_seq=1 ttl=54 time=4.54 ms
64 bytes from ( icmp_seq=2 ttl=54 time=4.42 ms
If not, it means that the VM is unable to acquire an IP address from a DHCP server on the network. If there is a DHCP serer, you can try

sudo /etc/init.d/networking restart
Try the ping command again. If you are unable to acquire an IP address, check out this resource Ubuntu Networking.

Next, you can manually finish the setup to BigBlueButton with the following commands:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install bigbluebutton
There should be no errors when you type the above three commands.

Next, you'll need to ensure that BigBlueButton is listening to the IP address of your VM. To check your current environment for possible problems that might prevent BigBlueButton from running, type the following command:

bbb-conf -c
You should see output such as

root@bbb-vm-20100102:/etc/asterisk# bbb-conf -c
Current Configuration:

/var/www/bigbluebutton/client/conf/config.xml (bbb-client)
IP for tunnel check:
IP for rtmp (red5):
host for bbb-web interface:

/etc/nginx/sites-available/bigbluebutton (configuration file nginx)
port: 80
client document root: /var/www/bigbluebutton

/var/lib/tomcat6/webapps/bigbluebutton/WEB-INF/classes/ (bbb-web)

/var/lib/tomcat6/webapps/bigbluebutton/demo/bbb_api_conf.jsp (API demos)

/etc/asterisk/bbb_extensions.conf (asterisk)
conference module: konference
If there are any problems (i.e. if bbb-conf detects that red5 isn't running), you'll see a warning message at the bottom.

The output from above showed that BigBlueButton's configuration files were listening to IP address When you type the command, if the IP address shown for your output differs from the IP address of your VM, you can change the IP address that BigBlueButton is using bbb-conf.

For example, if the output from ifconfig shows your VM is listening to IP address, then issue the following command

sudo bbb-conf --setip
If you need to restart BigBlueButton, do the command

bbb-conf --clean
and this will do a clean restart.

I'm still having problems
If you've tried both the above commands and your BigBlueButton server is not working, please post to our bigbluebutton-setup mailing list.

No comments:

Post a Comment