Révision 23
trunk/shell/create-start-front-end (revision 23) | ||
---|---|---|
23 | 23 |
exit 1 |
24 | 24 |
fi |
25 | 25 |
|
26 |
# Create the VM system disk.
|
|
26 |
# Create the front-end system disk.
|
|
27 | 27 |
lvcreate -L$FRONT_END_SYSTEM_DISK_SIZE \ |
28 | 28 |
-n $FRONT_END_SYSTEM_DISK \ |
29 | 29 |
$FRONT_END_SYSTEM_VOLUME_GROUP |
30 |
# Create a File System on the VM system disk.
|
|
30 |
# Create a File System on the front-end system disk.
|
|
31 | 31 |
mkfs -t $FRONT_END_SYSTEM_DISK_FILE_SYSTEM \ |
32 | 32 |
$FRONT_END_SYSTEM_VOLUME_GROUP_DEVICE/$FRONT_END_SYSTEM_DISK |
33 | 33 |
# If necessary, create the swap volume for the front end. |
... | ... | |
37 | 37 |
$FRONT_END_SWAP_VOLUME_GROUP |
38 | 38 |
mkswap $FRONT_END_SWAP_VOLUME_GROUP_DEVICE/$FRONT_END_SWAP_DISK |
39 | 39 |
fi |
40 |
# Create the VM home disk. |
|
41 |
lvcreate -L$FRONT_END_HOME_DISK_SIZE \ |
|
42 |
-n $FRONT_END_HOME_DISK \ |
|
43 |
$FRONT_END_HOME_VOLUME_GROUP |
|
44 |
# Create a File System on the front-end system disk. |
|
45 |
mkfs -t $FRONT_END_HOME_DISK_FILE_SYSTEM \ |
|
46 |
$FRONT_END_HOME_VOLUME_GROUP_DEVICE/$FRONT_END_HOME_DISK |
|
40 | 47 |
# Mount the system disk to copy all the specific files. |
41 | 48 |
if [ ! -d $FRONT_END_SYSTEM_DISK_MOUNT_POINT ]; then |
42 | 49 |
mkdir $FRONT_END_SYSTEM_DISK_MOUNT_POINT |
... | ... | |
53 | 60 |
# Create the Xen configuration file from a template |
54 | 61 |
# |
55 | 62 |
CURRENT_PATH=/etc/xen |
56 |
cp templates$CURRENT_PATH/front-end.cfg \
|
|
57 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg
|
|
58 |
rpl Template Configuration $SCRIPT_PATH/$CURRENT_HOST_NAME.cfg
|
|
63 |
cp templates$CURRENT_PATH/$CONST_FRONT_END_TEMPLATE_NAME \
|
|
64 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg
|
|
65 |
rpl Template Configuration $CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg
|
|
59 | 66 |
rpl __FRONT_END_KERNEL__ $COMPUTE_NODE_KERNEL \ |
60 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg
|
|
61 |
rpl __FRONT_END_RAMDISK__ $COMPUTE_NODE_RAMDISK \
|
|
62 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg
|
|
63 |
rpl __FRONT_END_MEMORY__ $COMPUTE_NODE_MEMORY \
|
|
64 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg
|
|
65 |
rpl __FRONT_END_VCPUS_NUM__ $COMPUTE_NODE_VCPUS_NUM \
|
|
66 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg
|
|
67 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg
|
|
68 |
rpl __FRONT_END_RAMDISK__ $FRONT_END_RAMDISK \
|
|
69 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg
|
|
70 |
rpl __FRONT_END_MEMORY__ $FRONT_END_MEMORY \
|
|
71 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg
|
|
72 |
rpl __FRONT_END_VCPUS_NUM__ $FRONT_END_VCPUS_NUM \
|
|
73 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg
|
|
67 | 74 |
CPUS_LIST=$FRONT_END_CPUS_LIST |
68 | 75 |
CPUS="" |
69 | 76 |
for i in $CPUS_LIST |
... | ... | |
76 | 83 |
fi |
77 | 84 |
done |
78 | 85 |
rpl __FRONT_END_CPUS__ $CPUS \ |
79 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg
|
|
86 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg
|
|
80 | 87 |
rpl __FRONT_END_SYSTEM_DISK__ $FRONT_END_SYSTEM_VOLUME_GROUP_DEVICE/$FRONT_END_SYSTEM_DISK \ |
81 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg
|
|
82 |
rpl __FRONT_END_HOME_DISK__ $FRONT_END_SYSTEM_VOLUME_GROUP_DEVICE/$FRONT_END_SYSTEM_DISK \
|
|
83 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg
|
|
88 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg
|
|
89 |
rpl __FRONT_END_HOME_DISK__ $FRONT_END_HOME_VOLUME_GROUP_DEVICE/$FRONT_END_HOME_DISK \
|
|
90 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg
|
|
84 | 91 |
if [ "x$FRONT_END_SWAP_DISK_SIZE" != "x$CONST_NULL_DISK_SIZE" ] ; then |
85 | 92 |
FRONT_END_SWAP_DISK_STANZA="'phy:$FRONT_END_SWAP_VOLUME_GROUP_DEVICE/${FRONT_END_SWAP_DISK},xvda3,w'," |
86 | 93 |
rpl __FRONT_END_SWAP_DISK__ $FRONT_END_SWAP_DISK_STANZA \ |
87 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg |
|
88 |
rpl __FRONT_END_NOSWAP__ "" \ |
|
89 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg |
|
94 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg |
|
95 |
# Comment out the noswap stanza. |
|
96 |
rpl __FRONT_END_NOSWAP__ "#$CLUSTER_NOSWAP" \ |
|
97 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg |
|
90 | 98 |
else |
99 |
echo y | rpl -f __FRONT_END_SWAP_DISK__ "" \ |
|
100 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg |
|
91 | 101 |
rpl __FRONT_END_NOSWAP__ $CLUSTER_NOSWAP \ |
92 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg
|
|
102 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg
|
|
93 | 103 |
fi |
94 | 104 |
rpl __FRONT_END_HOST_NAME__ $CURRENT_HOST_NAME \ |
95 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg
|
|
105 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg
|
|
96 | 106 |
|
107 |
VIF_STANZA=$CONST_XEN_VIF_STANZA_PREFIX |
|
108 |
EXTERNAL_MAC="${CONST_XEN_MAC_PREFIX}${FRONT_END_EXTERNAL_MAC_ADDRESS}" |
|
109 |
INTERNAL_MAC="${CONST_XEN_MAC_PREFIX}${FRONT_END_CLUSTER_MAC_ADDRESS}" |
|
110 |
INTERNAL_BRIDGE="{$CONST_XEN_BRIDGE_PREFIX}${CLUSTER_BRIDGE_NAME}" |
|
111 |
INTERNAL_IP=$FRONT_END_CLUSTER_STATIC_IP |
|
97 | 112 |
if [ $CLUSTER_EXTERNAL_ADDRESSES_BY_DHCP -eq 1 ] ;then |
113 |
rpl __XEN_DHCP_STANZA__ "$CONST_XEN_DHCP_STANZA" \ |
|
114 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg |
|
115 |
VIF_STANZA="${VIF_STANZA}${EXTERNAL_MAC}','${INTERNAL_IP},${INTERNAL_MAC},${INTERNAL_BRIDGE}${CONST_XEN_VIF_STANZA_POSTFIX}" |
|
98 | 116 |
else |
99 |
fi |
|
100 |
rpl __FRONT_END_IP_EXTERNAL__ $ADDRESS \ |
|
101 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg |
|
102 |
rpl __FRONT_END_IP_CLUSTER__ $ADDRESS \ |
|
103 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg |
|
104 |
rpl __FRONT_END_CLUSTER_MAC_ADDRESS__ $__FRONT_END_CLUSTER_MAC_ADDRESS__ \ |
|
105 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg |
|
106 |
rpl __FRONT_END_CLUSTER_MAC_ADDRESS__ $__FRONT_END_CLUSTER_MAC_ADDRESS__ \ |
|
107 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg |
|
108 |
rpl __CLUSTER_BRIDGE_NAME__ $CLUSTER_BRIDGE_NAME \ |
|
109 |
$SCRIPT_PATH/$CURRENT_HOST_NAME.cfg |
|
110 |
|
|
117 |
# Comment out the DHCP_STANZA. |
|
118 |
rpl __XEN_DHCP_STANZA__ "#$CONST_XEN_DHCP_STANZA" \ |
|
119 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg |
|
120 |
VIF_STANZA="${VIF_STANZA}${EXTERNAL_IP},${EXTERNAL_MAC},'${INTERNAL_IP},${INTERNAL_MAC},${INTERNAL_BRIDGE}${CONST_XEN_VIF_STANZA_POSTFIX}" |
|
121 |
fi |
|
122 |
# In any case, write the VIF_STANZA |
|
123 |
rpl __VIF_STANZA__ $VIF_STANZA \ |
|
124 |
$CONST_XEN_CONFIG_DIR/$CURRENT_HOST_NAME.cfg |
|
111 | 125 |
# |
126 |
exit 0 |
|
127 |
# |
|
112 | 128 |
# Umount the compute node system disk |
113 | 129 |
# |
114 |
umount $COMPUTE_NODE_DISK_MOUNT_POINT
|
|
130 |
umount $FRONT_END_SYSTEM_DISK_MOUNT_POINT
|
|
115 | 131 |
# |
116 | 132 |
# Start the virtual machine |
117 | 133 |
# |
trunk/shell/c-i-a-b.common (revision 23) | ||
---|---|---|
2 | 2 |
# Constants that no one should not change. |
3 | 3 |
CONST_NULL_DISK_SIZE=0G # For several configuration files. |
4 | 4 |
CONST_NO_DHCP="NO_DHCP" |
5 |
CONST_FRONT_END_TEMPLATE_NAME="front-end.cfg" |
|
5 | 6 |
# |
6 | 7 |
# Constant that may change with another Xen version. |
7 |
CONST_XEN_DHCP_STANZA="dhcp= ='dhcp'" |
|
8 |
CONST_XEN_BRIDGE_PREFIX="bridge=" |
|
9 |
CONST_XEN_DHCP_STANZA="dhcp ='dhcp'" |
|
10 |
CONST_XEN_CONFIG_DIR="/etc/xen" |
|
8 | 11 |
CONST_XEN_DOM0_CPUS_ALL="(dom0-cpus 0)" |
9 | 12 |
CONST_XEN_DOM0_NAME=Domain-0 |
13 |
CONST_XEN_IP_PREFIX="ip=" |
|
14 |
CONST_XEN_MAC_PREFIX="mac=" |
|
10 | 15 |
CONST_XEN_NOSWAP="noswap = 1" # For /etc/xen-tools/xen-tools.conf. |
11 | 16 |
CONST_XEN_NETWORK_SCRIPT_KEYWORD=network-script # For /etc/xen/xend-config.sxp. |
17 |
CONST_XEN_VIF_STANZA_POSTFIX="' ]" |
|
18 |
CONST_XEN_VIF_STANZA_PREFIX="vif = [ '" |
|
12 | 19 |
# |
13 | 20 |
# Common user defined configuration variables |
14 | 21 |
# |
... | ... | |
17 | 24 |
CLUSTER_BRIDGE_SCRIPT=network-bridge-internal |
18 | 25 |
CLUSTER_BRIDGE_STANZA="($CONST_NETWORK_SCRIPT_KEYWORD $CLUSTER_BRIDGE_SCRIPT)" |
19 | 26 |
CLUSTER_EXTERNAL_ADDRESSES_BY_DHCP=1 |
27 |
CLUSTER_EXTERNAL_MAC_PREFIX="00:16:3E:33:A6:" |
|
20 | 28 |
CLUSTER_IMAGE=full |
21 | 29 |
CLUSTER_DOMAIN_NAME=ciab.lip.ens-lyon.fr |
22 | 30 |
CLUSTER_NOSWAP="$CONST_XEN_NOSWAP" |
31 |
CLUSTER_STATIC_EXTERNAL_PREFIX="140.77.15" |
|
23 | 32 |
CLUSTER_STATIC_NETWORK_PREFIX="192.168.1" |
24 | 33 |
CLUSTER_SWAP_SIZE=$CONST_NULL_DISK_SIZE |
34 |
# |
|
25 | 35 |
COMPUTE_NODE_BRIDGE=$CLUSTER_BRIDGE_NAME |
26 | 36 |
COMPUTE_NODE_CPUS_FILE=compute-nodes-cpus |
27 | 37 |
COMPUTE_NODE_DISK_MOUNT_POINT=/mnt/compute-node-system-disk |
28 | 38 |
COMPUTE_NODE_INTERFACES_TEMPLATE=interfaces.compute-node |
29 | 39 |
COMPUTE_NODE_KERNEL=/boot/vmlinuz-`uname -r` |
30 |
COMPUTE_NODE_RAMDISK=/boot/initrd.img-`uname -r` |
|
31 | 40 |
COMPUTE_NODE_MAC_ADDRESS_PREFIX="00:16:3E:0F:6A" |
32 | 41 |
COMPUTE_NODE_MAX_NUM=250 |
33 | 42 |
COMPUTE_NODE_MEMORY=3072 |
34 |
COMPUTE_NODE_MODEL_EXTERNAL_MAC_ADDRESS="00:16:3E:33:A6:01"
|
|
43 |
COMPUTE_NODE_MODEL_EXTERNAL_MAC_ADDRESS="${CLUSTER_EXTERNAL_MAC_PREFIX}01"
|
|
35 | 44 |
COMPUTE_NODE_MODEL_STATIC_NETWORK_POSTFIX=252 |
36 | 45 |
COMPUTE_NODE_MODEL_STATIC_IP_EXTERNAL= |
37 |
COMPUTE_NODE_MODEL_NAME="compute-node-model"
|
|
46 |
COMPUTE_NODE_MODEL_HOST_NAME="tamadi-1-cnm"
|
|
38 | 47 |
COMPUTE_NODE_NAME_PREFIX="compute-node-" |
48 |
COMPUTE_NODE_RAMDISK=/boot/initrd.img-`uname -r` |
|
39 | 49 |
COMPUTE_NODE_STATIC_NETWORK_PREFIX=$CLUSTER_STATIC_NETWORK_PREFIX |
50 |
COMPUTE_NODE_SWAP_DISK_POSTFIX="-swap" |
|
51 |
COMPUTE_NODE_SWAP_DISK_PREFIX="compute-node-" |
|
52 |
COMPUTE_NODE_SWAP_DISK_SIZE=1G |
|
53 |
SWAP_DISK_VOLUME_GROUP=/dev/vg_fast |
|
40 | 54 |
DHCP_HOSTSFILE_BASENAME=dhcp-hostsfile |
41 | 55 |
DOM0_CPUS_LIST="0 4" |
42 | 56 |
DOM0_CPUS_NUM=2 |
43 | 57 |
DOM0_CPUS_CLAUSE="(dom0-cpus $DOM0_CPUS_NUM)" |
44 | 58 |
FRONT_END_CPUS_LIST="8 12 16" |
45 |
FRONT_END_EXTERNAL_MAC_ADDRESS="00:16:3E:33:A6:02" |
|
46 |
FRONT_END_MEMORY=8G |
|
47 |
FRONT_END_HOME_DISK_SIZE=512G |
|
59 |
FRONT_END_EXTERNAL_MAC_ADDRESS="${CLUSTER_EXTERNAL_MAC_PREFIX}02" |
|
60 |
FRONT_END_HOME_DISK=front-end-home-disk |
|
61 |
FRONT_END_HOME_DISK_FILE_SYSTEM=ext3 |
|
62 |
#FRONT_END_HOME_DISK_SIZE=512G |
|
63 |
FRONT_END_HOME_DISK_SIZE=10G |
|
48 | 64 |
FRONT_END_HOME_VOLUME_GROUP=vg_slow |
49 | 65 |
FRONT_END_HOME_VOLUME_GROUP_DEVICE="/dev/$FRONT_END_HOME_VOLUME_GROUP" |
50 |
FRONT_END_HOST_NAME="front-end"
|
|
66 |
FRONT_END_HOST_NAME="tamadi-1-fe"
|
|
51 | 67 |
FRONT_END_INTERFACES_TEMPLATE=interfaces.front-end |
52 | 68 |
FRONT_END_KERNEL=/boot/vmlinuz-`uname -r` |
69 |
FRONT_END_MEMORY=8G |
|
70 |
FRONT_END_STATIC_NETWORK_POSTFIX=251 |
|
71 |
FRONT_END_CLUSTER_STATIC_IP="$CLUSTER_STATIC_NETWORK_PREFIX.$FRONT_END_STATIC_NETWORK_POSTFIX" |
|
72 |
FRONT_END_EXTERNAL_STATIC_IP="$CLUSTER_STATIC_NETWORK_PREFIX.$FRONT_END_STATIC_NETWORK_POSTFIX" |
|
53 | 73 |
FRONT_END_RAMDISK=/boot/initrd.img-`uname -r` |
54 |
FRONT_END_STATIC_NETWORK_POSTFIX=251 |
|
55 |
FRONT_END_STATIC_IP_CLUSTER="$CLUSTER_STATIC_NETWORK_PREFIX.$FRONT_END_STATIC_NETWORK_POSTFIX" |
|
56 |
FRONT_END_STATIC_IP_EXTERNAL="$CLUSTER_STATIC_NETWORK_PREFIX.$FRONT_END_STATIC_NETWORK_POSTFIX" |
|
57 | 74 |
FRONT_END_SWAP_DISK="frontend-swap" |
58 | 75 |
#FRONT_END_SWAP_DISK_SIZE=$CONST_NULL_DISK_SIZE # 0G means no swap disk. |
59 | 76 |
FRONT_END_SWAP_DISK_SIZE=1G # 0G means no swap disk. |
60 | 77 |
FRONT_END_SWAP_VOLUME_GROUP=vg_fast |
61 | 78 |
FRONT_END_SWAP_VOLUME_GROUP_DEVICE="/dev/$FRONT_END_SWAP_VOLUME_GROUP" |
62 | 79 |
FRONT_END_SYSTEM_DISK="frontend-system-disk" |
63 |
FRONT_END_SYSTEM_DISK_SIZE=46G |
|
80 |
#FRONT_END_SYSTEM_DISK_SIZE=46G |
|
81 |
FRONT_END_SYSTEM_DISK_SIZE=10G |
|
64 | 82 |
FRONT_END_SYSTEM_DISK_FILE_SYSTEM=ext3 |
65 | 83 |
FRONT_END_SYSTEM_DISK_MOUNT_POINT=/mnt/frontend-system-disk |
66 | 84 |
FRONT_END_SYSTEM_VOLUME_GROUP=vg_fast |
67 | 85 |
FRONT_END_SYSTEM_VOLUME_GROUP_DEVICE="/dev/$FRONT_END_SYSTEM_VOLUME_GROUP" |
68 | 86 |
FRONT_END_VCPUS_NUM=3 |
69 | 87 |
HOSTS_FILE_BASENAME=hosts |
70 |
SWAP_DISK_LOGICAL_VOLUME=/dev/vg_fast |
|
71 |
SWAP_DISK_POSTFIX="-swap" |
|
72 |
SWAP_DISK_PREFIX="compute-node-" |
|
73 |
SWAP_DISK_SIZE=1G |
|
74 | 88 |
SYSTEM_DISK_CLONE_POSTFIX="-disk" |
75 | 89 |
SYSTEM_DISK_CLONE_PREFIX=$COMPUTE_NODE_NAME_PREFIX |
76 | 90 |
SYSTEM_DISK_CLONE_SIZE=20G # Half of the master size. |
trunk/shell/templates/etc/xen/front-end.cfg (revision 23) | ||
---|---|---|
38 | 38 |
# Networking |
39 | 39 |
# |
40 | 40 |
__XEN_DHCP_STANZA__ |
41 |
vif = [ 'ip=__FRONT_END_IP_EXTERNAL__,mac=__FRONT_END_EXTERNAL_MAC_ADDRESS__', '__FRONT_END_IP_CLUSTER__,mac=__FRONT_END_CLUSTER_MAC_ADDRESS__,bridge=__CLUSTER_BRIDGE_NAME__' ] |
|
41 |
|
|
42 | 42 |
__VIF_STANZA__ |
43 | 43 |
# |
44 | 44 |
# Behaviour |
Formats disponibles : Unified diff