| 1 | Installing a Scripts guest on a Xen host | 
|---|
| 2 | ---------------------------------------- | 
|---|
| 3 |  | 
|---|
| 4 | 1. Create the LVS partitions that the Scripts guest will use. | 
|---|
| 5 |  | 
|---|
| 6 | Our classic setup is 50GB for the main, root partition (/) and | 
|---|
| 7 | 10GB for our swap.  You can consult what things look like | 
|---|
| 8 | by using `lvdisplay`.  Our naming convention is server-name-root | 
|---|
| 9 | and server-name-swap. | 
|---|
| 10 |  | 
|---|
| 11 | Creating new LVS partitions is done with `lvcreate`: | 
|---|
| 12 |  | 
|---|
| 13 | # Example values: | 
|---|
| 14 | # SERVERNAME=whole-enchilada | 
|---|
| 15 | # HOSTNAME=jay-leno | 
|---|
| 16 | lvcreate -n $SERVERNAME-root $HOSTNAME --size 50.00G | 
|---|
| 17 | lvcreate -n $SERVERNAME-swap $HOSTNAME --size 10.00G | 
|---|
| 18 |  | 
|---|
| 19 | 2. Acquire the network installation media for Fedora. | 
|---|
| 20 |  | 
|---|
| 21 | Normally, you would download an ISO and kick off an installation | 
|---|
| 22 | by burning it to a CD and booting off of that.  Since we would like | 
|---|
| 23 | to make as minimal a Fedora install as possible, we use a different | 
|---|
| 24 | method. [XXX: Why do we actually do it this way?  It seems kind | 
|---|
| 25 | of convoluted] | 
|---|
| 26 |  | 
|---|
| 27 | First, we need to create an appropriate installation directory, | 
|---|
| 28 | which contains the necessary kernel images and bootstrapping code. | 
|---|
| 29 | Navigate to a Fedora mirrors website, and find the correct release | 
|---|
| 30 | from the linux/releases directory, then grab the contents of | 
|---|
| 31 | Fedora/x86_64/os/isolinux.  For example, getting the Fedora 13 installer | 
|---|
| 32 | from mirrors.mit.edu would be: | 
|---|
| 33 |  | 
|---|
| 34 | mkdir ~/f13-install | 
|---|
| 35 | cd ~/f13-install | 
|---|
| 36 | wget -r -nd ftp://mirrors.mit.edu/fedora/linux/releases/13/Fedora/x86_64/os/isolinux/ | 
|---|
| 37 |  | 
|---|
| 38 | You can then spin up a Xen image for installation with: | 
|---|
| 39 |  | 
|---|
| 40 | xm create scripts-server machine_name=$HOSTNAME install=f13 | 
|---|
| 41 |  | 
|---|
| 42 | Note that the -install suffix was dropped.  Get a console with `xm | 
|---|
| 43 | console`. | 
|---|
| 44 |  | 
|---|
| 45 | 3. Tell Fedora where to get the real installer. | 
|---|
| 46 |  | 
|---|
| 47 | You will now be in a curses installer interface.  Since you are doing | 
|---|
| 48 | a network install, you will need to configure your network and specify | 
|---|
| 49 | the URL to install.  Find the static hostname that you are planning | 
|---|
| 50 | to install to and get its information with: | 
|---|
| 51 |  | 
|---|
| 52 | stella $HOSTNAME | 
|---|
| 53 |  | 
|---|
| 54 | Manually configure its IP, disabling IPv6 for now [XXX I don't know how | 
|---|
| 55 | to configure that].  The network mask is 16, and you can check | 
|---|
| 56 | '/etc/resolv.conf' if you don't remember what MIT's DNS servers are. | 
|---|
| 57 |  | 
|---|
| 58 | It will then ask you for an installation image.  Continuing with our | 
|---|
| 59 | F13 mirrors.mit.edu, the URL will look something like: | 
|---|
| 60 |  | 
|---|
| 61 | ftp://mirrors.mit.edu/fedora/linux/releases/13/Fedora/x86_64/os | 
|---|
| 62 |  | 
|---|
| 63 | 4. Use VNC | 
|---|
| 64 |  | 
|---|
| 65 | At this point, Fedora will ask you whether or not you want to use VNC | 
|---|
| 66 | to continue the installation.  Because Scripts has an unusual disk | 
|---|
| 67 | image setup, you will want to answer yes. [XXX: Unfortunately, this puts | 
|---|
| 68 | the VNC session on MITnet, so make sure you use a good password, and | 
|---|
| 69 | we should figure out to make it not do that].  Grab your favorite | 
|---|
| 70 | VNC client and login to $HOSTNAME:1 | 
|---|
| 71 |  | 
|---|
| 72 | 5. Installation in VNC | 
|---|
| 73 |  | 
|---|
| 74 | 5.1. Disks to use | 
|---|
| 75 |  | 
|---|
| 76 | We don't have any exotic devices (we did that at the host level, | 
|---|
| 77 | recall), so you can use normal configuration.  The scripts-server Xen | 
|---|
| 78 | configuration will have automatically selected the LVS partitions you | 
|---|
| 79 | created in Step 1, and you want both of them. | 
|---|
| 80 |  | 
|---|
| 81 | 5.2. Host | 
|---|
| 82 |  | 
|---|
| 83 | The default hostname is all caps: we use lower-case, so lower-case the | 
|---|
| 84 | name before proceeding. | 
|---|
| 85 |  | 
|---|
| 86 | 5.3. Timezone | 
|---|
| 87 |  | 
|---|
| 88 | Self explanatory | 
|---|
| 89 |  | 
|---|
| 90 | 5.4. Root password | 
|---|
| 91 |  | 
|---|
| 92 | Use Scripts root password for a real install, and fake password | 
|---|
| 93 | otherwise. [XXX: Insecure over VNC? Argh!] | 
|---|
| 94 |  | 
|---|
| 95 | 5.5 Formatting the disks | 
|---|
| 96 |  | 
|---|
| 97 | You can find out what our existing setup looks like by consulting | 
|---|
| 98 | '/etc/fstab'. | 
|---|
| 99 |  | 
|---|
| 100 | Select Custom, and select both disks for formatting.  Setup the larger | 
|---|
| 101 | disk as the boot partition.  Configure the partitions as follows: | 
|---|
| 102 |  | 
|---|
| 103 | 50GB | 
|---|
| 104 | Standard Partition | 
|---|
| 105 | Mount Point: / | 
|---|
| 106 | File System Type: ext3 (the default as of F13 is ext4, which | 
|---|
| 107 | cannot be mounted by the hosts and thus should not be used!) | 
|---|
| 108 | Additional Size Options: Fill to maximum allowable size (the | 
|---|
| 109 | Size parameter will not do anything in that case) | 
|---|
| 110 | Force to be primary partition | 
|---|
| 111 | 10GB | 
|---|
| 112 | Standard Partition | 
|---|
| 113 | File System Type: swap | 
|---|
| 114 | Additional Size Options: Fill to maximum allowable size | 
|---|
| 115 |  | 
|---|
| 116 | 5.6 Bootloader | 
|---|
| 117 |  | 
|---|
| 118 | Defaults are fine. | 
|---|
| 119 |  | 
|---|
| 120 | 5.7 Installation | 
|---|
| 121 |  | 
|---|
| 122 | Do a minimal install (we will proceed to install the packages we care | 
|---|
| 123 | about), and add the normal F13 repository (testing and updates will be | 
|---|
| 124 | added when we bring in our /etc configuration).  Similarly, we will | 
|---|
| 125 | install the software we want later, so there is no need to do that now. | 
|---|
| 126 |  | 
|---|
| 127 | 5.8 Reboot | 
|---|
| 128 |  | 
|---|
| 129 | When the install finishes, it will ask you to reboot.  This is fine, but | 
|---|
| 130 | since we created the VM image with install, upon reboot it will ask us | 
|---|
| 131 | to install again.  Let it reboot, then destroy the virtual machine. | 
|---|
| 132 |  | 
|---|
| 133 | xm destroy $SERVERNAME | 
|---|
| 134 |  | 
|---|
| 135 | 6. New World Order | 
|---|
| 136 |  | 
|---|
| 137 | Start up the VM without the install flag: | 
|---|
| 138 |  | 
|---|
| 139 | xm create scripts-server machine_name=$SERVERNAME | 
|---|
| 140 |  | 
|---|
| 141 | Use xm console to get a terminal, and proceed with the official install | 
|---|
| 142 | instructions. | 
|---|
| 143 |  | 
|---|
| 144 | xm console $SERVERNAME | 
|---|