Difference between revisions of "Agile testbed/Cloud/Installation notes"

From PDP/Grid Wiki
Jump to navigationJump to search
(add slave steps)
Line 34: Line 34:
 
* Allow <tt>oneadmin</tt> user to execute cloud-related commands using <tt>sudo</tt>
 
* Allow <tt>oneadmin</tt> user to execute cloud-related commands using <tt>sudo</tt>
 
** Setup <tt>/etc/sudoers</tt> (e.g. using <tt>visudo</tt>)
 
** Setup <tt>/etc/sudoers</tt> (e.g. using <tt>visudo</tt>)
    Cmnd_Alias CLOUD = /usr/sbin/xm, /usr/sbin/xentop, /usr/sbin/lvs, /usr/sbin/lvcreate, /usr/sbin/lvremove, /bin/dd
+
**: <tt>Cmnd_Alias CLOUD = /usr/sbin/xm, /usr/sbin/xentop, /usr/sbin/lvs, /usr/sbin/lvcreate, /usr/sbin/lvremove, /bin/dd</tt>
    oneadmin ALL = NOPASSWD: CLOUD
+
**: <tt>oneadmin ALL = NOPASSWD: CLOUD</tt>
** Disable  
+
** Disable sudo's <tt>requiretty</tt> option
 
** Add <tt>PATH=$PATH:/sbin:/usr/sbin</tt> to <tt>~oneadmin/.bashrc</tt> so that these commands can be found
 
** Add <tt>PATH=$PATH:/sbin:/usr/sbin</tt> to <tt>~oneadmin/.bashrc</tt> so that these commands can be found
 
* Install <tt>ruby</tt> from the [http://rubyworks.rubyforge.org/ RubyWorks] repository (you really need 1.8.6 or higher)
 
* Install <tt>ruby</tt> from the [http://rubyworks.rubyforge.org/ RubyWorks] repository (you really need 1.8.6 or higher)
 
* Enable passwordless ssh login from master for <tt>oneadmin</tt> user
 
* Enable passwordless ssh login from master for <tt>oneadmin</tt> user
 
* Add to master using <tt>onehost</tt> there
 
* Add to master using <tt>onehost</tt> there

Revision as of 15:00, 11 February 2010

This page contains notes on the installation of the agile testbed cloud.

Base install

  • Install CentOS 5 bare-bones
  • Setup LDAP authentication (see this guide)
    • add ldap to /etc/nsswitch.conf's passwd, shadow and group entries
    • configure /etc/ldap.conf according to this
    • make sure the DutchGrid CA certificate is in /etc/openldap/cacerts/16da7552.0 (from rpm or here)
    • update /etc/pam.d/system-auth using command authconfig --enableldap --enableldapauth --update
    • create homedirs for your users as /user/<username> with correct owner, populate authorized_keys
    • disable ssh PasswordAuthentication

Master

  • Install and configure OpenNebula
    • add EPEL repository
    • install packages: ruby ruby-devel gcc gcc-c++ make openssl-devel scons flex bison
    • enable Karan Extras repository and install xmlrpc-c: yum install --enablerepo=kbs-CentOS-Testing xmlrpc-c-devel
    • download and install OpenNebula
      • either manually from source, installing a recent sqlite first (according to manual)
      • or use the spec file and patch
      • and create startup script
  • Setup dynamic DNS
    • install and configure bind
    • create OpenNebula hooks with ddns-update script
  • Setup image repository

OpenNebula documentation Building Clouds presentation Virtual Machines working group

Slaves

  • Enable Xen (see also Xen on CentOS 5)
    • yum install xen kernel-xen
    • make grub boot Xen kernel by default (change default in /boot/grub/menu.lst), add nosmp to kernel cmdline and reboot
  • Allow oneadmin user to execute cloud-related commands using sudo
    • Setup /etc/sudoers (e.g. using visudo)
      Cmnd_Alias CLOUD = /usr/sbin/xm, /usr/sbin/xentop, /usr/sbin/lvs, /usr/sbin/lvcreate, /usr/sbin/lvremove, /bin/dd
      oneadmin ALL = NOPASSWD: CLOUD
    • Disable sudo's requiretty option
    • Add PATH=$PATH:/sbin:/usr/sbin to ~oneadmin/.bashrc so that these commands can be found
  • Install ruby from the RubyWorks repository (you really need 1.8.6 or higher)
  • Enable passwordless ssh login from master for oneadmin user
  • Add to master using onehost there