VM Setup Notes
The steps on 'starting vm' will only need to be performed the first time when you are installing the operating system or whenever you want to reboot your vm.
Starting VM
The dev VMs are running on munin-vm#.eecs.oregonstate.edu where # is the number of your vm. You will need to use remote desktop to connect to wolf01.eecs.oregonstate.edu. If you are out of campus, you might need to first setup vpn and then connect to wolf. Connect to wolf using your EECS account. Once you are in wolf, go to: VMware Start Menu you'll see a new option for 'vSphere'.
Login server is:
engr-vc.engr.oregonstate.edu
Username:
EECS\username (helen, use your engr acct instead)
Password:
your EECS password
Once you are in vSphere select 'Hosts and Clusters'. Within the VM, you'll be able to select an ISO file to use as your install CD. You can start, stop, etc the VM and install what you need.
The VMs are on a protected chunk of IP address space. Only EECS computers have access to this space. See ConnectingToMuninVM for instructions on how to connect to the vm.
The vms are setup with 32 bit right now. We will be using Debian. Maybe during Winter or Spring Term we can get the VMs switched over to Gentoo so they reflect more the live site. We will be installing Debian because the latest version of Debian stable probably uses a different version of Trac. Download Debian Etch net installer:
# First you need to start or power on your vm. Do a right click or double click the vm. # Then you need to click on the cd looking drive icon in the toolbar. You need to connect the iso of debian etch that you downloaded to your vm. # Do a right click on the vm, and open the console # Now it's time to reboot the vm, by doing a right click and selecting the option # A couple of options should appear. Enter or press the necessary key to boot from the drive.
Installing the OS
This should be a straight forward Debian netinstall.
Setting up the components
At the time of this writing 10/25/2009 installing BeaverSource? is very complicated. The list below are the steps that I used to get beaversource up and running on Debian stable.
Elgg
Aprox Time: 2.5-3 hrs
@todo: do more of a recipe style instructions
- copied the sources.lst config from munin-vm3
- setup sudo
- setup openssh server
- install apache
- update apache configs
- install phppgadmin
- copy /etc/ldap/ssl/Thawte_Server_CA.pem
- create the apache logs directory based on the hostname
- install the package cronolog
- enable the default, ssl, and bs site in apache
- enable the following apache modules: alias.load authz_default.load autoindex.load dav_svn.load headers.load negotiation.load setenvif.load userdir.conf auth_basic.load authz_groupfile.load cgi.load dir.conf ldap.load php5.conf ssl.conf userdir.load authn_file.load authz_host.load dav.load dir.load mime.load php5.load ssl.load authnz_ldap.load authz_user.load dav_svn.conf env.load mod_python.load rewrite.load status.load
- sudo aptitude install python-svn libsvn1 libapache2-svn
- sudo aptitude install python-subversion subversion
- sudo aptitude remove postgresql postgresql-7.4 postgresql-client postgresql-client-7.4 postgresql-pltcl-7.4 postgresql-plpython-7.4 postgresql-plperl-7.4
- sudo aptitude install postgresql-8.1
- need to create a postgresql database make sure that postgres is running on the background first
- sudo -u postgres createuser -D -A -P elgg
- sudo -u postgres createdb -O elgg elgg
- sudo aptitude install php5-pgsql
- sudo aptitude install php-pear
- pear install XML_RPC
- create a directory: /var/www/social and give your user permissions to it
- sudo mkdir /var/www/social
- sudo chown -R username /var/www/social
- create a directory for cache and upload data: in /var/www/elgg-data and give the web server permissions to it
- sudo mkdir /var/www/elgg-data
- sudo chown -R www-data /var/www/elgg-data
- checkout elgg/social in the new dir
- cd /var/www/social
- svn co https://code.oregonstate.edu/svn/admin/elgg/branches/elgg1.5 .
- copy the sso config file into the correct directory engine/ ?
- create the engine/settings.php and .htaccess file in the social/ directory
- go through the elgg installer to create the necessary tables and setup the site
- make sure that the first user that you create in elgg has the same username as your onid account
- enable the following list of plugins ElggPlugins
- modify postgresql config as specified in: http://semweb.weblog.ub.rug.nl/node/61
- setup postgresql and modify the postgresql.conf to make sure that it is listening in localhost
- add the ip address of the new vms to the 'code' sso service. In order to do this contact protagonist (Andy Morgan) in irc (#osu-is)
Trac
- sudo aptitude install trac
- http://beaversource.oregonstate.edu/projects/admin/wiki/CustomTracChanges
- sudo mkdir /data
- sudo mkdir /data/svn
- sudo chown -R www-data /data/svn
- sudo chown -R www-data /usr/share/trac/
- sudo -u postgres psql elgg < trac_ddl.sql
- sudo -u postgres psql elgg < trac_data.sql
- sudo -u postgres createuser -E -P trac_admin
- sudo -u postgres createdb -O trac_admin projects
- psql -h localhost -U trac_admin -W -d projects < trac_ddl.sql
- sudo mkdir /data/trac.tmp
- sudo mkdir /data/trac
- scp trac_index.cs into /data/
- cp trac.ini into /etc/trac
- cpy templates into /data
- jose@munin-vm3:/usr/share/trac$ sudo ln -s /data/trac_templates/ templates
- sudo mkdir /data/master-svn
- sudo mkdir /data/management
- jose@munin-vm3:/data/management$ svn co https://code.oregonstate.edu/svn/admin/management/bs-admin/trunk .
- sudo aptitude install ipython python-apt python-egenix-mxdatetime python-egenix-mxtools python-mysqldb python-newt python-psycopg2 python-selinux python-semanage
- downloaded django latest stable
- installed django using sudo python setup.py install
- svn co of webmanage in /data/
- jose@munin-vm3:/data$ sudo mkdir master-trac
- mkdir /data/master-svn
- cd /data/master-svn
- jose@munin-vm3:/data/master-svn$ ttps://code.oregonstate.edu/svn/admin/management/master-svn/trunk .
- update /data/management/beaversource.ini with correct username & passwd
- sudo aptitude install apg
- sudo apt-get install acl libacl1
- modify the /etc/fstab file
- set acls on /data and on /var/www/social
- the /usr/share/htdocs is created as an svn checkout
- sudo aptitude install libgd2-xpm php5-gd
- webmanagement setup:
- sudo -u postgres createuser -E -P pm_admin
- sudo -u postgres createdb -O pm_admin project_meta
- modify the /etc/php5/apache2/php.ini <- enable the gd extension
- add "10 */4 * * * root env PYTHONPATH=/data/ DJANGO_SETTINGS_MODULE=webmanagement.settings /data/management/cache_and_sync.py 2>&1 | mail -e -s "cache_and_sync.py output" <Your email address>" to your /etc/crontab
NOTE: /usr/share/trac/templates is a symlink to /data/trac_templates
pysvn
Note: You must use -h and -p with psql on bsc.o.e to gain access with different usernames.
modified php.init to enable pgsql extension

