Difference between revisions of "Agile testbed/Cloud/Installation notes"
From PDP/Grid Wiki
Jump to navigationJump to search (add OpenNebula instructions) |
m |
||
(19 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
* Install CentOS 5 bare-bones | * Install CentOS 5 bare-bones | ||
* Setup LDAP authentication (see [http://www.linux.com/archive/feature/113643?theme=print this guide]) | * Setup LDAP authentication (see [http://www.linux.com/archive/feature/113643?theme=print this guide]) | ||
− | |||
** configure <tt>/etc/ldap.conf</tt> according to [[NDPFDirectoryImplementation#Example_configurations|this]] | ** configure <tt>/etc/ldap.conf</tt> according to [[NDPFDirectoryImplementation#Example_configurations|this]] | ||
+ | ** symlink <tt>/etc/ldap.conf</tt> to <tt>/etc/openldap/ldap.conf</tt> | ||
** make sure the DutchGrid CA certificate is in <tt>/etc/openldap/cacerts/16da7552.0</tt> (from rpm or [http://certificate.nikhef.nl/medium/cacert.pem here]) | ** make sure the DutchGrid CA certificate is in <tt>/etc/openldap/cacerts/16da7552.0</tt> (from rpm or [http://certificate.nikhef.nl/medium/cacert.pem here]) | ||
− | ** | + | ** update <tt>/etc/pam.d/system-auth</tt> using command <tt>authconfig --enableldap --enableldapauth --update</tt> |
− | + | *** this adds <tt>ldap</tt> to <tt>/etc/nsswitch.conf</tt>'s <tt>passwd</tt>, <tt>shadow</tt> and <tt>group</tt> entries | |
− | + | ** create homedirs for your users as <tt>/user/<username></tt> with correct owner, populate authorized_keys | |
− | + | ** disable ssh PasswordAuthentication | |
− | |||
== Master == | == Master == | ||
* Install and configure OpenNebula | * Install and configure OpenNebula | ||
** add [http://fedoraproject.org/wiki/EPEL EPEL] repository | ** add [http://fedoraproject.org/wiki/EPEL EPEL] repository | ||
− | ** install packages: <tt>ruby-devel gcc gcc-c++ make | + | ** install packages: <tt>ruby ruby-devel gcc gcc-c++ make openssl-devel scons flex bison</tt> |
** enable [http://centos.karan.org/ Karan] Extras repository and install xmlrpc-c: <tt>yum install --enablerepo=kbs-CentOS-Testing xmlrpc-c-devel</tt> | ** enable [http://centos.karan.org/ Karan] Extras repository and install xmlrpc-c: <tt>yum install --enablerepo=kbs-CentOS-Testing xmlrpc-c-devel</tt> | ||
− | ** download OpenNebula source, | + | ** download and install OpenNebula |
− | * Setup dynamic DNS | + | *** either manually from source, installing a recent sqlite first (according to manual) |
+ | *** or [http://wiki.centos.org/HowTos/SetupRpmBuildEnvironment use] the [http://svn.opennebula.org/components/packages/trunk/redhat/one-1.4.0.spec spec file] and [http://svn.opennebula.org/components/packages/trunk/redhat/one-1.4.0.patch patch] | ||
+ | *** and create startup script | ||
+ | * Setup dynamic DNS (optional but convenient) | ||
** install and configure bind | ** install and configure bind | ||
** create OpenNebula hooks with <tt>ddns-update</tt> script | ** create OpenNebula hooks with <tt>ddns-update</tt> script | ||
* Setup image repository | * Setup image repository | ||
+ | * Install <tt>mkisofs</tt> for contextualisation | ||
[http://www.opennebula.org/doku.php?id=documentation OpenNebula documentation] [http://www.slideshare.net/rsmontero/building-clouds-one-14 Building Clouds presentation] [[Virtual Machines working group]] | [http://www.opennebula.org/doku.php?id=documentation OpenNebula documentation] [http://www.slideshare.net/rsmontero/building-clouds-one-14 Building Clouds presentation] [[Virtual Machines working group]] | ||
== Slaves == | == Slaves == | ||
+ | * Enable Xen (see also [[Xen on CentOS 5]]) | ||
+ | ** <tt>yum install xen kernel-xen</tt> | ||
+ | ** make grub boot Xen kernel by default (change <tt>default</tt> in <tt>/boot/grub/menu.lst</tt>), add <tt>nosmp</tt> to kernel cmdline and reboot | ||
+ | * 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>) | ||
+ | **: <tt>Cmnd_Alias CLOUD = /usr/sbin/xm, /usr/sbin/xentop, /usr/sbin/lvs, /usr/sbin/lvcreate, /usr/sbin/lvremove, /bin/dd</tt> | ||
+ | **: <tt>oneadmin ALL = NOPASSWD: CLOUD</tt> | ||
+ | ** 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 | ||
+ | * 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 |
− | * | + | * Setup networking |
+ | ** if multiple interfaces: [http://www.debian-administration.org/articles/470 bridge] [http://wiki.xensource.com/xenwiki/XenNetworking setup] [http://www.novell.com/communities/node/4094/xen-network-bridges-explained-with-troubleshooting-notes notes] (with <tt>options netloop nloopbacks=0</tt> in <tt>modprobe.conf</tt>) |
Latest revision as of 14:28, 23 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)
- configure /etc/ldap.conf according to this
- symlink /etc/ldap.conf to /etc/openldap/ldap.conf
- 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
- this adds ldap to /etc/nsswitch.conf's passwd, shadow and group entries
- create homedirs for your users as /user/<username> with correct owner, populate authorized_keys
- disable ssh PasswordAuthentication
Master
- Install and configure OpenNebula
- Setup dynamic DNS (optional but convenient)
- install and configure bind
- create OpenNebula hooks with ddns-update script
- Setup image repository
- Install mkisofs for contextualisation
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
- Setup /etc/sudoers (e.g. using visudo)
- 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
- Setup networking