Révision 17

trunk/shell/create-start-front-end (revision 17)
1
#! /bin/bash
1
#! /bin/bash -x
2 2
#
3
# ST - 2012-03-09
4
#
3 5
# Create and start the front end.
4 6
#
5 7
# Get the directory of the script.
......
22 24
fi
23 25

  
24 26
# Create the VM system disk.
25
COMPUTE_NODE_SYSTEM_DISK="${SYSTEM_DISK_CLONE_PREFIX}${NODE_NUMBER_STRING}${SYSTEM_DISK_CLONE_POSTFIX}"
26
lvcreate -L$FRONT_END_SYSTEM_DISK_SIZE -s \
27
lvcreate -L$FRONT_END_SYSTEM_DISK_SIZE \
27 28
         -n  $FRONT_END_SYSTEM_DISK \
28
         $FRONT_END_SYSTEM_LOGICAL_VOLUME
29
         $FRONT_END_SYSTEM_VOLUME_GROUP
29 30
# Create a File System on the VM system disk.
30 31
mkfs -t $FRONT_END_SYSTEM_DISK_FILE_SYSTEM \
31
        $FRONT_END_SYSTEM_LOGICAL_VOLUME/$FRONT_END_SYSTEM_DISK
32
        $FRONT_END_SYSTEM_VOLUME_GROUP_DEVICE/$FRONT_END_SYSTEM_DISK
32 33
# If necessary, create the swap volume for the front end.
33 34
if [ $FRONT_END_SWAP_DISK_SIZE != $CONST_NULL_DISK_SIZE ]; then
34 35
  lvcreate -L $FRONT_END_SWAP_DISK_SIZE \
35 36
           -n $FRONT_END_SWAP_DISK \
36
           $FRONT_END_SYSTEM_LOGICAL_VOLUME
37
  mkswap $FRONT_END_SYSTEM_LOGICAL_VOLUME/$FRONT_END_SWAP_DISK
37
           $FRONT_END_SWAP_VOLUME_GROUP
38
  mkswap $FRONT_END_SWAP_VOLUME_GROUP_DEVICE/$FRONT_END_SWAP_DISK
38 39
fi
39 40
# Mount the system disk to copy all the specific files.
40 41
if [ ! -d $FRONT_END_SYSTEM_DISK_MOUNT_POINT ]; then
41 42
  mkdir $FRONT_END_SYSTEM_DISK_MOUNT_POINT
42 43
fi
43
mount $FRONT_END_SYSTEM_LOGICAL_VOLUME/$FRONT_END_SYSTEM_DISK \
44
mount $FRONT_END_SYSTEM_VOLUME_GROUP_DEVICE/$FRONT_END_SYSTEM_DISK \
44 45
      $FRONT_END_SYSTEM_DISK_MOUNT_POINT
45 46
#
46 47
# Configure the specific files from templates
47 48
#
48 49
# /etc/network/interfaces
50
# The first interface is DHCP configured.
49 51
CURRENT_PATH=/etc/network
50 52
cp templates$CURRENT_PATH/$FRONT_END_INTERFACES_TEMPLATE \
51 53
   $FRONT_END_SYSTEM_DISK_MOUNT_POINT/$CURRENT_PATH
52 54
ADDRESS="$COMPUTE_NODE_STATIC_NETWORK_PREFIX.$FRONT_END_STATIC_NETWORK_POSTFIX"
53 55
rpl __STATIC_ADDRESS__ $ADDRESS  \
54
    ${FRONT_END_SYSTEM_DISK_MOUNT_POINT/$CURRENT_PATH/interfaces
56
    $FRONT_END_SYSTEM_DISK_MOUNT_POINT/$CURRENT_PATH/interfaces
55 57
# /etc/hostname
56 58
CURRENT_PATH=/etc
57 59
echo $CURRENT_HOST_NAME > "${COMPUTE_NODE_DISK_MOUNT_POINT}${CURRENT_PATH}/hostname"
58 60
# /etc/hosts
59 61
CURRENT_PATH=/etc
60
CURRENT_HOST_IP="${COMPUTE_NODE_STATIC_NETWORK_PREFIX}.${NODE_NUMBER}"
62
CURRENT_HOST_IP="${COMPUTE_NODE_STATIC_NETWORK_PREFIX}.${FRONT_END_STATIC_NETWORK_POSTFIX}"
61 63
cp templates$CURRENT_PATH/hosts \
62
   $COMPUTE_NODE_DISK_MOUNT_POINT/$CURRENT_PATH
64
   $FRONT_END_SYSTEM_DISK_MOUNT_POINT/$CURRENT_PATH
63 65
rpl __COMPUTE_NODE_IP__ $CURRENT_HOST_IP \
64
    ${COMPUTE_NODE_DISK_MOUNT_POINT}${CURRENT_PATH}/hosts
66
    ${FRONT_END_SYSTEM_DISK_MOUNT_POINT}${CURRENT_PATH}/hosts
65 67
rpl __COMPUTE_NODE_NAME__ $CURRENT_HOST_NAME \
66
    ${COMPUTE_NODE_DISK_MOUNT_POINT}${CURRENT_PATH}/hosts
68
    ${FRONT_END_SYSTEM_DISK_MOUNT_POINT}${CURRENT_PATH}/hosts
67 69
# /etc/resolv.conf
68 70
CURRENT_PATH=/etc
69 71
cp $TEMPLATES_DIR$CURRENT_PATH/resolv.conf \
70
   ${COMPUTE_NODE_DISK_MOUNT_POINT}${CURRENT_PATH}/resolv.conf
72
   ${FRONT_END_SYSTEM_DISK_MOUNT_POINT}${CURRENT_PATH}/resolv.conf
71 73
rpl __CLUSTER_DOMAIN_NAME__ "${CLUSTER_DOMAIN_NAME}." \
72
   ${COMPUTE_NODE_DISK_MOUNT_POINT}${CURRENT_PATH}/resolv.conf
74
   ${FRONT_END_SYSTEM_DISK_MOUNT_POINT}${CURRENT_PATH}/resolv.conf
73 75
rpl __FRONT_END_STATIC_ADDRESS__ "${CLUSTER_STATIC_NETWORK_PREFIX}.$FRONT_END_STATIC_NETWORK_POSTFIX" \
74
   ${COMPUTE_NODE_DISK_MOUNT_POINT}${CURRENT_PATH}/resolv.conf
76
   ${FRONT_END_SYSTEM_DISK_MOUNT_POINT}${CURRENT_PATH}/resolv.conf
77
exit 0
75 78
#
76 79
# Get the MAC address
77 80
#
......
146 149
  do
147 150
    xm vcpu-pin $CURRENT_HOST_NAME $VCPU_NUM $i
148 151
    VCPU_NUM=$((VCPU_NUM + 1))
149
done
152
done
trunk/shell/c-i-a-b.common (revision 17)
1
# ST - 2012-03-09
1 2
# Constants that no one should not change.
2 3
CONST_NULL_DISK_SIZE=0G
3 4
#
......
21 22
DHCP_HOSTSFILE_BASENAME=dhcp-hostsfile
22 23
FRONT_END_HOME_DISK_SIZE=512G
23 24
FRONT_END_INTERFACES_TEMPLATE=interfaces.front-end
24
FRONT_END_HOME_LOGICAL_VOLUME=/dev/vg_slow
25
FRONT_END_HOME_VOLUME_GROUP=vg_slow
26
FRONT_END_HOME_VOLUME_GROUP_DEVICE="/dev/$FRONT_END_HOME_VOLUME_GROUP"
25 27
FRONT_END_NAME="frontend"
26 28
FRONT_END_STATIC_NETWORK_POSTFIX=251
27 29
FRONT_END_SWAP_DISK="frontend-swap"
28
FRONT_END_SWAP_DISK_SIZE=$CONST_NULL_DISK_SIZE # 0G means no swap disk.
30
#FRONT_END_SWAP_DISK_SIZE=$CONST_NULL_DISK_SIZE # 0G means no swap disk.
31
FRONT_END_SWAP_DISK_SIZE=1G # 0G means no swap disk.
29 32
FRONT_END_SYSTEM_DISK="frontend-system-disk"
30 33
FRONT_END_SYSTEM_DISK_SIZE=46G
31 34
FRONT_END_SYSTEM_DISK_FILE_SYSTEM=ext3
32 35
FRONT_END_SYSTEM_DISK_MOUNT_POINT=/mnt/frontend-system-disk
33
FRONT_END_SYSTEM_LOGICAL_VOLUME=/dev/vg_fast
36
FRONT_END_SYSTEM_VOLUME_GROUP=vg_fast
37
FRONT_END_SYSTEM_VOLUME_GROUP_DEVICE="/dev/$FRONT_END_SYSTEM_VOLUME_GROUP"
38
FRONT_END_SWAP_VOLUME_GROUP=vg_fast
39
FRONT_END_SWAP_VOLUME_GROUP_DEVICE="/dev/$FRONT_END_SWAP_VOLUME_GROUP"
34 40
FRONT_END_VCPUS=3
35 41
HOSTS_FILE_BASENAME=hosts
36 42
SWAP_DISK_LOGICAL_VOLUME=/dev/vg_fast
trunk/shell/templates/etc/xen/front-end.cfg (revision 17)
1
#
2
# Template file for the Xen instance compute-node.
3
#
4

  
5
#
6
#  Kernel + memory size
7
#
8
kernel      = '__COMPUTE_NODE_KERNEL__'
9
ramdisk     = '__COMPUTE_NODE_RAMDISK__'
10

  
11
memory      = '__COMPUTE_NODE_MEMORY__'
12

  
13
# (V)CPU management
14

  
15
vcpus       = '__COMPUTE_NODE_VCPUS__'
16
cpus        = '__COMPUTE_NODE_CPUS__'
17

  
18
#
19
#  Disk device(s).
20
#
21
root        = '/dev/xvda2 ro'
22
disk        = [
23
                  'phy:__COMPUTE_NODE_SYSTEM_DISK__,xvda2,w',
24
                  'phy:__COMPUTE_NODE_SWAP_DISK__,xvda1,w',
25
              ]
26

  
27

  
28
#
29
#  Physical volumes
30
#
31

  
32

  
33
#
34
#  Hostname
35
#
36
name        = '__COMPUTE_NODE_HOST_NAME__'
37

  
38
#
39
#  Networking
40
#
41
vif         = [ 'ip=__COMPUTE_NODE_IP__,mac=__COMPUTE_NODE_MAC__,bridge=__COMPUTE_NODE_BRIDGE__', ]
42

  
43
#
44
#  Behaviour
45
#
46
on_poweroff = 'destroy'
47
on_reboot   = 'restart'
48
on_crash    = 'restart'
49

  
50

  
51

  

Formats disponibles : Unified diff