| ... | ... |
@@ -46,19 +46,19 @@ DIST_NAME=${DIST_NAME:-natty}
|
| 46 | 46 |
IMAGE_FNAME=$DIST_NAME.raw |
| 47 | 47 |
|
| 48 | 48 |
# Name of our instance, used by libvirt |
| 49 |
-CONTAINER_NAME=${CONTAINER_NAME:-kvmstack}
|
|
| 49 |
+GUEST_NAME=${GUEST_NAME:-kvmstack}
|
|
| 50 | 50 |
|
| 51 | 51 |
# Original version of built image |
| 52 | 52 |
BASE_IMAGE=$KVMSTACK_DIR/images/$DIST_NAME.raw |
| 53 | 53 |
|
| 54 | 54 |
# Copy of base image, which we pre-install with tasty treats |
| 55 |
-VM_IMAGE=$IMAGES_DIR/$DIST_NAME.$CONTAINER_NAME.raw |
|
| 55 |
+VM_IMAGE=$IMAGES_DIR/$DIST_NAME.$GUEST_NAME.raw |
|
| 56 | 56 |
|
| 57 | 57 |
# Mop up after previous runs |
| 58 |
-virsh destroy $CONTAINER_NAME |
|
| 58 |
+virsh destroy $GUEST_NAME |
|
| 59 | 59 |
|
| 60 | 60 |
# Where this vm is stored |
| 61 |
-VM_DIR=$KVMSTACK_DIR/instances/$CONTAINER_NAME |
|
| 61 |
+VM_DIR=$KVMSTACK_DIR/instances/$GUEST_NAME |
|
| 62 | 62 |
|
| 63 | 63 |
# Create vm dir |
| 64 | 64 |
mkdir -p $VM_DIR |
| ... | ... |
@@ -156,21 +156,20 @@ cd $TOP_DIR |
| 156 | 156 |
|
| 157 | 157 |
# Network configuration variables |
| 158 | 158 |
BRIDGE=${BRIDGE:-br0}
|
| 159 |
-CONTAINER=${CONTAINER:-STACK}
|
|
| 160 |
-CONTAINER_IP=${CONTAINER_IP:-192.168.1.50}
|
|
| 161 |
-CONTAINER_CIDR=${CONTAINER_CIDR:-$CONTAINER_IP/24}
|
|
| 162 |
-CONTAINER_NETMASK=${CONTAINER_NETMASK:-255.255.255.0}
|
|
| 163 |
-CONTAINER_GATEWAY=${CONTAINER_GATEWAY:-192.168.1.1}
|
|
| 164 |
-CONTAINER_MAC=${CONTAINER_MAC:-"02:16:3e:07:69:`printf '%02X' $(echo $CONTAINER_IP | sed "s/.*\.//")`"}
|
|
| 165 |
-CONTAINER_RAM=${CONTAINER_RAM:-1524288}
|
|
| 166 |
-CONTAINER_CORES=${CONTAINER_CORES:-1}
|
|
| 159 |
+GUEST_IP=${GUEST_IP:-192.168.1.50}
|
|
| 160 |
+GUEST_CIDR=${GUEST_CIDR:-$GUEST_IP/24}
|
|
| 161 |
+GUEST_NETMASK=${GUEST_NETMASK:-255.255.255.0}
|
|
| 162 |
+GUEST_GATEWAY=${GUEST_GATEWAY:-192.168.1.1}
|
|
| 163 |
+GUEST_MAC=${GUEST_MAC:-"02:16:3e:07:69:`printf '%02X' $(echo $GUEST_IP | sed "s/.*\.//")`"}
|
|
| 164 |
+GUEST_RAM=${GUEST_RAM:-1524288}
|
|
| 165 |
+GUEST_CORES=${GUEST_CORES:-1}
|
|
| 167 | 166 |
|
| 168 | 167 |
# libvirt.xml configuration |
| 169 | 168 |
LIBVIRT_XML=$VM_DIR/libvirt.xml |
| 170 | 169 |
cat > $LIBVIRT_XML <<EOF |
| 171 | 170 |
<domain type='kvm'> |
| 172 |
- <name>$CONTAINER_NAME</name> |
|
| 173 |
- <memory>$CONTAINER_RAM</memory> |
|
| 171 |
+ <name>$GUEST_NAME</name> |
|
| 172 |
+ <memory>$GUEST_RAM</memory> |
|
| 174 | 173 |
<os> |
| 175 | 174 |
<type>hvm</type> |
| 176 | 175 |
<bootmenu enable='yes'/> |
| ... | ... |
@@ -178,7 +177,7 @@ cat > $LIBVIRT_XML <<EOF |
| 178 | 178 |
<features> |
| 179 | 179 |
<acpi/> |
| 180 | 180 |
</features> |
| 181 |
- <vcpu>$CONTAINER_CORES</vcpu> |
|
| 181 |
+ <vcpu>$GUEST_CORES</vcpu> |
|
| 182 | 182 |
<devices> |
| 183 | 183 |
<disk type='file'> |
| 184 | 184 |
<driver type='qcow2'/> |
| ... | ... |
@@ -188,7 +187,7 @@ cat > $LIBVIRT_XML <<EOF |
| 188 | 188 |
|
| 189 | 189 |
<interface type='bridge'> |
| 190 | 190 |
<source bridge='$BRIDGE'/> |
| 191 |
- <mac address='$CONTAINER_MAC'/> |
|
| 191 |
+ <mac address='$GUEST_MAC'/> |
|
| 192 | 192 |
</interface> |
| 193 | 193 |
|
| 194 | 194 |
<!-- The order is significant here. File must be defined first --> |
| ... | ... |
@@ -250,9 +249,9 @@ iface lo inet loopback |
| 250 | 250 |
|
| 251 | 251 |
auto eth0 |
| 252 | 252 |
iface eth0 inet static |
| 253 |
- address $CONTAINER_IP |
|
| 254 |
- netmask $CONTAINER_NETMASK |
|
| 255 |
- gateway $CONTAINER_GATEWAY |
|
| 253 |
+ address $GUEST_IP |
|
| 254 |
+ netmask $GUEST_NETMASK |
|
| 255 |
+ gateway $GUEST_GATEWAY |
|
| 256 | 256 |
EOF |
| 257 | 257 |
|
| 258 | 258 |
# User configuration for the instance |
| ... | ... |
@@ -27,11 +27,11 @@ CWD=`pwd` |
| 27 | 27 |
|
| 28 | 28 |
# Configurable params |
| 29 | 29 |
BRIDGE=${BRIDGE:-br0}
|
| 30 |
-CONTAINER_NAME=${CONTAINER_NAME:-STACK}
|
|
| 31 |
-CONTAINER_IP=${CONTAINER_IP:-192.168.1.50}
|
|
| 32 |
-CONTAINER_CIDR=${CONTAINER_CIDR:-$CONTAINER_IP/24}
|
|
| 33 |
-CONTAINER_NETMASK=${CONTAINER_NETMASK:-255.255.255.0}
|
|
| 34 |
-CONTAINER_GATEWAY=${CONTAINER_GATEWAY:-192.168.1.1}
|
|
| 30 |
+GUEST_NAME=${GUEST_NAME:-STACK}
|
|
| 31 |
+GUEST_IP=${GUEST_IP:-192.168.1.50}
|
|
| 32 |
+GUEST_CIDR=${GUEST_CIDR:-$GUEST_IP/24}
|
|
| 33 |
+GUEST_NETMASK=${GUEST_NETMASK:-255.255.255.0}
|
|
| 34 |
+GUEST_GATEWAY=${GUEST_GATEWAY:-192.168.1.1}
|
|
| 35 | 35 |
NAMESERVER=${NAMESERVER:-`cat /etc/resolv.conf | grep nameserver | head -1 | cut -d " " -f2`}
|
| 36 | 36 |
COPYENV=${COPYENV:-1}
|
| 37 | 37 |
DEST=${DEST:-/opt/stack}
|
| ... | ... |
@@ -60,22 +60,22 @@ if ! which cgdelete | grep -q cgdelete; then |
| 60 | 60 |
fi |
| 61 | 61 |
|
| 62 | 62 |
# Create lxc configuration |
| 63 |
-LXC_CONF=/tmp/$CONTAINER_NAME.conf |
|
| 63 |
+LXC_CONF=/tmp/$GUEST_NAME.conf |
|
| 64 | 64 |
cat > $LXC_CONF <<EOF |
| 65 | 65 |
lxc.network.type = veth |
| 66 | 66 |
lxc.network.link = $BRIDGE |
| 67 | 67 |
lxc.network.flags = up |
| 68 |
-lxc.network.ipv4 = $CONTAINER_CIDR |
|
| 68 |
+lxc.network.ipv4 = $GUEST_CIDR |
|
| 69 | 69 |
# allow tap/tun devices |
| 70 | 70 |
lxc.cgroup.devices.allow = c 10:200 rwm |
| 71 | 71 |
EOF |
| 72 | 72 |
|
| 73 | 73 |
# Shutdown any existing container |
| 74 |
-lxc-stop -n $CONTAINER_NAME |
|
| 74 |
+lxc-stop -n $GUEST_NAME |
|
| 75 | 75 |
|
| 76 | 76 |
# This kills zombie containers |
| 77 |
-if [ -d /cgroup/$CONTAINER_NAME ]; then |
|
| 78 |
- cgdelete -r cpu,net_cls:$CONTAINER_NAME |
|
| 77 |
+if [ -d /cgroup/$GUEST_NAME ]; then |
|
| 78 |
+ cgdelete -r cpu,net_cls:$GUEST_NAME |
|
| 79 | 79 |
fi |
| 80 | 80 |
|
| 81 | 81 |
# git clone only if directory doesn't exist already. Since ``DEST`` might not |
| ... | ... |
@@ -95,9 +95,9 @@ function git_clone {
|
| 95 | 95 |
# Helper to create the container |
| 96 | 96 |
function create_lxc {
|
| 97 | 97 |
if [ "natty" = "$UBUNTU_VERSION" ]; then |
| 98 |
- lxc-create -n $CONTAINER_NAME -t natty -f $LXC_CONF |
|
| 98 |
+ lxc-create -n $GUEST_NAME -t natty -f $LXC_CONF |
|
| 99 | 99 |
else |
| 100 |
- lxc-create -n $CONTAINER_NAME -t ubuntu -f $LXC_CONF |
|
| 100 |
+ lxc-create -n $GUEST_NAME -t ubuntu -f $LXC_CONF |
|
| 101 | 101 |
fi |
| 102 | 102 |
} |
| 103 | 103 |
|
| ... | ... |
@@ -117,7 +117,7 @@ fi |
| 117 | 117 |
if [ ! -f $CACHEDIR/bootstrapped ]; then |
| 118 | 118 |
# by deleting the container, we force lxc-create to re-bootstrap (lxc is |
| 119 | 119 |
# lazy and doesn't do anything if a container already exists) |
| 120 |
- lxc-destroy -n $CONTAINER_NAME |
|
| 120 |
+ lxc-destroy -n $GUEST_NAME |
|
| 121 | 121 |
# trigger the initial debootstrap |
| 122 | 122 |
create_lxc |
| 123 | 123 |
touch $CACHEDIR/bootstrapped |
| ... | ... |
@@ -153,7 +153,7 @@ if [ "$USE_CURRENT_DEVSTACK" = "1" ]; then |
| 153 | 153 |
fi |
| 154 | 154 |
|
| 155 | 155 |
# Destroy the old container |
| 156 |
-lxc-destroy -n $CONTAINER_NAME |
|
| 156 |
+lxc-destroy -n $GUEST_NAME |
|
| 157 | 157 |
|
| 158 | 158 |
# If this call is to TERMINATE the container then exit |
| 159 | 159 |
if [ "$TERMINATE" = "1" ]; then |
| ... | ... |
@@ -164,7 +164,7 @@ fi |
| 164 | 164 |
create_lxc |
| 165 | 165 |
|
| 166 | 166 |
# Specify where our container rootfs lives |
| 167 |
-ROOTFS=/var/lib/lxc/$CONTAINER_NAME/rootfs/ |
|
| 167 |
+ROOTFS=/var/lib/lxc/$GUEST_NAME/rootfs/ |
|
| 168 | 168 |
|
| 169 | 169 |
# Create a stack user that is a member of the libvirtd group so that stack |
| 170 | 170 |
# is able to interact with libvirt. |
| ... | ... |
@@ -214,9 +214,9 @@ iface lo inet loopback |
| 214 | 214 |
|
| 215 | 215 |
auto eth0 |
| 216 | 216 |
iface eth0 inet static |
| 217 |
- address $CONTAINER_IP |
|
| 218 |
- netmask $CONTAINER_NETMASK |
|
| 219 |
- gateway $CONTAINER_GATEWAY |
|
| 217 |
+ address $GUEST_IP |
|
| 218 |
+ netmask $GUEST_NETMASK |
|
| 219 |
+ gateway $GUEST_GATEWAY |
|
| 220 | 220 |
EOF |
| 221 | 221 |
|
| 222 | 222 |
# Configure the runner |
| ... | ... |
@@ -227,7 +227,7 @@ cat > $RUN_SH <<EOF |
| 227 | 227 |
echo "nameserver $NAMESERVER" | sudo resolvconf -a eth0 |
| 228 | 228 |
# Make there is a default route - needed for natty |
| 229 | 229 |
if ! route | grep -q default; then |
| 230 |
- sudo ip route add default via $CONTAINER_GATEWAY |
|
| 230 |
+ sudo ip route add default via $GUEST_GATEWAY |
|
| 231 | 231 |
fi |
| 232 | 232 |
sleep 1 |
| 233 | 233 |
|
| ... | ... |
@@ -265,7 +265,7 @@ if ! mount | grep -q cgroup; then |
| 265 | 265 |
fi |
| 266 | 266 |
|
| 267 | 267 |
# Start our container |
| 268 |
-lxc-start -d -n $CONTAINER_NAME |
|
| 268 |
+lxc-start -d -n $GUEST_NAME |
|
| 269 | 269 |
|
| 270 | 270 |
if [ "$WAIT_TILL_LAUNCH" = "1" ]; then |
| 271 | 271 |
# Done creating the container, let's tail the log |
| ... | ... |
@@ -18,7 +18,7 @@ COMMON_VARS="MYSQL_HOST=$HEAD_HOST RABBIT_HOST=$HEAD_HOST GLANCE_HOSTPORT=$HEAD_ |
| 18 | 18 |
# Helper to launch containers |
| 19 | 19 |
function run_lxc {
|
| 20 | 20 |
# For some reason container names with periods can cause issues :/ |
| 21 |
- CONTAINER_NAME=$1 CONTAINER_IP=$2 CONTAINER_NETMASK=$NETMASK CONTAINER_GATEWAY=$GATEWAY NAMESERVER=$NAMESERVER TERMINATE=$TERMINATE STACKSH_PARAMS="$COMMON_VARS $3" ./build_lxc.sh |
|
| 21 |
+ GUEST_NAME=$1 GUEST_IP=$2 GUEST_NETMASK=$NETMASK GUEST_GATEWAY=$GATEWAY NAMESERVER=$NAMESERVER TERMINATE=$TERMINATE STACKSH_PARAMS="$COMMON_VARS $3" ./build_lxc.sh |
|
| 22 | 22 |
} |
| 23 | 23 |
|
| 24 | 24 |
# Launch the head node - headnode uses a non-ip domain name, |