summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Rozet <trozet@redhat.com>2015-10-28 15:17:20 -0400
committerTim Rozet <trozet@redhat.com>2015-11-02 16:18:29 -0500
commitb4781ad203c1905894f53f9ef931ae60dfa1bc70 (patch)
tree20013316d0aebca2aaa51e0d01eae3d1bf87e834
parent7dfb433c9dd10ef759e46fc655e0958b3baf2e82 (diff)
Adds HA support to deploy
Defaults the deploy to use HA and adds new param for using non-HA. JIRA: APEX-40 Change-Id: Ib3fc8b31ea13a3c590ceaa875197b4b9c1bb55a1 Signed-off-by: Tim Rozet <trozet@redhat.com>
-rw-r--r--build/Makefile10
-rwxr-xr-xbuild/instack.sh31
-rw-r--r--build/opnfv-apex.spec6
-rwxr-xr-xci/clean.sh12
-rwxr-xr-xci/deploy.sh21
5 files changed, 50 insertions, 30 deletions
diff --git a/build/Makefile b/build/Makefile
index 2c7e3e2e..fa89ee89 100644
--- a/build/Makefile
+++ b/build/Makefile
@@ -101,12 +101,11 @@ rpm:
pushd ../ && git archive --format=tar --prefix=opnfv-apex-$(RPMVERS)/ HEAD > build/opnfv-apex.tar
tar -u --xform="s:instack.qcow2:opnfv-apex-$(RPMVERS)/build/instack.qcow2:" --file=opnfv-apex.tar instack.qcow2
tar -u --xform="s:instack.xml:opnfv-apex-$(RPMVERS)/build/instack.xml:" --file=opnfv-apex.tar instack.xml
- qemu-img create -f qcow2 baremetalbrbm_0.qcow2 40G
- tar -u --xform="s:baremetalbrbm_0.qcow2:opnfv-apex-$(RPMVERS)/build/baremetalbrbm_0.qcow2:" --file=opnfv-apex.tar baremetalbrbm_0.qcow2
tar -u --xform="s:baremetalbrbm_0.xml:opnfv-apex-$(RPMVERS)/build/baremetalbrbm_0.xml:" --file=opnfv-apex.tar baremetalbrbm_0.xml
- qemu-img create -f qcow2 baremetalbrbm_1.qcow2 40G
- tar -u --xform="s:baremetalbrbm_1.qcow2:opnfv-apex-$(RPMVERS)/build/baremetalbrbm_1.qcow2:" --file=opnfv-apex.tar baremetalbrbm_1.qcow2
tar -u --xform="s:baremetalbrbm_1.xml:opnfv-apex-$(RPMVERS)/build/baremetalbrbm_1.xml:" --file=opnfv-apex.tar baremetalbrbm_1.xml
+ tar -u --xform="s:baremetalbrbm_2.xml:opnfv-apex-$(RPMVERS)/build/baremetalbrbm_2.xml:" --file=opnfv-apex.tar baremetalbrbm_2.xml
+ tar -u --xform="s:baremetalbrbm_3.xml:opnfv-apex-$(RPMVERS)/build/baremetalbrbm_3.xml:" --file=opnfv-apex.tar baremetalbrbm_3.xml
+ tar -u --xform="s:baremetalbrbm_4.xml:opnfv-apex-$(RPMVERS)/build/baremetalbrbm_4.xml:" --file=opnfv-apex.tar baremetalbrbm_4.xml
tar -u --xform="s:brbm-net.xml:opnfv-apex-$(RPMVERS)/build/brbm-net.xml:" --file=opnfv-apex.tar brbm-net.xml
tar -u --xform="s:default-pool.xml:opnfv-apex-$(RPMVERS)/build/default-pool.xml:" --file=opnfv-apex.tar default-pool.xml
tar -u --xform="s:instackenv-virt.json:opnfv-apex-$(RPMVERS)/build/instackenv-virt.json:" --file=opnfv-apex.tar instackenv-virt.json
@@ -132,6 +131,9 @@ instack-clean:
rm -f instackenv-virt.json
rm -f baremetalbrbm_0.xml
rm -f baremetalbrbm_1.xml
+ rm -f baremetalbrbm_2.xml
+ rm -f baremetalbrbm_3.xml
+ rm -f baremetalbrbm_4.xml
rm -f instack.xml
rm -f instack.qcow2
diff --git a/build/instack.sh b/build/instack.sh
index c19ab0fd..79a99f83 100755
--- a/build/instack.sh
+++ b/build/instack.sh
@@ -2,6 +2,7 @@
set -e
declare -i CNT
+vm_index=4
RDO_RELEASE=kilo
SSH_OPTIONS=(-o StrictHostKeyChecking=no -o GlobalKnownHostsFile=/dev/null -o UserKnownHostsFile=/dev/null)
@@ -80,11 +81,11 @@ ssh -T ${SSH_OPTIONS[@]} stack@localhost <<EOI
set -e
virsh destroy instack 2> /dev/null || echo -n ''
virsh undefine instack --remove-all-storage 2> /dev/null || echo -n ''
-virsh destroy baremetalbrbm_0 2> /dev/null || echo -n ''
-virsh undefine baremetalbrbm_0 --remove-all-storage 2> /dev/null || echo -n ''
-virsh destroy baremetalbrbm_1 2> /dev/null || echo -n ''
-virsh undefine baremetalbrbm_1 --remove-all-storage 2> /dev/null || echo -n ''
-NODE_CPU=2 NODE_MEM=8192 instack-virt-setup
+for i in \$(seq 0 $vm_index); do
+ virsh destroy baremetalbrbm_\$i 2> /dev/null || echo -n ''
+ virsh undefine baremetalbrbm_\$i --remove-all-storage 2> /dev/null || echo -n ''
+done
+NODE_COUNT=5 NODE_CPU=2 NODE_MEM=8192 instack-virt-setup
EOI
# let dhcp happen so we can get the ip
@@ -150,8 +151,10 @@ if virsh list | grep instack > /dev/null; then
fi
echo $'\nGenerating libvirt configuration'
-virsh dumpxml baremetalbrbm_0 > baremetalbrbm_0.xml
-virsh dumpxml baremetalbrbm_1 > baremetalbrbm_1.xml
+for i in \$(seq 0 $vm_index); do
+ virsh dumpxml baremetalbrbm_\$i > baremetalbrbm_\$i.xml
+done
+
virsh dumpxml instack > instack.xml
#virsh vol-dumpxml instack.qcow2 --pool default > instack.qcow2.xml
virsh net-dumpxml brbm > brbm-net.xml
@@ -160,8 +163,10 @@ EOI
# copy off the instack artifacts
echo "Copying instack files to build directory"
-scp ${SSH_OPTIONS[@]} stack@localhost:baremetalbrbm_0.xml .
-scp ${SSH_OPTIONS[@]} stack@localhost:baremetalbrbm_1.xml .
+for i in $(seq 0 $vm_index); do
+ scp ${SSH_OPTIONS[@]} stack@localhost:baremetalbrbm_${i}.xml .
+done
+
scp ${SSH_OPTIONS[@]} stack@localhost:instack.xml .
scp ${SSH_OPTIONS[@]} stack@localhost:brbm-net.xml .
scp ${SSH_OPTIONS[@]} stack@localhost:default-pool.xml .
@@ -192,9 +197,9 @@ ssh -T ${SSH_OPTIONS[@]} stack@localhost <<EOI
set -e
virsh destroy instack 2> /dev/null || echo -n ''
virsh undefine instack --remove-all-storage 2> /dev/null || echo -n ''
-virsh destroy baremetalbrbm_0 2> /dev/null || echo -n ''
-virsh undefine baremetalbrbm_0 --remove-all-storage 2> /dev/null || echo -n ''
-virsh destroy baremetalbrbm_1 2> /dev/null || echo -n ''
-virsh undefine baremetalbrbm_1 --remove-all-storage 2> /dev/null || echo -n ''
+for i in \$(seq 0 $vm_index); do
+ virsh destroy baremetalbrbm_\$i 2> /dev/null || echo -n ''
+ virsh undefine baremetalbrbm_\$i --remove-all-storage 2> /dev/null || echo -n ''
+done
EOI
diff --git a/build/opnfv-apex.spec b/build/opnfv-apex.spec
index 5173565c..641c37c7 100644
--- a/build/opnfv-apex.spec
+++ b/build/opnfv-apex.spec
@@ -32,8 +32,7 @@ mkdir -p %{buildroot}%{_var}/opt/opnfv/stack/
cp build/instack.qcow2 %{buildroot}%{_var}/opt/opnfv/stack/
cp build/instack.xml %{buildroot}%{_var}/opt/opnfv/
-cp build/baremetalbrbm_0.xml %{buildroot}%{_var}/opt/opnfv/
-cp build/baremetalbrbm_1.xml %{buildroot}%{_var}/opt/opnfv/
+cp build/baremetalbrbm_*.xml %{buildroot}%{_var}/opt/opnfv/
cp build/brbm-net.xml %{buildroot}%{_var}/opt/opnfv/
cp build/default-pool.xml %{buildroot}%{_var}/opt/opnfv/
@@ -52,8 +51,7 @@ cp build/stack/overcloud-full.vmlinuz %{buildroot}%{_var}/opt/opnfv/stack/
%{_bindir}/opnfv-clean
%{_var}/opt/opnfv/stack/instack.qcow2
%{_var}/opt/opnfv/instack.xml
-%{_var}/opt/opnfv/baremetalbrbm_0.xml
-%{_var}/opt/opnfv/baremetalbrbm_1.xml
+%{_var}/opt/opnfv/baremetalbrbm_*.xml
%{_var}/opt/opnfv/brbm-net.xml
%{_var}/opt/opnfv/default-pool.xml
%{_var}/opt/opnfv/instackenv-virt.json
diff --git a/ci/clean.sh b/ci/clean.sh
index d9a02e43..7fad2ef1 100755
--- a/ci/clean.sh
+++ b/ci/clean.sh
@@ -5,13 +5,13 @@
#
#Uses Vagrant and VirtualBox
#
+vm_index=4
virsh destroy instack 2> /dev/null || echo -n ''
virsh undefine instack --remove-all-storage 2> /dev/null || echo -n ''
-virsh destroy baremetalbrbm_0 2> /dev/null || echo -n ''
-virsh undefine baremetalbrbm_0 --remove-all-storage 2> /dev/null || echo -n ''
-virsh destroy baremetalbrbm_1 2> /dev/null || echo -n ''
-virsh undefine baremetalbrbm_1 --remove-all-storage 2> /dev/null || echo -n ''
rm -f /var/lib/libvirt/images/instack.qcow2 2> /dev/null
-rm -f /var/lib/libvirt/images/baremetalbrbm_0.qcow2 2> /dev/null
-rm -f /var/lib/libvirt/images/baremetalbrbm_1.qcow2 2> /dev/null
+for i in $(seq 0 vm_index); do
+ virsh destroy baremetalbrbm_$i 2> /dev/null || echo -n ''
+ virsh undefine baremetalbrbm_$i --remove-all-storage 2> /dev/null || echo -n ''
+ rm -f /var/lib/libvirt/images/baremetalbrbm_${i}.qcow2 2> /dev/null
+done
diff --git a/ci/deploy.sh b/ci/deploy.sh
index 482c1bff..c707e73d 100755
--- a/ci/deploy.sh
+++ b/ci/deploy.sh
@@ -24,7 +24,7 @@ set -e
#red=`tput setaf 1`
#green=`tput setaf 2`
-vm_index=1
+vm_index=4
declare -i CNT
declare UNDERCLOUD
@@ -168,9 +168,14 @@ function setup_instack_vm {
ssh -T ${SSH_OPTIONS[@]} "root@$UNDERCLOUD" "restorecon -r /home/stack"
}
+##Create virtual nodes in virsh
+##params: none
function setup_virtual_baremetal {
for i in $(seq 0 $vm_index); do
if ! virsh list --all | grep baremetalbrbm_${i} > /dev/null; then
+ if [ ! -e $CONFIG/baremetalbrbm_${i}.xml ]; then
+ define_virtual_node baremetalbrbm_${i}
+ fi
virsh define $CONFIG/baremetalbrbm_${i}.xml
else
echo "Found Baremetal ${i} VM, using existing VM"
@@ -180,7 +185,7 @@ function setup_virtual_baremetal {
}
##Copy over the glance images and instack json file
-##params: none
+##params: none
function copy_materials {
scp ${SSH_OPTIONS[@]} $RESOURCES/deploy-ramdisk-ironic.initramfs "stack@$UNDERCLOUD":
@@ -232,8 +237,14 @@ ssh -T ${SSH_OPTIONS[@]} "root@$UNDERCLOUD" "cat /home/stack/.ssh/id_rsa.pub" >>
}
##preping it for deployment and launch the deploy
-##params: none
+##params: none
function undercloud_prep_overcloud_deploy {
+ # check if HA is enabled
+ if [ "$vm_index" -gt 1 ]; then
+ DEPLOY_OPTIONS+=" --control-scale 3 --compute-scale 2"
+ DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/puppet-pacemaker.yaml"
+ DEPLOY_OPTIONS+=" --ntp-server pool.ntp.org"
+ fi
ssh -T ${SSH_OPTIONS[@]} "stack@$UNDERCLOUD" <<EOI
source stackrc
@@ -302,6 +313,10 @@ parse_cmdline() {
floating_ip_count=$2
shift 2
;;
+ -n|--no_ha )
+ vm_index=1
+ shift 1
+ ;;
*)
display_usage
exit 1