| ... | ... |
@@ -547,6 +547,31 @@ if [[ "$ENABLED_SERVICES" =~ "n-net" ]]; then |
| 547 | 547 |
mkdir -p $NOVA_DIR/networks |
| 548 | 548 |
fi |
| 549 | 549 |
|
| 550 |
+# Volume Service |
|
| 551 |
+# -------------- |
|
| 552 |
+ |
|
| 553 |
+if [[ "$ENABLED_SERVICES" =~ "n-vol" ]]; then |
|
| 554 |
+ # |
|
| 555 |
+ # Configure a default volume group called 'nova-volumes' for the nova-volume |
|
| 556 |
+ # service if it does not yet exist. If you don't wish to use a file backed |
|
| 557 |
+ # volume group, create your own volume group called 'nova-volumes' before |
|
| 558 |
+ # invoking stack.sh. |
|
| 559 |
+ # |
|
| 560 |
+ # By default, the backing file is 2G in size, and is stored in /opt/stack. |
|
| 561 |
+ # |
|
| 562 |
+ if ! sudo vgdisplay | grep -q nova-volumes; then |
|
| 563 |
+ VOLUME_BACKING_FILE=${VOLUME_BACKING_FILE:-/opt/stack/nova-volumes-backing-file}
|
|
| 564 |
+ VOLUME_BACKING_FILE_SIZE=${VOLUME_BACKING_FILE_SIZE:-2052M}
|
|
| 565 |
+ truncate -s $VOLUME_BACKING_FILE_SIZE $VOLUME_BACKING_FILE |
|
| 566 |
+ DEV=`sudo losetup -f --show $VOLUME_BACKING_FILE` |
|
| 567 |
+ sudo vgcreate nova-volumes $DEV |
|
| 568 |
+ fi |
|
| 569 |
+ |
|
| 570 |
+ # Configure iscsitarget |
|
| 571 |
+ sudo sed 's/ISCSITARGET_ENABLE=false/ISCSITARGET_ENABLE=true/' -i /etc/default/iscsitarget |
|
| 572 |
+ sudo /etc/init.d/iscsitarget restart |
|
| 573 |
+fi |
|
| 574 |
+ |
|
| 550 | 575 |
function add_nova_flag {
|
| 551 | 576 |
echo "$1" >> $NOVA_DIR/bin/nova.conf |
| 552 | 577 |
} |
| ... | ... |
@@ -687,6 +712,7 @@ fi |
| 687 | 687 |
# within the context of our original shell (so our groups won't be updated). |
| 688 | 688 |
# Use 'sg' to execute nova-compute as a member of the libvirtd group. |
| 689 | 689 |
screen_it n-cpu "cd $NOVA_DIR && sg libvirtd $NOVA_DIR/bin/nova-compute" |
| 690 |
+screen_it n-vol "cd $NOVA_DIR && $NOVA_DIR/bin/nova-volume" |
|
| 690 | 691 |
screen_it n-net "cd $NOVA_DIR && $NOVA_DIR/bin/nova-network" |
| 691 | 692 |
screen_it n-sch "cd $NOVA_DIR && $NOVA_DIR/bin/nova-scheduler" |
| 692 | 693 |
screen_it n-vnc "cd $NOVNC_DIR && ./utils/nova-wsproxy.py 6080 --web . --flagfile=../nova/bin/nova.conf" |
| ... | ... |
@@ -38,7 +38,8 @@ DEST=${DEST:-/opt/stack}
|
| 38 | 38 |
WAIT_TILL_LAUNCH=${WAIT_TILL_LAUNCH:-1}
|
| 39 | 39 |
|
| 40 | 40 |
# Param string to pass to stack.sh. Like "EC2_DMZ_HOST=192.168.1.1 MYSQL_USER=nova" |
| 41 |
-STACKSH_PARAMS=${STACKSH_PARAMS:-}
|
|
| 41 |
+# By default, n-vol is disabled for lxc, as iscsitarget doesn't work properly in lxc |
|
| 42 |
+STACKSH_PARAMS=${STACKSH_PARAMS:-"ENABLED_SERVICES=g-api,g-reg,key,n-api,n-cpu,n-net,n-sch,n-vnc,dash,mysql,rabbit"}
|
|
| 42 | 43 |
|
| 43 | 44 |
# Option to use the version of devstack on which we are currently working |
| 44 | 45 |
USE_CURRENT_DEVSTACK=${USE_CURRENT_DEVSTACK:-1}
|