Version 2 (modified by 10 years ago) (diff) | ,
---|
Installing Emulab Client Tools on an ExoGENI image
- Note: these instructions assume a Redhat-based OS. Replace the relevant commands with your OS-specific versions.
- Some notes included for Debian-based systems.
- Boot a VM on ExoGENI.
- Clean up VM
- /etc/init.d/neuca stop
- chkconfig neuca off (debian: update-rc.d -f neuca remove)
- remove public keys (from at least root)
- remove users if desired
- cleanup sudoers
- Remove users added by ExoGENI
- cleanup hostname
- cleanup anything the post boot script did
- Modify the VM as you want.
- Install Emulab tools
- yum install perl dhclient openssh mysql bison byacc flex boost git mysql-server mysql-devel mysql-embedded-devel mysql-proxy-devel libtool perl-Time-HiRes yum install python-devel httpd man httpd-devel dos2unix swig swig-devel boost-devel pcap-devel libpcap-devel mysql-devel db4-devel db4 libdb-devel compat-db tcsh
- Install pubsub
- wget http://www.emulab.net/downloads/pubsub-0.98.tar.gz
- tar -zxvf pubsub-0.98.tar.gz
- cd pubsub-0.98
- ./configure
- gmake client (debian: make is fine)
- gmake install-client
- Install client side tools
- git clone git://git-public.flux.utah.edu/emulab-devel.git
- cd emulab-devel
- git submodule init
- git submodule update
- mkdir emulab-objects
- cd emulab-objects
- copy the defs.txt file to your VM (attached to this page)
- ../emulab-devel/configure --with-TBDEFS=../defs.txt
- gmake client
- gmake client-install
- Note: For Debian, modify utils/osstuff.sh to include a case for the distribution. The target can be the same as the existing Ubuntu11.
- Fix resov.conf and hostname
- edit /etc/sysconfig/network to include:
HOSTNAME=localhost.localdomain PEERDNS=yes
- edit /etc/sysconfig/network to include:
- Add /users
- Allow sudo to run without a tty. Add the following to the sudoers file: "Defaults !requiretty”
- Create a file called /etc/emulab/genvmtype and stick in one line that says “xen”
- edit /usr/local/etc/emulab/rc/rc.mounts and change this line:
"if (REMOTE() || JAILED() || (GENVNODE() && !INXENVM()) || PLAB())” to "if (1);"
- edit /usr/local/etc/emulab/rc/rc.mounts and change this line:
- setup for ec2 import
- yum install ruby zip unzip sudo e2fsprogs rsync
- Make user the “EC2 user@node" is in the shudders file (i.e. pruth@node )
- Copy emulab keys into ExoGENI instance
- cat key to >> .ssh/authorized_keys”