summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
l---------ci/00-maasdeploy.sh1
-rwxr-xr-xci/01-bootstrap.sh21
-rwxr-xr-xci/02-deploybundle.sh28
-rwxr-xr-xci/03-maasdeploy.sh196
-rwxr-xr-xci/clean.sh62
-rwxr-xr-xci/cleanmaas.sh11
-rw-r--r--ci/config_tpl/juju2/bundle_tpl/ceph.yaml14
-rw-r--r--ci/config_tpl/juju2/bundle_tpl/keystone.yaml2
-rw-r--r--ci/config_tpl/juju2/bundle_tpl/neutron-api.yaml3
-rw-r--r--ci/config_tpl/juju2/bundlek8_tpl/bundle.yaml6
-rw-r--r--ci/config_tpl/juju2/bundlek8_tpl/canal.yaml8
-rw-r--r--ci/config_tpl/juju2/bundlek8_tpl/ceph.yaml35
-rw-r--r--ci/config_tpl/juju2/bundlek8_tpl/relations.yaml9
-rw-r--r--ci/config_tpl/juju2/bundlek8_tpl/spaces.yaml23
-rw-r--r--ci/default_deployment_config.yaml5
-rw-r--r--ci/depMAAS.py9
-rwxr-xr-xci/deploy.sh32
-rw-r--r--ci/genBundle.py8
-rw-r--r--ci/genDeploymentConfig.py9
-rw-r--r--ci/genK8Bundle.py5
-rw-r--r--ci/genMAASConfig.py9
-rwxr-xr-xci/kubernetes/fetch-charms.sh5
-rwxr-xr-xci/nosdn/fetch-charms.sh42
-rwxr-xr-xci/odl/fetch-charms.sh48
-rwxr-xr-xci/onos/fetch-charms.sh38
-rwxr-xr-xci/opencontrail/fetch-charms.sh2
-rwxr-xr-xci/openstack.sh55
-rw-r--r--docs/release/release-notes/release-notes.rst9
-rw-r--r--docs/release/userguide/userguide.rst4
-rwxr-xr-xjuju/configure-juju-on-openstack16
-rwxr-xr-xjuju/get-cloud-images21
-rwxr-xr-xjuju/joid-configure-openstack33
-rw-r--r--labconfig/enea/pod5/labconfig.yaml170
-rw-r--r--labconfig/enea/pod6/labconfig.yaml170
-rw-r--r--labconfig/enea/virtual/pod1/labconfig.yaml54
-rw-r--r--labconfig/huawei/pod12/labconfig.yaml42
-rw-r--r--labconfig/intel/pod18/labconfig.yaml163
-rw-r--r--labconfig/intel/pod19/labconfig.yaml162
-rw-r--r--labconfig/lenovo/pod1/labconfig.yaml28
39 files changed, 1176 insertions, 382 deletions
diff --git a/ci/00-maasdeploy.sh b/ci/00-maasdeploy.sh
deleted file mode 120000
index 33b6f4dd..00000000
--- a/ci/00-maasdeploy.sh
+++ /dev/null
@@ -1 +0,0 @@
-03-maasdeploy.sh \ No newline at end of file
diff --git a/ci/01-bootstrap.sh b/ci/01-bootstrap.sh
index 88f87dd5..e45c2ee0 100755
--- a/ci/01-bootstrap.sh
+++ b/ci/01-bootstrap.sh
@@ -2,21 +2,6 @@
set -ex
-#export JUJU_DEV_FEATURE_FLAGS=address-allocation
-
-jujuver=`juju --version`
-
-if [[ "$jujuver" < "2" ]]; then
- juju bootstrap --debug --to bootstrap.maas --agent-version 1.25.5
- sleep 5
- #disable juju gui until xenial charms are in charm store.
- juju deploy cs:juju-gui-130 --to 0
-
- JUJU_REPOSITORY=
- juju set-constraints tags=
-
-else
- controllername=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml`
- cloudname=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml`
- juju bootstrap $controllername $cloudname --debug --to bootstrap.maas
-fi
+controllername=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml`
+cloudname=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml`
+juju bootstrap $controllername $cloudname --debug --to bootstrap.maas
diff --git a/ci/02-deploybundle.sh b/ci/02-deploybundle.sh
index 5a72445e..df669a88 100755
--- a/ci/02-deploybundle.sh
+++ b/ci/02-deploybundle.sh
@@ -12,9 +12,6 @@ opnfvfeature=$5
opnfvdistro=$6
opnfvmodel=$7
-jujuver=`juju --version`
-maasver=`apt-cache policy maas | grep Installed | cut -d ':' -f 2 | sed -e 's/ //'`
-
if [[ "$opnfvmodel" = "openstack" ]]; then
#copy and download charms
./$opnfvsdn/fetch-charms.sh $opnfvdistro
@@ -54,19 +51,10 @@ check_status() {
PROFILE=maas
MAAS_IP=$(grep " ip_address" deployconfig.yaml | cut -d ':' -f 2 | sed -e 's/ //')
API_SERVERMAAS="http://$MAAS_IP:5240/MAAS/"
-if [[ "$maasver" > "2" ]]; then
- API_KEY=`sudo maas-region apikey --username=ubuntu || true`
-else
- API_KEY=`sudo maas-region-admin apikey --username=ubuntu || true`
-fi
-
+API_KEY=`sudo maas-region apikey --username=ubuntu || true`
if [[ "$API_KEY" = "" ]]; then
- if [[ "$maasver" > "2" ]]; then
- API_KEY=`sshpass -p ubuntu ssh ubuntu@$MAAS_IP 'sudo maas-region apikey --username=ubuntu'`
- else
- API_KEY=`sshpass -p ubuntu ssh ubuntu@$MAAS_IP 'sudo maas-region-admin apikey --username=ubuntu'`
- fi
+ API_KEY=`sshpass -p ubuntu ssh ubuntu@$MAAS_IP 'sudo maas-region apikey --username=ubuntu'`
fi
maas login $PROFILE $API_SERVERMAAS $API_KEY
@@ -75,16 +63,12 @@ if [[ "$opnfvmodel" = "openstack" ]]; then
if [ -e ./deployconfig.yaml ]; then
extport=`grep "ext-port" deployconfig.yaml | cut -d ' ' -f 4 | sed -e 's/ //' | tr ',' ' '`
datanet=`grep "dataNetwork" deployconfig.yaml | cut -d ' ' -f 4 | sed -e 's/ //'`
- admnet=`grep "admNetwork" deployconfig.yaml | cut -d ' ' -f 4 | sed -e 's/ //'`
cephdisk=`grep "ceph-disk" deployconfig.yaml | cut -d ':' -f 2 | sed -e 's/ //'`
+ admnet=`grep "admNetwork" deployconfig.yaml | cut -d ' ' -f 4 | sed -e 's/ //'`
osdomname=`grep "os-domain-name" deployconfig.yaml | cut -d ':' -f 2 | sed -e 's/ //'`
fi
- if [[ "$maasver" > "2" ]]; then
- workmutiple=`maas maas nodes read | grep "cpu_count" | cut -d ':' -f 2 | sed -e 's/ //' | tr ',' ' '`
- else
- workmutiple=`maas maas nodes list | grep "cpu_count" | cut -d ':' -f 2 | sed -e 's/ //' | tr ',' ' '`
- fi
+ workmutiple=`maas maas nodes read | grep "cpu_count" | cut -d ':' -f 2 | sed -e 's/ //' | tr ',' ' '`
max=0
for v in ${workmutiple[@]}; do
if (( $v > $max )); then max=$v; fi;
@@ -107,6 +91,8 @@ if [[ "$opnfvmodel" = "openstack" ]]; then
else
sed -i "s/cpu_pin_set: all/cpu_pin_set: 1/g" default_deployment_config.yaml
fi
+else
+ cephdisk=`grep "ceph-disk" deployconfig.yaml | cut -d ':' -f 2 | sed -e 's/ //'`
fi
case "$opnfvlab" in
@@ -170,7 +156,7 @@ openfile_fix() {
if [ "$opnfvsdn" = "ocl" ]
then
- TAG="ubuntu16.04-4.0.1.0-32.tar.gz"
+ TAG="ubuntu16.04-4.0.2.0-34.tar.gz"
for ROLE in contrail-controller contrail-analytics contrail-analyticsdb
do
diff --git a/ci/03-maasdeploy.sh b/ci/03-maasdeploy.sh
index bc0c2cbb..27a72a40 100755
--- a/ci/03-maasdeploy.sh
+++ b/ci/03-maasdeploy.sh
@@ -21,9 +21,16 @@ then
usage;
fi
-
virtinstall=0
labname=$1
+snapinstall=0
+
+opnfvdistro=`cat /etc/lsb-release | grep CODENAME | cut -d "=" -f 2`
+
+if [ "bionic" == "$opnfvdistro" ]; then
+ snapinstall=1
+fi
+
if [ ! -e $HOME/.ssh/id_rsa ]; then
ssh-keygen -N '' -f $HOME/.ssh/id_rsa
@@ -45,26 +52,45 @@ NODE_ARC="$NODE_ARCHES/generic"
# Install the packages needed
echo_info "Installing and upgrading required packages"
-sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5EDB1B62EC4926EA
-sudo apt-get update -y
+#sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5EDB1B62EC4926EA
+sudo apt-get update -y || true
sudo apt-get install software-properties-common -y
-sudo apt-add-repository ppa:juju/stable -y
-sudo apt-add-repository ppa:maas/stable -y
-sudo apt-add-repository cloud-archive:ocata -y
-sudo apt-get update -y
+
+if [ "$snapinstall" -eq "0" ]; then
+ sudo apt-add-repository ppa:juju/stable -y
+ sudo apt-add-repository ppa:maas/stable -y
+fi
+if [ "bionic" != "$opnfvdistro" ]; then
+ sudo apt-add-repository cloud-archive:pike -y
+ if [ "aarch64" == "$NODE_ARCTYPE" ]; then
+ sudo add-apt-repository ppa:ubuntu-cloud-archive/pike-staging -y
+ fi
+fi
+
+sudo apt-get update -y || true
#sudo apt-get dist-upgrade -y
-sudo apt-get install bridge-utils openssh-server bzr git virtinst qemu-kvm libvirt-bin \
+
+if [ "$snapinstall" -eq "1" ]; then
+ sudo apt-get install bridge-utils openssh-server bzr git virtinst qemu-kvm libvirt-bin \
+ maas maas-region-controller juju python-pip python-psutil python-openstackclient \
+ python-congressclient gsutil pastebinit python-jinja2 sshpass \
+ openssh-server vlan ipmitool jq expect snap -y --allow-unauthenticated
+ sudo service ntp stop
+ sudo snap install charm
+ sudo snap install --devmode --stable maas
+else
+ sudo apt-get install bridge-utils openssh-server bzr git virtinst qemu-kvm libvirt-bin \
maas maas-region-controller juju python-pip python-psutil python-openstackclient \
python-congressclient gsutil charm-tools pastebinit python-jinja2 sshpass \
- openssh-server vlan ipmitool jq expect snap -y
+ openssh-server vlan ipmitool jq expect snap -y --allow-unauthenticated
+fi
-#sudo apt-get install snap -y
-#sudo snap install maas --classic
-#sudo snap install juju --classic
+if [ "aarch64" == "$NODE_ARCTYPE" ]; then
+ sudo apt-get install qemu qemu-efi qemu-system-aarch64 -y --allow-unauthenticated
+fi
sudo -H pip install --upgrade pip
-
#
# Config preparation
#
@@ -137,9 +163,7 @@ PRIMARY_RACK_CONTROLLER="$MAAS_IP"
VLAN_UNTTAGED="untagged"
# In the case of a virtual deployment get deployconfig.yaml
-if [ "$virtinstall" -eq 1 ]; then
- ./cleanvm.sh || true
-fi
+./cleanvm.sh || true
#create backup directory
mkdir ~/joid_config/ || true
@@ -206,31 +230,46 @@ if [ $(pip list --format=columns | grep google-api-python-client | wc -l) == 1 ]
sudo pip uninstall google-api-python-client
fi
-
-if [ ! -e ~maas/.ssh/id_rsa.pub ]; then
- if [ ! -e $HOME/id_rsa_maas.pub ]; then
- [ -e $HOME/id_rsa_maas ] && rm -f $HOME/id_rsa_maas
- sudo su - $USER -c "echo |ssh-keygen -t rsa -f $HOME/id_rsa_maas"
+if [ "$snapinstall" -eq "0" ]; then
+ if [ ! -e ~maas/.ssh/id_rsa.pub ]; then
+ if [ ! -e $HOME/id_rsa_maas.pub ]; then
+ [ -e $HOME/id_rsa_maas ] && rm -f $HOME/id_rsa_maas
+ sudo su - $USER -c "echo |ssh-keygen -t rsa -f $HOME/id_rsa_maas"
+ fi
+ sudo -u maas mkdir ~maas/.ssh/ || true
+ sudo cp $HOME/id_rsa_maas ~maas/.ssh/id_rsa
+ sudo cp $HOME/id_rsa_maas.pub ~maas/.ssh/id_rsa.pub
+ sudo chown maas:maas ~maas/.ssh/id_rsa
+ sudo chown maas:maas ~maas/.ssh/id_rsa.pub
+ sudo cat ~maas/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
+ fi
+else
+ if [ ! -e /root/.ssh/id_rsa.pub ]; then
+ if [ ! -e $HOME/id_rsa_maas.pub ]; then
+ [ -e $HOME/id_rsa_maas ] && rm -f $HOME/id_rsa_maas
+ sudo su - $USER -c "echo |ssh-keygen -t rsa -f $HOME/id_rsa_maas"
+ fi
+ sudo -u root mkdir /root/.ssh/ || true
+ sudo cp $HOME/id_rsa_maas /root/.ssh/id_rsa
+ sudo cp $HOME/id_rsa_maas.pub /root/.ssh/id_rsa.pub
+ sudo chown root:root /root/.ssh/id_rsa
+ sudo chown root:root /root/.ssh/id_rsa.pub
+ sudo cat /root/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
fi
- sudo -u maas mkdir ~maas/.ssh/ || true
- sudo cp $HOME/id_rsa_maas ~maas/.ssh/id_rsa
- sudo cp $HOME/id_rsa_maas.pub ~maas/.ssh/id_rsa.pub
- sudo chown maas:maas ~maas/.ssh/id_rsa
- sudo chown maas:maas ~maas/.ssh/id_rsa.pub
fi
# Ensure virsh can connect without ssh auth
-sudo cat ~maas/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
sudo cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
-#
-# MAAS deploy
-#
-
-installmaas(){
- sudo apt-get install maas maas-region-controller -y
-}
-
+if [ "$snapinstall" -eq "1" ]; then
+ sudo maas init --mode all --maas-url http://$MAAS_IP:5240/MAAS --admin-username $PROFILE \
+ --admin-password $PROFILE --admin-email ubuntu@ubuntu.com || true
+ API_KEY=`sudo maas apikey --username=$PROFILE`
+else
+ sudo maas-rack config --region-url http://$MAAS_IP:5240/MAAS
+ sudo maas createadmin --username=$PROFILE --email=ubuntu@ubuntu.com --password=$PROFILE || true
+ API_KEY=`sudo maas-region apikey --username=$PROFILE`
+fi
#
# MAAS config
# https://insights.ubuntu.com/2016/01/23/maas-setup-deploying-openstack-on-maas-1-9-with-juju/
@@ -238,13 +277,6 @@ installmaas(){
#
configuremaas(){
#reconfigure maas with correct MAAS address.
- #Below code is needed as MAAS have issue in commissioning without restart.
- #sudo ./maas-reconfigure-region.sh $MAAS_IP
- sleep 30
- sudo maas-rack config --region-url http://$MAAS_IP:5240/MAAS
-
- sudo maas createadmin --username=ubuntu --email=ubuntu@ubuntu.com --password=ubuntu || true
- API_KEY=`sudo maas-region apikey --username=ubuntu`
maas login $PROFILE $API_SERVERMAAS $API_KEY
maas $PROFILE maas set-config name='main_archive' value=$MAIN_ARCHIVE || true
maas $PROFILE maas set-config name=upstream_dns value=$MY_UPSTREAM_DNS || true
@@ -257,6 +289,14 @@ configuremaas(){
maas $PROFILE tags create name=$tag || true
done
+ #below tag would be used to enable huge pages for DPDK and SRIOV enablement in Ubuntu kernel via MAAS
+ maas $PROFILE tags create name='opnfv-dpdk' comment='OPNFV DPDK enablement' \
+ kernel_opts='hugepagesz=2M hugepages=1024 hugepagesz=1G hugepages=20 default_hugepagesz=1G intel_iommu=on' || true
+
+ maas $PROFILE package-repositories create name="Ubuntu Proposed new" \
+ url="http://archive.ubuntu.com/ubuntu" components="main" \
+ distributions="xenial-proposed" arches=amd64,i386
+
#create the required spaces.
maas $PROFILE space update 0 name=default || true
for space in admin-api internal-api public-api \
@@ -274,7 +314,9 @@ configuremaas(){
maas $PROFILE boot-source-selection update 1 1 arches="$NODE_ARCHES"
fi
- maas $PROFILE boot-resources import || true
+ if [ "$snapinstall" -eq "0" ]; then
+ maas $PROFILE boot-resources import || true
+ fi
while [ "$(maas $PROFILE boot-resources is-importing)" == "true" ];
do
@@ -283,7 +325,6 @@ configuremaas(){
}
setupspacenetwork(){
-
#get space, subnet and vlan and create accordingly.
#for type in admin osapi data storage external floating public; do
nettypes=`cat labconfig.json | jq '.opnfv.spaces[]'.type | cut -d \" -f 2`
@@ -302,7 +343,7 @@ setupspacenetwork(){
NET_VLAN_ID=$(maas $PROFILE vlans read $NET_FABRIC_ID | jq -r ".[] | select(.vid==\"$SPACE_VLAN\")".id)
NET_VLAN_VID=$(maas $PROFILE vlans read $NET_FABRIC_ID | jq -r ".[] | select(.vid==\"$SPACE_VLAN\")".vid)
if ([ $SPACE_GWAY ] && [ "$SPACE_GWAY" != "null" ]); then
- maas $PROFILE subnet update $SPACE_CIDR gateway_ip=$SPACE_GWAY
+ maas $PROFILE subnet update $SPACE_CIDR gateway_ip=$SPACE_GWAY || true
fi
if ([ $NET_VLAN_VID ] && [ $NET_VLAN_VID == "0" ]); then
config_done=1
@@ -311,7 +352,7 @@ setupspacenetwork(){
else
NET_VLAN_ID=$(maas $PROFILE vlans create $NET_FABRIC_ID vid=$SPACE_VLAN | jq --raw-output ".id")
if ([ $NET_VLAN_ID ] && [ $NET_VLAN_ID != "null" ]); then
- maas $PROFILE subnet update $SPACE_CIDR vlan=$NET_VLAN_ID
+ maas $PROFILE subnet update $SPACE_CIDR vlan=$NET_VLAN_ID || true
NET_FABRIC_VID=$SPACE_VLAN
fi
fi
@@ -323,16 +364,16 @@ setupspacenetwork(){
if ([ $SPACE_VLAN ] && [ "$SPACE_VLAN" != "null" ]); then
NET_VLAN_ID=$(maas $PROFILE vlans create $FABRIC_ID vid=$SPACE_VLAN | jq --raw-output ".id")
if ([ $SPACE_GWAY ] && [ "$SPACE_GWAY" != "null" ]); then
- maas $PROFILE subnets create fabric=$FABRIC_ID cidr=$SPACE_CIDR vid=$VID_ID gateway_ip=$SPACE_GWAY
+ maas $PROFILE subnets create fabric=$FABRIC_ID cidr=$SPACE_CIDR vid=$VID_ID gateway_ip=$SPACE_GWAY || true
else
- maas $PROFILE subnets create fabric=$FABRIC_ID cidr=$SPACE_CIDR vid=$VID_ID
+ maas $PROFILE subnets create fabric=$FABRIC_ID cidr=$SPACE_CIDR vid=$VID_ID || true
fi
NET_FABRIC_VID=$VLAN_ID
else
if ([ $SPACE_GWAY ] && [ "$SPACE_GWAY" != "null" ]); then
- maas $PROFILE subnets create fabric=$FABRIC_ID cidr=$SPACE_CIDR vid="0" gateway_ip=$SPACE_GWAY
+ maas $PROFILE subnets create fabric=$FABRIC_ID cidr=$SPACE_CIDR vid="0" gateway_ip=$SPACE_GWAY || true
else
- maas $PROFILE subnets create fabric=$FABRIC_ID cidr=$SPACE_CIDR vid="0"
+ maas $PROFILE subnets create fabric=$FABRIC_ID cidr=$SPACE_CIDR vid="0" || true
fi
fi
NET_FABRIC_NAME=$(maas $PROFILE subnets read | jq -r ".[] | select(.cidr==\"$SPACE_CIDR\")".vlan.fabric)
@@ -353,7 +394,7 @@ setupspacenetwork(){
NET_FABRIC_ID=$(maas $PROFILE fabric read $NET_FABRIC_NAME | jq -r ".id")
if ([ $NET_FABRIC_ID ] && [ $NET_FABRIC_ID != "null" ]); then
if ([ $JUJU_VLAN_VID ] && [ $JUJU_VLAN_VID != "null" ]); then
- maas $PROFILE vlan update $NET_FABRIC_ID $JUJU_VLAN_VID space=$JUJU_SPACE_ID
+ maas $PROFILE vlan update $NET_FABRIC_ID $JUJU_VLAN_VID space=$JUJU_SPACE_ID || true
fi
fi
if ([ $type == "admin" ]); then
@@ -375,14 +416,36 @@ setupspacenetwork(){
PRIMARY_RACK_CONTROLLER=$(maas $PROFILE rack-controllers read | jq -r '.[0].system_id')
maas $PROFILE vlan update $NET_FABRIC_ID $NET_FABRIC_VID dhcp_on=True primary_rack=$PRIMARY_RACK_CONTROLLER || true
fi
+ elif ([ $type == "public" ] || [ $type == "osapi" ]); then
+ # If we have a network, we create reserve IPS for public IP range
+ if ([ $NET_FABRIC_ID ]); then
+ # Set ranges
+ SUBNET_PREFIX=${SPACE_CIDR::-5}
+ IP_RES_RANGE_LOW="$SUBNET_PREFIX.1"
+ IP_RES_RANGE_HIGH="$SUBNET_PREFIX.39"
+ maas $PROFILE ipranges create type=reserved \
+ start_ip=$IP_RES_RANGE_LOW end_ip=$IP_RES_RANGE_HIGH \
+ comment='This is a reserved range' || true
+ fi
+ else
+ if ([ $NET_FABRIC_ID ]); then
+ # Set ranges
+ SUBNET_PREFIX=${SPACE_CIDR::-5}
+ IP_RES_RANGE_LOW="$SUBNET_PREFIX.1"
+ IP_RES_RANGE_HIGH="$SUBNET_PREFIX.5"
+ maas $PROFILE ipranges create type=reserved \
+ start_ip=$IP_RES_RANGE_LOW end_ip=$IP_RES_RANGE_HIGH \
+ comment='This is a reserved range' || true
+ fi
fi
done
}
addnodes(){
- API_KEY=`sudo maas-region apikey --username=ubuntu`
maas login $PROFILE $API_SERVERMAAS $API_KEY
+ maas $PROFILE maas set-config name=default_min_hwe_kernel value=hwe-16.04-edge || true
+
# make sure there is no machine entry in maas
for m in $(maas $PROFILE machines read | jq -r '.[].system_id')
do
@@ -439,8 +502,8 @@ addnodes(){
virt-install --connect $VIRSHURL --name bootstrap --ram 4098 --cpu $CPU_MODEL --vcpus 2 \
--disk size=20,format=qcow2,bus=virtio,cache=directsync,io=native,pool=default \
- $netw --boot network,hd,menu=off --noautoconsole \
- --print-xml | tee bootstrap
+ $netw --boot network,hd,menu=off --video virtio --noautoconsole --autostart \
+ --accelerate --print-xml | tee bootstrap
if [ "$virtinstall" -eq 1 ]; then
bootstrapmac=`grep "mac address" bootstrap | head -1 | cut -d '"' -f 2`
@@ -452,7 +515,6 @@ addnodes(){
done
fi
virsh -c $VIRSHURL define --file bootstrap
- virsh -c $VIRSHURL autostart bootstrap
rm -f bootstrap
@@ -476,11 +538,11 @@ addnodes(){
virt-install --connect $VIRSHURL --name $NODE_NAME --ram 8192 --cpu $CPU_MODEL --vcpus 4 \
--disk size=120,format=qcow2,bus=virtio,cache=directsync,io=native,pool=default \
- $netw $netw --boot network,hd,menu=off --noautoconsole --print-xml | tee $NODE_NAME
+ $netw $netw --boot network,hd,menu=off --video virtio --noautoconsole --autostart \
+ --accelerate --print-xml | tee $NODE_NAME
nodemac=`grep "mac address" $NODE_NAME | head -1 | cut -d '"' -f 2`
virsh -c $VIRSHURL define --file $NODE_NAME
- virsh -c $VIRSHURL autostart $NODE_NAME
rm -f $NODE_NAME
maas $PROFILE machines create autodetect_nodegroup='yes' name=$NODE_NAME \
@@ -552,10 +614,12 @@ sleep 30
setupspacenetwork
-#just make sure rack controller has been synced and import only
-# just whether images have been imported or not.
-sudo ./maas-reconfigure-region.sh $MAAS_IP
-sleep 120
+if [ "$snapinstall" -eq 0 ]; then
+ sudo sed -i 's/localhost/'$MAAS_IP'/g' /etc/maas/rackd.conf
+ sudo service maas-rackd restart
+ sudo service maas-regiond restart
+ sleep 120
+fi
# Let's add the nodes now. Currently works only for virtual deployment.
addnodes
@@ -567,7 +631,6 @@ echo_info "Initial deployment of MAAS finished"
#maas $PROFILE sshkeys new key="`cat ./maas/sshkeys/DominoKey.pub`"
addcredential() {
- API_KEY=`sudo maas-region apikey --username=ubuntu`
controllername=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml`
cloudname=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml`
@@ -597,7 +660,6 @@ addcloud() {
#
# Enable MAAS nodes interfaces
#
-API_KEY=`sudo maas-region apikey --username=ubuntu`
maas login $PROFILE $API_SERVERMAAS $API_KEY
if [ -e ./labconfig.json ]; then
@@ -688,12 +750,8 @@ if [ -e ./labconfig.json ]; then
fi
# Add the cloud and controller credentials for MAAS for that lab.
-jujuver=`juju --version`
-
-if [[ "$jujuver" > "2" ]]; then
- addcloud
- addcredential
-fi
+addcloud
+addcredential
#
# End of scripts
diff --git a/ci/clean.sh b/ci/clean.sh
index 5005b594..1f3ef54f 100755
--- a/ci/clean.sh
+++ b/ci/clean.sh
@@ -2,52 +2,22 @@
set -ex
-jujuver=`juju --version`
-
-if [[ "$jujuver" > "2" ]]; then
- if [ ! -d labconfig.yaml ]; then
- cp ~/joid_config/labconfig.yaml ./labconfig.yaml || true
- if [ -d $HOME/joid_config/deployconfig.yaml ]; then
- cp ~/joid_config/deployconfig.yaml ./deployconfig.yaml || true
- else
- python genDeploymentConfig.py -l labconfig.yaml > deployconfig.yaml
- fi
- fi
-else
- if [ ! -d environments.yaml ]; then
- cp ~/joid_config/environments.yaml ./environments.yaml || true
- cp ~/.juju/environments.yaml ./environments.yaml || true
- fi
-fi
-
-
-if [[ "$jujuver" > "2" ]]; then
- controllername=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml`
- cloudname=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml`
- juju destroy-controller $controllername --destroy-all-models -y || true
-# juju kill-controller $controllername --timeout 10s -y || true
- rm -rf precise
- rm -rf trusty
- rm -rf xenial
- rm -rf ~/joid_config/admin-openrc
- sleep 10
- sudo sysctl -w vm.drop_caches=3
-elif [ -d $HOME/.juju/environments ]; then
- echo " " > status.txt
- juju status &>>status.txt || true
- if [ "$(grep -c "environment is not bootstrapped" status.txt )" -ge 1 ]; then
- echo " environment is not bootstrapped ..."
+if [ ! -d labconfig.yaml ]; then
+ cp ~/joid_config/labconfig.yaml ./labconfig.yaml || true
+ if [ -d $HOME/joid_config/deployconfig.yaml ]; then
+ cp ~/joid_config/deployconfig.yaml ./deployconfig.yaml || true
else
- echo " environment is bootstrapped ..."
- jujuenv=`juju status | grep environment | cut -d ":" -f 2`
- juju destroy-environment $jujuenv -y || true
+ python genDeploymentConfig.py -l labconfig.yaml > deployconfig.yaml
fi
- rm -rf precise
- rm -rf trusty
- rm -rf xenial
- rm -rf $HOME/.juju/j*
- rm -rf $HOME/.juju/.deployer-store-cache
- rm -rf $HOME/.juju/environments
- rm -rf $HOME/.juju/ssh
- sudo sysctl -w vm.drop_caches=3
fi
+
+controllername=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml`
+cloudname=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml`
+juju destroy-controller $controllername --destroy-all-models -y || true
+#juju kill-controller $controllername --timeout 10s -y || true
+rm -rf precise
+rm -rf trusty
+rm -rf xenial
+rm -rf ~/joid_config/admin-openrc
+sleep 10
+sudo sysctl -w vm.drop_caches=3
diff --git a/ci/cleanmaas.sh b/ci/cleanmaas.sh
index 41a74196..1cad80dd 100755
--- a/ci/cleanmaas.sh
+++ b/ci/cleanmaas.sh
@@ -2,10 +2,7 @@
set -ex
-maasver=$(apt-cache policy maas | grep Installed | cut -d ':' -f 2 | sed -e 's/^[ ]*//')
-
-if [[ "$maasver" > "2" ]]; then
- echo "removing existing maas ..."
- sudo apt-get purge maas maas-cli maas-common maas-dhcp maas-dns maas-proxy maas-rack-controller maas-region-api maas-region-controller -y
- sudo rm -rf /var/lib/maas
-fi
+echo "removing existing maas ..."
+sudo apt-get purge maas maas-cli maas-common maas-dhcp maas-dns maas-proxy maas-rack-controller maas-region-api maas-region-controller -y
+sudo rm -rf /var/lib/maas
+sudo snap remove maas || true
diff --git a/ci/config_tpl/juju2/bundle_tpl/ceph.yaml b/ci/config_tpl/juju2/bundle_tpl/ceph.yaml
index 0568b38a..b8948e61 100644
--- a/ci/config_tpl/juju2/bundle_tpl/ceph.yaml
+++ b/ci/config_tpl/juju2/bundle_tpl/ceph.yaml
@@ -33,11 +33,7 @@
ceph-osd:
charm: "./{{ ubuntu.release }}/ceph-osd"
{% if os.hyperconverged %}
-{% if opnfv.units >= 3 %}
- num_units: {{ unit_ceph_qty() }}
-{% else %}
num_units: {{ opnfv.units }}
-{% endif %}
{% else %}
num_units: 3
{% endif %}
@@ -57,15 +53,9 @@
{% endif %}
to:
{% if os.hyperconverged %}
-{% if opnfv.units >= 3 %}
-{% for unit_id in range(0, 3) %}
- - "nodes/{{ unit_id }}"
-{% endfor %}
-{% else %}
- {% for unit_id in range(0, opnfv.units) %}
+{% for unit_id in range(0, opnfv.units) %}
- "nodes/{{ unit_id }}"
- {% endfor %}
-{% endif %}
+{% endfor %}
{% else %}
{% if os.ha.mode == 'ha' %}
{% for unit_id in range(0, 3) %}
diff --git a/ci/config_tpl/juju2/bundle_tpl/keystone.yaml b/ci/config_tpl/juju2/bundle_tpl/keystone.yaml
index 233d1d72..1c6b78f6 100644
--- a/ci/config_tpl/juju2/bundle_tpl/keystone.yaml
+++ b/ci/config_tpl/juju2/bundle_tpl/keystone.yaml
@@ -17,9 +17,7 @@
region: *openstack-region
admin-role: {{ os.admin.role }}
keystone-admin-role: {{ os.admin.role }}
-{% if os.network.controller != 'ocl' %}
preferred-api-version: 3
-{% endif %}
{% if os.network.ipv6 %}
prefer-ipv6: {{ os.network.ipv6 }}
{% endif %}
diff --git a/ci/config_tpl/juju2/bundle_tpl/neutron-api.yaml b/ci/config_tpl/juju2/bundle_tpl/neutron-api.yaml
index e59530c1..823e251a 100644
--- a/ci/config_tpl/juju2/bundle_tpl/neutron-api.yaml
+++ b/ci/config_tpl/juju2/bundle_tpl/neutron-api.yaml
@@ -37,6 +37,9 @@
{% elif os.network.controller == 'onos' %}
flat-network-providers: physnet1
manage-neutron-plugin-legacy-mode: False
+{% elif os.network.controller == 'ocl' %}
+ flat-network-providers: physnet1
+ manage-neutron-plugin-legacy-mode: False
{% endif %}
{% if os.network.dvr %}
enable-dvr: true
diff --git a/ci/config_tpl/juju2/bundlek8_tpl/bundle.yaml b/ci/config_tpl/juju2/bundlek8_tpl/bundle.yaml
index b4ed14ac..6d777720 100644
--- a/ci/config_tpl/juju2/bundlek8_tpl/bundle.yaml
+++ b/ci/config_tpl/juju2/bundlek8_tpl/bundle.yaml
@@ -23,10 +23,14 @@
{% if k8.network.controller == 'ovn' %}
{% include 'ovn.yaml' %}
+{% elif k8.network.controller == 'canal' %}
+{% include 'canal.yaml' %}
{% else %}
{% include 'flannel.yaml' %}
{% endif %}
-
+{% if k8.feature.storage == 'ceph' %}
+{% include 'ceph.yaml' %}
+{% endif %}
relations:
- [ 'ntp:juju-info', 'nodes:juju-info' ]
diff --git a/ci/config_tpl/juju2/bundlek8_tpl/canal.yaml b/ci/config_tpl/juju2/bundlek8_tpl/canal.yaml
new file mode 100644
index 00000000..2b130652
--- /dev/null
+++ b/ci/config_tpl/juju2/bundlek8_tpl/canal.yaml
@@ -0,0 +1,8 @@
+
+ canal:
+ charm: "cs:~containers/canal-6"
+{% if os.service.bindings %}
+ bindings:
+ "": *oam-space
+{% endif %}
+
diff --git a/ci/config_tpl/juju2/bundlek8_tpl/ceph.yaml b/ci/config_tpl/juju2/bundlek8_tpl/ceph.yaml
new file mode 100644
index 00000000..56149033
--- /dev/null
+++ b/ci/config_tpl/juju2/bundlek8_tpl/ceph.yaml
@@ -0,0 +1,35 @@
+
+ ceph-mon:
+ charm: "./{{ ubuntu.release }}/ceph-mon"
+ num_units: {{ unit_ceph_qty() }}
+{% if os.service.bindings %}
+ bindings:
+ "": *oam-space
+ public: *ceph-public-space
+ cluster: *ceph-cluster-space
+{% endif %}
+ options:
+ expected-osd-count: {{ unit_ceph_qty() }}
+ to:
+{% for unit_id in to_select(unit_ceph_qty()) %}
+ - "lxd:nodes/{{ unit_id }}"
+{% endfor %}
+
+ ceph-osd:
+ charm: "./{{ ubuntu.release }}/ceph-osd"
+ num_units: {{ opnfv.units }}
+{% if os.service.bindings %}
+ bindings:
+ "": *oam-space
+ public: *ceph-public-space
+ cluster: *ceph-cluster-space
+{% endif %}
+ options:
+ osd-devices: *osd-devices
+ osd-journal: *osd-journal
+ osd-reformat: 'yes'
+ to:
+ {% for unit_id in range(0, opnfv.units) %}
+ - "nodes/{{ unit_id }}"
+ {% endfor %}
+
diff --git a/ci/config_tpl/juju2/bundlek8_tpl/relations.yaml b/ci/config_tpl/juju2/bundlek8_tpl/relations.yaml
index 44018201..602fbaad 100644
--- a/ci/config_tpl/juju2/bundlek8_tpl/relations.yaml
+++ b/ci/config_tpl/juju2/bundlek8_tpl/relations.yaml
@@ -10,6 +10,10 @@
{% if k8.network.controller == 'ovn' %}
- [ 'ovn:cni', 'kubernetes-master:cni' ]
- [ 'ovn:cni', 'kubernetes-worker:cni' ]
+{% elif k8.network.controller == 'canal' %}
+ - [ 'canal:etcd', 'etcd:db' ]
+ - [ 'canal:cni', 'kubernetes-master:cni' ]
+ - [ 'canal:cni', 'kubernetes-worker:cni' ]
{% else %}
- [ 'flannel:etcd', 'etcd:db' ]
- [ 'flannel:cni', 'kubernetes-master:cni' ]
@@ -21,4 +25,7 @@
- [ 'kubernetes-worker:kube-api-endpoint', 'kubeapi-load-balancer:website' ]
- [ 'kubeapi-load-balancer:certificates', 'easyrsa:client' ]
{% endif %}
-
+{% if k8.feature.storage == 'ceph' %}
+ - [ 'ceph-osd:mon', 'ceph-mon:osd' ]
+ - [ 'ceph-mon:admin', 'kubernetes-master:ceph-storage' ]
+{% endif %}
diff --git a/ci/config_tpl/juju2/bundlek8_tpl/spaces.yaml b/ci/config_tpl/juju2/bundlek8_tpl/spaces.yaml
index 17dbd7da..01afb34d 100644
--- a/ci/config_tpl/juju2/bundlek8_tpl/spaces.yaml
+++ b/ci/config_tpl/juju2/bundlek8_tpl/spaces.yaml
@@ -1,5 +1,24 @@
-
-
# OAM - Operations, Administration and Maintenance
oam-space: &oam-space internal-api
+ # CEPH configuration
+ # CEPH access network
+{% if opnfv.spaces_dict.storageaccess is defined %}
+ ceph-public-space: &ceph-public-space storage-access-space
+ ceph-access-constr: &ceph-access-constr spaces=storage-access-space
+{% else %}
+ ceph-public-space: &ceph-public-space internal-api
+ ceph-access-constr: &ceph-access-constr spaces=internal-api
+{% endif %}
+
+ # CEPH replication network
+{% if opnfv.spaces_dict.storage is defined %}
+ ceph-cluster-space: &ceph-cluster-space storage-cluster
+{% else %}
+ ceph-cluster-space: &ceph-cluster-space internal-api
+{% endif %}
+
+ # CEPH OSD and journal devices; temporary workaround for #1674148
+ osd-devices: &osd-devices {{ opnfv.storage_dict.ceph.disk }}
+ osd-journal: &osd-journal
+
diff --git a/ci/default_deployment_config.yaml b/ci/default_deployment_config.yaml
index 0ea2a438..0a0f055b 100644
--- a/ci/default_deployment_config.yaml
+++ b/ci/default_deployment_config.yaml
@@ -1,10 +1,10 @@
ubuntu:
release: xenial
os:
- release: ocata
+ release: pike
git_repo:
origin_git: False
- branch: ocata
+ branch: pike
hyperconverged: True
ha:
mode: ha
@@ -39,5 +39,6 @@ os:
k8:
feature:
loadbalancer: False
+ storage: none
network:
controller: nosdn
diff --git a/ci/depMAAS.py b/ci/depMAAS.py
index 5592bc46..3a16b1e4 100644
--- a/ci/depMAAS.py
+++ b/ci/depMAAS.py
@@ -31,14 +31,7 @@ labconfig_file = options.lab
#
# Set Path and configs path
#
-
-# Capture our current directory
-jujuver = subprocess.check_output(["juju", "--version"])
-
-if LooseVersion(jujuver) >= LooseVersion('2'):
- TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/maas_tpl'
-else:
- TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/maas2/maas_tpl'
+TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/maas_tpl'
HOME = os.environ['HOME']
USER = os.environ['USER']
diff --git a/ci/deploy.sh b/ci/deploy.sh
index a6a1b182..ab3e5e34 100755
--- a/ci/deploy.sh
+++ b/ci/deploy.sh
@@ -9,7 +9,7 @@ source common/tools.sh
opnfvsdn=nosdn
opnfvtype=noha
-openstack=ocata
+openstack=pike
opnfvlab=default
opnfvlabfile=
opnfvrel=e
@@ -23,7 +23,7 @@ maasinstall=0
usage() { echo "Usage: $0
[-s|--sdn <nosdn|odl|opencontrail>]
[-t|--type <noha|ha|tip>]
- [-o|--openstack <ocata>]
+ [-o|--openstack <ocata|pike>]
[-l|--lab <default|custom>]
[-f|--feature <ipv6,dpdk,lxd,dvr,openbaton,multus>]
[-d|--distro <xenial>]
@@ -227,7 +227,7 @@ deploy() {
./cleanvm.sh || true
if [ "$virtinstall" -eq 1 ]; then
- ./00-maasdeploy.sh virtual
+ ./03-maasdeploy.sh virtual
else
if [ -z "$labfile" ]; then
if [ ! -e ./labconfig.yaml ]; then
@@ -248,7 +248,7 @@ deploy() {
cp $labfile ./labconfig.yaml
fi
- ./00-maasdeploy.sh custom
+ ./03-maasdeploy.sh custom
fi
fi
@@ -318,20 +318,32 @@ juju status --format=tabular
# translate bundle.yaml to json
python -c 'import sys, yaml, json; json.dump(yaml.load(sys.stdin), sys.stdout, indent=4)' < bundles.yaml > bundles.json
-jujuver=`juju --version`
-
# Configuring deployment
if ([ $opnfvmodel == "openstack" ]); then
+ if ([ $opnfvsdn == "ocl" ]); then
+ echo_info "Patching OpenContrail controller container"
+ juju run --application contrail-controller sudo docker cp contrail-controller:/etc/contrail/vnc_api_lib.ini /tmp
+ juju run --application contrail-controller cp /tmp/vnc_api_lib.ini /tmp/vnc_api_lib.ini2
+ juju run --application contrail-controller 'echo "AUTHN_DOMAIN = admin_domain" >> /tmp/vnc_api_lib.ini2'
+ juju run --application contrail-controller sudo docker cp /tmp/vnc_api_lib.ini2 contrail-controller:/etc/contrail/vnc_api_lib.ini
+ juju run --application contrail-controller sudo docker exec contrail-controller service contrail-api restart
+
+ juju run --application contrail-controller sudo docker cp /tmp/vnc_api_lib.ini2 contrail-analytics:/etc/contrail/vnc_api_lib.ini
+ echo_info "Wait for OpenContrail components to stabilize"
+ sleep 600
+ fi
+
echo_info "Configuring OpenStack deployment"
./openstack.sh "$opnfvsdn" "$opnfvlab" "$opnfvdistro" "$openstack" || true
# creating heat domain after pushing the public API into /etc/hosts
- if [[ "$jujuver" > "2" ]]; then
- status=`juju run-action heat/0 domain-setup`
+ status=`juju run-action heat/0 domain-setup`
+ echo $status
+ if ([ $opnftype == "ha" ]); then
+ status=`juju run-action heat/1 domain-setup`
echo $status
- else
- status=`juju action do heat/0 domain-setup`
+ status=`juju run-action heat/2 domain-setup`
echo $status
fi
diff --git a/ci/genBundle.py b/ci/genBundle.py
index 1bd09bb0..ffe9cb8f 100644
--- a/ci/genBundle.py
+++ b/ci/genBundle.py
@@ -35,13 +35,7 @@ labconfig_file = options.lab
#
scenarioconfig_file = 'default_deployment_config.yaml'
-# Capture our current directory
-jujuver = subprocess.check_output(["juju", "--version"])
-
-if LooseVersion(jujuver) >= LooseVersion('2'):
- TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/juju2/bundle_tpl'
-else:
- TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/bundle_tpl'
+TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/juju2/bundle_tpl'
#
# Prepare variables
diff --git a/ci/genDeploymentConfig.py b/ci/genDeploymentConfig.py
index 0a21fffa..0d3a1c95 100644
--- a/ci/genDeploymentConfig.py
+++ b/ci/genDeploymentConfig.py
@@ -30,14 +30,7 @@ labconfig_file = options.lab
#
# Set Path and configs path
#
-
-# Capture our current directory
-jujuver = subprocess.check_output(["juju", "--version"])
-
-if LooseVersion(jujuver) >= LooseVersion('2'):
- TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/juju2'
-else:
- TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl'
+TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/juju2'
HOME = os.environ['HOME']
USER = os.environ['USER']
diff --git a/ci/genK8Bundle.py b/ci/genK8Bundle.py
index 2f0b63d5..688d18eb 100644
--- a/ci/genK8Bundle.py
+++ b/ci/genK8Bundle.py
@@ -35,9 +35,6 @@ labconfig_file = options.lab
#
scenarioconfig_file = 'default_deployment_config.yaml'
-# Capture our current directory
-jujuver = subprocess.check_output(["juju", "--version"])
-
TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/juju2/bundlek8_tpl'
#
@@ -164,6 +161,8 @@ if 'dpdk' in features:
config['os']['network']['dpdk'] = True
if 'lb' in features:
config['k8']['feature']['loadbalancer'] = True
+if 'ceph' in features:
+ config['k8']['feature']['storage'] = 'ceph'
# change ha mode
config['k8']['network']['controller'] = sdn
diff --git a/ci/genMAASConfig.py b/ci/genMAASConfig.py
index 9417f71c..8a3f5571 100644
--- a/ci/genMAASConfig.py
+++ b/ci/genMAASConfig.py
@@ -31,14 +31,7 @@ labconfig_file = options.lab
#
# Set Path and configs path
#
-
-# Capture our current directory
-jujuver = subprocess.check_output(["juju", "--version"])
-
-if LooseVersion(jujuver) >= LooseVersion('2'):
- TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/maas2/maas_tpl'
-else:
- TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/maas_tpl'
+TPL_DIR = os.path.dirname(os.path.abspath(__file__))+'/config_tpl/maas2/maas_tpl'
HOME = os.environ['HOME']
USER = os.environ['USER']
diff --git a/ci/kubernetes/fetch-charms.sh b/ci/kubernetes/fetch-charms.sh
index 255f1eb7..4ab94a98 100755
--- a/ci/kubernetes/fetch-charms.sh
+++ b/ci/kubernetes/fetch-charms.sh
@@ -10,5 +10,6 @@ function build {
}
# openstack
-bzr branch lp:~narindergupta/opnfv/ntp $distro/ntp
-
+charm pull cs:ntp $distro/ntp
+git clone -b stable/17.11 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon
+git clone -b stable/17.11 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd
diff --git a/ci/nosdn/fetch-charms.sh b/ci/nosdn/fetch-charms.sh
index 48feb590..7ada1697 100755
--- a/ci/nosdn/fetch-charms.sh
+++ b/ci/nosdn/fetch-charms.sh
@@ -12,31 +12,31 @@ function build {
# openstack
bzr branch lp:~narindergupta/charms/trusty/promise/trunk $distro/promise
-git clone -b stable/17.08 https://github.com/openstack/charm-hacluster.git $distro/hacluster
-git clone -b stable/17.08 https://github.com/openstack/charm-ceilometer.git $distro/ceilometer
-git clone -b stable/17.08 https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent
-git clone -b stable/17.08 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon
-git clone -b stable/17.08 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd
-git clone -b stable/17.08 https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw
-git clone -b stable/17.08 https://github.com/openstack/charm-cinder.git $distro/cinder
-git clone -b stable/17.08 https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph
-git clone -b stable/17.08 https://github.com/openstack/charm-glance.git $distro/glance
-git clone -b stable/17.08 https://github.com/openstack/charm-keystone.git $distro/keystone
-git clone -b stable/17.08 https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster
-git clone -b stable/17.08 https://github.com/openstack/charm-neutron-api.git $distro/neutron-api
-git clone -b stable/17.08 https://github.com/openstack/charm-neutron-gateway.git $distro/neutron-gateway
-git clone -b stable/17.08 https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch
-git clone -b stable/17.08 https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller
-git clone -b stable/17.08 https://github.com/openstack/charm-nova-compute.git $distro/nova-compute
-git clone -b stable/17.08 https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard
-git clone -b stable/17.08 https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server
-git clone -b stable/17.08 https://github.com/openstack/charm-heat.git $distro/heat
-git clone -b stable/17.08 https://github.com/openstack/charm-lxd.git $distro/lxd
+git clone -b stable/17.11 https://github.com/openstack/charm-hacluster.git $distro/hacluster
+git clone -b stable/17.11 https://github.com/openstack/charm-ceilometer.git $distro/ceilometer
+git clone -b stable/17.11 https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent
+git clone -b stable/17.11 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon
+git clone -b stable/17.11 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd
+git clone -b stable/17.11 https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw
+git clone -b stable/17.11 https://github.com/openstack/charm-cinder.git $distro/cinder
+git clone -b stable/17.11 https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph
+git clone -b stable/17.11 https://github.com/openstack/charm-glance.git $distro/glance
+git clone -b stable/17.11 https://github.com/openstack/charm-keystone.git $distro/keystone
+git clone -b stable/17.11 https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster
+git clone -b stable/17.11 https://github.com/openstack/charm-neutron-api.git $distro/neutron-api
+git clone -b stable/17.11 https://github.com/openstack/charm-neutron-gateway.git $distro/neutron-gateway
+git clone -b stable/17.11 https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch
+git clone -b stable/17.11 https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller
+git clone -b stable/17.11 https://github.com/openstack/charm-nova-compute.git $distro/nova-compute
+git clone -b stable/17.11 https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard
+git clone -b stable/17.11 https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server
+git clone -b stable/17.11 https://github.com/openstack/charm-heat.git $distro/heat
+git clone -b stable/17.11 https://github.com/openstack/charm-lxd.git $distro/lxd
git clone https://github.com/openbaton/juju-charm.git $distro/openbaton
charm pull cs:$distro/aodh $distro/aodh
charm pull cs:$distro/mongodb $distro/mongodb
-charm pull cs:$distro/ntp $distro/ntp
+charm pull cs:ntp $distro/ntp
charm pull cs:$distro/haproxy $distro/haproxy
charm pull cs:~narindergupta/congress-1 $distro/congress
diff --git a/ci/odl/fetch-charms.sh b/ci/odl/fetch-charms.sh
index 9b7adaed..cf8c6dc8 100755
--- a/ci/odl/fetch-charms.sh
+++ b/ci/odl/fetch-charms.sh
@@ -12,34 +12,34 @@ function build {
# openstack
bzr branch lp:~narindergupta/charms/trusty/promise/trunk $distro/promise
-git clone -b stable/17.08 https://github.com/openstack/charm-hacluster.git $distro/hacluster
-git clone -b stable/17.08 https://github.com/openstack/charm-ceilometer.git $distro/ceilometer
-git clone -b stable/17.08 https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent
-git clone -b stable/17.08 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon
-git clone -b stable/17.08 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd
-git clone -b stable/17.08 https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw
-git clone -b stable/17.08 https://github.com/openstack/charm-cinder.git $distro/cinder
-git clone -b stable/17.08 https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph
-git clone -b stable/17.08 https://github.com/openstack/charm-glance.git $distro/glance
-git clone -b stable/17.08 https://github.com/openstack/charm-keystone.git $distro/keystone
-git clone -b stable/17.08 https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster
-git clone -b stable/17.08 https://github.com/openstack/charm-neutron-api.git $distro/neutron-api
-git clone -b stable/17.08 https://github.com/openstack/charm-neutron-gateway.git $distro/neutron-gateway
-git clone -b stable/17.08 https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch
-git clone -b stable/17.08 https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller
-git clone -b stable/17.08 https://github.com/openstack/charm-nova-compute.git $distro/nova-compute
-git clone -b stable/17.08 https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard
-git clone -b stable/17.08 https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server
-git clone -b stable/17.08 https://github.com/openstack/charm-heat.git $distro/heat
-git clone -b stable/17.08 https://github.com/openstack/charm-lxd.git $distro/lxd
-git clone -b stable/17.08 https://github.com/openstack/charm-odl-controller.git $distro/odl-controller
-git clone -b stable/17.08 https://github.com/openstack/charm-neutron-api-odl.git $distro/neutron-api-odl
-git clone -b stable/17.08 https://github.com/openstack/charm-openvswitch-odl.git $distro/openvswitch-odl
+git clone -b stable/17.11 https://github.com/openstack/charm-hacluster.git $distro/hacluster
+git clone -b stable/17.11 https://github.com/openstack/charm-ceilometer.git $distro/ceilometer
+git clone -b stable/17.11 https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent
+git clone -b stable/17.11 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon
+git clone -b stable/17.11 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd
+git clone -b stable/17.11 https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw
+git clone -b stable/17.11 https://github.com/openstack/charm-cinder.git $distro/cinder
+git clone -b stable/17.11 https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph
+git clone -b stable/17.11 https://github.com/openstack/charm-glance.git $distro/glance
+git clone -b stable/17.11 https://github.com/openstack/charm-keystone.git $distro/keystone
+git clone -b stable/17.11 https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster
+git clone -b stable/17.11 https://github.com/openstack/charm-neutron-api.git $distro/neutron-api
+git clone -b stable/17.11 https://github.com/openstack/charm-neutron-gateway.git $distro/neutron-gateway
+git clone -b stable/17.11 https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch
+git clone -b stable/17.11 https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller
+git clone -b stable/17.11 https://github.com/openstack/charm-nova-compute.git $distro/nova-compute
+git clone -b stable/17.11 https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard
+git clone -b stable/17.11 https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server
+git clone -b stable/17.11 https://github.com/openstack/charm-heat.git $distro/heat
+git clone -b stable/17.11 https://github.com/openstack/charm-lxd.git $distro/lxd
+git clone -b stable/17.11 https://github.com/openstack/charm-odl-controller.git $distro/odl-controller
+git clone -b stable/17.11 https://github.com/openstack/charm-neutron-api-odl.git $distro/neutron-api-odl
+git clone -b stable/17.11 https://github.com/openstack/charm-openvswitch-odl.git $distro/openvswitch-odl
git clone https://github.com/openbaton/juju-charm.git $distro/openbaton
charm pull cs:$distro/aodh $distro/aodh
charm pull cs:$distro/mongodb $distro/mongodb
-charm pull cs:$distro/ntp $distro/ntp
+charm pull cs:ntp $distro/ntp
#pulling scaleio charms.
charm pull cs:~cloudscaling/scaleio-mdm $distro/scaleio-mdm
diff --git a/ci/onos/fetch-charms.sh b/ci/onos/fetch-charms.sh
index 3ffc628f..fc093cdb 100755
--- a/ci/onos/fetch-charms.sh
+++ b/ci/onos/fetch-charms.sh
@@ -12,29 +12,29 @@ function build {
# openstack
bzr branch lp:~narindergupta/charms/trusty/promise/trunk $distro/promise
bzr branch lp:~billy-olsen/charms/xenial/mongodb/trunk $distro/mongodb
-bzr branch lp:~narindergupta/opnfv/ntp $distro/ntp
-git clone -b stable/17.08 https://github.com/openstack/charm-hacluster.git $distro/hacluster
-git clone -b stable/17.08 https://github.com/openstack/charm-ceilometer.git $distro/ceilometer
-git clone -b stable/17.08 https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent
-git clone -b stable/17.08 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon
-git clone -b stable/17.08 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd
-git clone -b stable/17.08 https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw
-git clone -b stable/17.08 https://github.com/openstack/charm-cinder.git $distro/cinder
-git clone -b stable/17.08 https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph
-git clone -b stable/17.08 https://github.com/openstack/charm-glance.git $distro/glance
-git clone -b stable/17.08 https://github.com/openstack/charm-keystone.git $distro/keystone
-git clone -b stable/17.08 https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster
-git clone -b stable/17.08 https://github.com/openstack/charm-neutron-api.git $distro/neutron-api
-git clone -b stable/17.08 https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch
-git clone -b stable/17.08 https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller
-git clone -b stable/17.08 https://github.com/openstack/charm-nova-compute.git $distro/nova-compute
-git clone -b stable/17.08 https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard
-git clone -b stable/17.08 https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server
-git clone -b stable/17.08 https://github.com/openstack/charm-heat.git $distro/heat
+git clone -b stable/17.11 https://github.com/openstack/charm-hacluster.git $distro/hacluster
+git clone -b stable/17.11 https://github.com/openstack/charm-ceilometer.git $distro/ceilometer
+git clone -b stable/17.11 https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent
+git clone -b stable/17.11 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon
+git clone -b stable/17.11 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd
+git clone -b stable/17.11 https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw
+git clone -b stable/17.11 https://github.com/openstack/charm-cinder.git $distro/cinder
+git clone -b stable/17.11 https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph
+git clone -b stable/17.11 https://github.com/openstack/charm-glance.git $distro/glance
+git clone -b stable/17.11 https://github.com/openstack/charm-keystone.git $distro/keystone
+git clone -b stable/17.11 https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster
+git clone -b stable/17.11 https://github.com/openstack/charm-neutron-api.git $distro/neutron-api
+git clone -b stable/17.11 https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch
+git clone -b stable/17.11 https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller
+git clone -b stable/17.11 https://github.com/openstack/charm-nova-compute.git $distro/nova-compute
+git clone -b stable/17.11 https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard
+git clone -b stable/17.11 https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server
+git clone -b stable/17.11 https://github.com/openstack/charm-heat.git $distro/heat
git clone https://github.com/openstack/charm-lxd.git $distro/lxd
git clone https://github.com/openbaton/juju-charm.git $distro/openbaton
+charm pull cs:ntp $distro/ntp
charm pull cs:$distro/aodh $distro/aodh
charm pull cs:~narindergupta/congress-1 $distro/congress
diff --git a/ci/opencontrail/fetch-charms.sh b/ci/opencontrail/fetch-charms.sh
index 2a88ba63..62fbbd6b 100755
--- a/ci/opencontrail/fetch-charms.sh
+++ b/ci/opencontrail/fetch-charms.sh
@@ -35,7 +35,7 @@ git clone -b stable/17.08 https://github.com/openstack/charm-lxd.git $distro/lxd
git clone https://github.com/openbaton/juju-charm.git $distro/openbaton
charm pull cs:$distro/mongodb $distro/mongodb
-charm pull cs:$distro/ntp $distro/ntp
+charm pull cs:ntp $distro/ntp
charm pull cs:$distro/aodh $distro/aodh
charm pull cs:~free.ekanayaka/xenial/haproxy-1 $distro/haproxy
charm pull cs:~narindergupta/congress-1 $distro/congress
diff --git a/ci/openstack.sh b/ci/openstack.sh
index a32bb998..3c8f9757 100755
--- a/ci/openstack.sh
+++ b/ci/openstack.sh
@@ -17,8 +17,6 @@ opnfvlab=$2
opnfvdistro=$3
opnfvos=$4
-jujuver=`juju --version`
-
if [ -f ./deployconfig.yaml ];then
EXTERNAL_NETWORK=`grep floating-ip-range deployconfig.yaml | cut -d ' ' -f 4 `
@@ -49,38 +47,22 @@ update_gw_mac() {
## get gateway mac
EXTNET_GW_MAC=$(juju ssh nova-compute/0 "arp -a ${EXTNET_GW} | grep -Eo '([0-9a-fA-F]{2})(([/\s:-][0-9a-fA-F]{2}){5})'")
## set external gateway mac in onos
- if [[ "$jujuver" < "2" ]]; then
- juju set onos-controller gateway-mac=$EXTNET_GW_MAC
- else
- juju config onos-controller gateway-mac=$EXTNET_GW_MAC
- fi
+ juju config onos-controller gateway-mac=$EXTNET_GW_MAC
}
unitAddress() {
- if [[ "$jujuver" < "2" ]]; then
- juju status --format yaml | python -c "import yaml; import sys; print yaml.load(sys.stdin)[\"services\"][\"$1\"][\"units\"][\"$1/$2\"][\"public-address\"]" 2> /dev/null
- else
- juju status --format yaml | python -c "import yaml; import sys; print yaml.load(sys.stdin)[\"applications\"][\"$1\"][\"units\"][\"$1/$2\"][\"public-address\"]" 2> /dev/null
- fi
+ juju status --format yaml | python -c "import yaml; import sys; print yaml.load(sys.stdin)[\"applications\"][\"$1\"][\"units\"][\"$1/$2\"][\"public-address\"]" 2> /dev/null
}
unitMachine() {
- if [[ "$jujuver" < "2" ]]; then
- juju status --format yaml | python -c "import yaml; import sys; print yaml.load(sys.stdin)[\"services\"][\"$1\"][\"units\"][\"$1/$2\"][\"machine\"]" 2> /dev/null
- else
- juju status --format yaml | python -c "import yaml; import sys; print yaml.load(sys.stdin)[\"applications\"][\"$1\"][\"units\"][\"$1/$2\"][\"machine\"]" 2> /dev/null
- fi
+ juju status --format yaml | python -c "import yaml; import sys; print yaml.load(sys.stdin)[\"applications\"][\"$1\"][\"units\"][\"$1/$2\"][\"machine\"]" 2> /dev/null
}
keystoneIp() {
if [ $(juju status keystone --format=short | grep " keystone"|wc -l) == 1 ];then
unitAddress keystone 0
else
- if [[ "$jujuver" < "2" ]]; then
- juju get keystone | python -c "import yaml; import sys; print yaml.load(sys.stdin)['settings']['vip']['value']" | cut -d " " -f 1
- else
- juju config keystone | python -c "import yaml; import sys; print yaml.load(sys.stdin)['settings']['vip']['value']" | cut -d " " -f 1
- fi
+ juju config keystone | python -c "import yaml; import sys; print yaml.load(sys.stdin)['settings']['vip']['value']" | cut -d " " -f 1
fi
}
@@ -90,11 +72,7 @@ create_openrc() {
mkdir -m 0700 -p cloud
keystoneIp=$(keystoneIp)
- if [[ "$jujuver" < "2" ]]; then
- adminPasswd=$(juju get keystone | grep admin-password -A 5 | grep value | awk '{print $2}' 2> /dev/null)
- else
- adminPasswd=$(juju config keystone | grep admin-password -A 5 | grep value | awk '{print $2}' 2> /dev/null)
- fi
+ adminPasswd=$(juju config keystone | python -c "import yaml; import sys; print yaml.load(sys.stdin)['settings']['admin-password']['value']" | cut -d " " -f 1)
v3api=`juju config keystone preferred-api-version`
@@ -138,6 +116,7 @@ export OS_PROJECT_NAME=$3
export OS_PASSWORD=$2
export OS_IDENTITY_API_VERSION=3
export OS_REGION_NAME=$5
+export OS_INTERFACE=public
#export OS_INSECURE=true
#export OS_CASSL=~/joid_config/ca.pem
EOF
@@ -167,22 +146,22 @@ echo_info "Creating external network with neutron"
if [ "onos" == "$opnfvsdn" ]; then
launch_eth
- neutron net-show ext-net > /dev/null 2>&1 || neutron net-create ext-net \
- --router:external=True
+ openstack network show ext-net > /dev/null 2>&1 || openstack network create \
+ --external --share --enable ext-net
elif [ "ocl" == "$opnfvsdn" ]; then
- neutron net-show ext-net > /dev/null 2>&1 || neutron net-create ext-net \
- --router:external=True
+ openstack network show ext-net > /dev/null 2>&1 || openstack network create \
+ --external --share --enable ext-net
else
- neutron net-show ext-net > /dev/null 2>&1 || neutron net-create ext-net \
- --router:external=True \
- --provider:network_type flat \
- --provider:physical_network physnet1
+ openstack network show ext-net > /dev/null 2>&1 || openstack network create \
+ --provider-network-type flat \
+ --provider-physical-network physnet1 \
+ --external --share --enable ext-net
fi
-neutron subnet-show ext-subnet > /dev/null 2>&1 || neutron subnet-create ext-net \
- --name ext-subnet --allocation-pool start=$EXTNET_FIP,end=$EXTNET_LIP \
- --disable-dhcp --gateway $EXTNET_GW $EXTNET_NET
+openstack subnet show ext-subnet > /dev/null 2>&1 || openstack subnet create \
+ --allocation-pool start=$EXTNET_FIP,end=$EXTNET_LIP \
+ --no-dhcp --gateway $EXTNET_GW --network ext-net --subnet-range $EXTNET_NET ext-subnet
# Ocl can push packets to the fabric network in order to reach a gateway if BGP/L3VPN hasn't been configured.
if [ "ocl" == "$opnfvsdn" ]; then
diff --git a/docs/release/release-notes/release-notes.rst b/docs/release/release-notes/release-notes.rst
index 8a58e612..042dd0ee 100644
--- a/docs/release/release-notes/release-notes.rst
+++ b/docs/release/release-notes/release-notes.rst
@@ -59,7 +59,7 @@ Release Data
| **Release designation** | Euphrates release |
| | |
+--------------------------------------+--------------------------------------+
-| **Release date** | October 24 2017 |
+| **Release date** | December 15 2017 |
| | |
+--------------------------------------+--------------------------------------+
| **Purpose of the delivery** | Euphrates release |
@@ -88,7 +88,7 @@ Module version change
~~~~~~~~~~~~~~~~~~~~~
- Euphrates release with the JOID deployment toolchain.
- OpenStack (Ocata release)
- - Kubernetes 1.7
+ - Kubernetes 1.8
- Ubuntu 16.04 LTS
Document version change
@@ -132,8 +132,9 @@ Bug corrections
| **JIRA REFERENCE** | **SLOGAN** |
| | |
+--------------------------------------+--------------------------------------+
-| JIRA: | |
-| | |
+| JIRA: | Fixes the issue on get the keyston IP|
++--------------------------------------+--------------------------------------+
+| JIRA: | Fix provided where use Public API |
+--------------------------------------+--------------------------------------+
diff --git a/docs/release/userguide/userguide.rst b/docs/release/userguide/userguide.rst
index 04bceed8..63911a0e 100644
--- a/docs/release/userguide/userguide.rst
+++ b/docs/release/userguide/userguide.rst
@@ -510,9 +510,9 @@ The function configOpenrc() creates the OpenStack login credentials, the functio
create_openrc() {
keystoneIp=$(keystoneIp)
if [[ "$jujuver" < "2" ]]; then
- adminPasswd=$(juju get keystone | grep admin-password -A 5 | grep value | awk '{print $2}' 2> /dev/null)
+ adminPasswd=$(juju get keystone | grep admin-password -A 7 | grep value | awk '{print $2}' 2> /dev/null)
else
- adminPasswd=$(juju config keystone | grep admin-password -A 5 | grep value | awk '{print $2}' 2> /dev/null)
+ adminPasswd=$(juju config keystone | grep admin-password -A 7 | grep value | awk '{print $2}' 2> /dev/null)
fi
configOpenrc admin $adminPasswd admin http://$keystoneIp:5000/v2.0 RegionOne > ~/joid_config/admin-openrc
diff --git a/juju/configure-juju-on-openstack b/juju/configure-juju-on-openstack
index 1d98fd08..6717ce53 100755
--- a/juju/configure-juju-on-openstack
+++ b/juju/configure-juju-on-openstack
@@ -70,8 +70,20 @@ T_IMAGE_ID=`openstack image list -f value | grep -i trusty | cut -f 1 -d " "`
#We can now use Juju to generate the metadata:
-juju metadata generate-image -d ~/simplestreams -i $X_IMAGE_ID -s xenial -r $OS_REGION_NAME -u $OS_AUTH_URL
-juju metadata generate-image -d ~/simplestreams -i $T_IMAGE_ID -s trusty -r $OS_REGION_NAME -u $OS_AUTH_URL
+#Upload images to glance
+## image name is used by script to generate metadata .. don't screw the series
+NODE_ARCTYPE=`arch`
+
+if [ "ppc64le" == "$NODE_ARCTYPE" ]; then
+ NODE_ARCHES="ppc64el"
+elif [ "aarch64" == "$NODE_ARCTYPE" ]; then
+ NODE_ARCHES="arm"
+else
+ NODE_ARCHES="amd64"
+fi
+
+juju metadata generate-image -d ~/simplestreams -i $X_IMAGE_ID -s xenial -r $OS_REGION_NAME -u $OS_AUTH_URL -a $NODE_ARCHES
+juju metadata generate-image -d ~/simplestreams -i $T_IMAGE_ID -s trusty -r $OS_REGION_NAME -u $OS_AUTH_URL -a $NODE_ARCHES
#To verify that the correct metadata files have been generated, you may run:
#You should see .json files containing the details we just added on the images.
diff --git a/juju/get-cloud-images b/juju/get-cloud-images
index 3711729c..9711b793 100755
--- a/juju/get-cloud-images
+++ b/juju/get-cloud-images
@@ -3,18 +3,29 @@
folder=/srv/data/
sudo mkdir $folder || true
+NODE_ARCTYPE=`arch`
+
+if [ "ppc64le" == "$NODE_ARCTYPE" ]; then
+ NODE_ARCHES="ppc64el"
+elif [ "aarch64" == "$NODE_ARCTYPE" ]; then
+ NODE_ARCHES="arm64"
+else
+ NODE_ARCHES="amd64"
+fi
+
+
if grep -q 'virt-type: lxd' bundles.yaml; then
URLS=" \
- http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-lxc.tar.gz \
- http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-root.tar.gz "
+ http://download.cirros-cloud.net/daily/20161201/cirros-dl161201-$NODE_ARCTYPE-lxc.tar.gz \
+ http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-$NODE_ARCHES-root.tar.gz "
else
URLS=" \
- http://cloud-images.ubuntu.com/trusty/current/trusty-server-cloudimg-amd64-disk1.img \
- http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img \
+ http://cloud-images.ubuntu.com/trusty/current/trusty-server-cloudimg-$NODE_ARCHES-uefi1.img \
+ http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-$NODE_ARCHES-uefi1.img \
http://mirror.catn.com/pub/catn/images/qcow2/centos6.4-x86_64-gold-master.img \
http://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2 \
- http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img "
+ http://download.cirros-cloud.net/daily/20161201/cirros-dl161201-$NODE_ARCTYPE-disk.img "
fi
for URL in $URLS
diff --git a/juju/joid-configure-openstack b/juju/joid-configure-openstack
index ab4c1670..47db0893 100755
--- a/juju/joid-configure-openstack
+++ b/juju/joid-configure-openstack
@@ -39,18 +39,19 @@ EXTERNAL_NETWORK_ID=$(openstack network show ext-net | grep " id" | awk '{print
#Create private network for neutron for tenant VMs
openstack network show private > /dev/null 2>&1 || openstack network create private
-openstack subnet show private_subnet > /dev/null 2>&1 || neutron subnet-create private $NEUTRON_FIXED_NET_CIDR -- --name private_subnet --dns_nameservers list=true 8.8.8.8
+openstack subnet show private_subnet > /dev/null 2>&1 || openstack subnet create --network private --subnet-range $NEUTRON_FIXED_NET_CIDR --dns-nameserver 8.8.8.8 private_subnet
SUBNET_ID=$(openstack subnet show private_subnet | grep " id" | awk '{print $4}')
#Create router for external network and private network
openstack router show provider-router > /dev/null 2>&1 || openstack router create --project-domain=$OS_PROJECT_DOMAIN_NAME --project $OS_PROJECT_NAME provider-router
ROUTER_ID=$(openstack router show provider-router | grep " id" | awk '{print $4}')
-neutron router-gateway-clear provider-router || true
-neutron router-gateway-set $ROUTER_ID $EXTERNAL_NETWORK_ID
-## make it always ok to have it indempodent.
-neutron router-interface-add $ROUTER_ID $SUBNET_ID || true
+openstack router set --external-gateway $EXTERNAL_NETWORK_ID --enable $ROUTER_ID || true
+ ## make it always ok to have it indempodent.
+openstack router add subnet $ROUTER_ID $SUBNET_ID || true
+
+#neutron router-gateway-clear provider-router || true
echo "Configuring security groups for access to ICMP, SSH and RDP by default"
@@ -80,7 +81,6 @@ openstack flavor show m1.xlarge > /dev/null 2>&1 || openstack flavor create --ra
echo "modifying default quotas for admin user"
#Modify quotas for the tenant to allow large deployments
-PROJECT_ID=`openstack quota show -f value -c project`
openstack quota set --instances 400 --cores 800 --ram 404800 --secgroups 4000 --floating-ips -1 --secgroup-rules -1 $PROJECT_ID
### need to find how to change quota for the project not the tenant
@@ -92,13 +92,22 @@ echo "Uploading images to glance"
#Upload images to glance
## image name is used by script to generate metadata .. don't screw the series
+NODE_ARCTYPE=`arch`
+
+if [ "ppc64le" == "$NODE_ARCTYPE" ]; then
+ NODE_ARCHES="ppc64el"
+elif [ "aarch64" == "$NODE_ARCTYPE" ]; then
+ NODE_ARCHES="arm64"
+else
+ NODE_ARCHES="amd64"
+fi
if grep -q 'virt-type: lxd' bundles.yaml; then
- openstack image list | grep "Xenial LXC x86_64" > /dev/null 2>&1 || glance image-create --name="Xenial LXC x86_64" --visibility=public --container-format=bare --disk-format=root-tar --property architecture="x86_64" < /srv/data/xenial-server-cloudimg-amd64-root.tar.gz
- openstack image list | grep "Cirros LXC 0.3" > /dev/null 2>&1 || glance image-create --name="Cirros LXC 0.3" --visibility=public --container-format=bare --disk-format=root-tar --property architecture="x86_64" < /srv/data/cirros-0.3.4-x86_64-lxc.tar.gz
+ openstack image list | grep "Xenial LXC" > /dev/null 2>&1 || glance image-create --name="Xenial LXC" --visibility=public --container-format=bare --disk-format=root-tar --property architecture="$NODE_ARCTYPE" < /srv/data/xenial-server-cloudimg-$NODE_ARCHES-root.tar.gz
+ openstack image list | grep "Cirros LXC" > /dev/null 2>&1 || glance image-create --name="Cirros LXC" --visibility=public --container-format=bare --disk-format=root-tar --property architecture="$NODE_ARCTYPE" < /srv/data/cirros-dl161201-$NODE_ARCTYPE-lxc.tar.gz
else
- openstack image list | grep "Trusty x86_64" > /dev/null 2>&1 || openstack image create "Trusty x86_64" --public --container-format=ovf --disk-format=qcow2 < /srv/data/trusty-server-cloudimg-amd64-disk1.img
- openstack image list | grep "Xenial x86_64" > /dev/null 2>&1 || openstack image create "Xenial x86_64" --public --container-format=ovf --disk-format=qcow2 < /srv/data/xenial-server-cloudimg-amd64-disk1.img
- openstack image list | grep "CentOS 6.4" > /dev/null 2>&1 || openstack image create "CentOS 6.4" --public --container-format=bare --disk-format=qcow2 < /srv/data/centos6.4-x86_64-gold-master.img
- openstack image list | grep "Cirros 0.3" > /dev/null 2>&1 || openstack image create "Cirros 0.3" --public --container-format=bare --disk-format=qcow2 < /srv/data/cirros-0.3.4-x86_64-disk.img
+ openstack image list | grep "Trusty" > /dev/null 2>&1 || openstack image create "Trusty" --public --container-format=ovf --disk-format=qcow2 --property architecture="$NODE_ARCTYPE" < /srv/data/trusty-server-cloudimg-$NODE_ARCHES-uefi1.img
+ openstack image list | grep "Xenial" > /dev/null 2>&1 || openstack image create "Xenial" --public --container-format=ovf --disk-format=qcow2 --property architecture="$NODE_ARCTYPE" < /srv/data/xenial-server-cloudimg-$NODE_ARCHES-uefi1.img
+ openstack image list | grep "CentOS" > /dev/null 2>&1 || openstack image create "CentOS" --public --container-format=bare --disk-format=qcow2 < /srv/data/CentOS-7-x86_64-GenericCloud.qcow2
+ openstack image list | grep "Cirros" > /dev/null 2>&1 || openstack image create "Cirros" --public --container-format=bare --disk-format=qcow2 --property architecture="$NODE_ARCTYPE" < /srv/data/cirros-dl161201-$NODE_ARCTYPE-disk.img
fi
diff --git a/labconfig/enea/pod5/labconfig.yaml b/labconfig/enea/pod5/labconfig.yaml
new file mode 100644
index 00000000..a1c8a7ea
--- /dev/null
+++ b/labconfig/enea/pod5/labconfig.yaml
@@ -0,0 +1,170 @@
+lab:
+ location: enea
+ racks:
+ - rack: pod5
+ nodes:
+ - name: softiron-3
+ architecture: aarch64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["e0:ff:f7:00:08:ae"]
+ - ifname: intf1
+ spaces: [floating]
+ mac: ["e0:ff:f7:00:08:af"]
+ - ifname: intf1.2185
+ spaces: [data]
+ mac: ["e0:ff:f7:00:08:af"]
+ - ifname: intf1.2183
+ spaces: [public]
+ mac: ["e0:ff:f7:00:08:af"]
+ - ifname: intf1.2184
+ spaces: [storage]
+ mac: ["e0:ff:f7:00:08:af"]
+ power:
+ type: ipmi
+ address: 10.0.8.3
+ user: admin
+ pass: admin
+ - name: softiron-4
+ architecture: aarch64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["e0:ff:f7:00:08:b1"]
+ - ifname: intf1
+ spaces: [floating]
+ mac: ["e0:ff:f7:00:08:b2"]
+ - ifname: intf1.2185
+ spaces: [data]
+ mac: ["e0:ff:f7:00:08:b2"]
+ - ifname: intf1.2183
+ spaces: [public]
+ mac: ["e0:ff:f7:00:08:b2"]
+ - ifname: intf1.2184
+ spaces: [storage]
+ mac: ["e0:ff:f7:00:08:b2"]
+ power:
+ type: ipmi
+ address: 10.0.8.4
+ user: admin
+ pass: admin
+
+ - name: softiron-5
+ architecture: aarch64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["e0:ff:f7:00:08:bd"]
+ - ifname: intf1
+ spaces: [floating]
+ mac: ["e0:ff:f7:00:08:be"]
+ - ifname: intf1.2185
+ spaces: [data]
+ mac: ["e0:ff:f7:00:08:be"]
+ - ifname: intf1.2183
+ spaces: [public]
+ mac: ["e0:ff:f7:00:08:be"]
+ - ifname: intf1.2184
+ spaces: [storage]
+ mac: ["e0:ff:f7:00:08:be"]
+ power:
+ type: ipmi
+ address: 10.0.8.5
+ user: admin
+ pass: admin
+
+ - name: softiron-6
+ architecture: aarch64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["e0:ff:f7:00:08:c6"]
+ - ifname: intf1
+ spaces: [floating]
+ mac: ["e0:ff:f7:00:08:c7"]
+ - ifname: intf1.2185
+ spaces: [data]
+ mac: ["e0:ff:f7:00:08:c7"]
+ - ifname: intf1.2183
+ spaces: [public]
+ mac: ["e0:ff:f7:00:08:c7"]
+ - ifname: intf1.2184
+ spaces: [storage]
+ mac: ["e0:ff:f7:00:08:c7"]
+ power:
+ type: ipmi
+ address: 10.0.8.6
+ user: admin
+ pass: admin
+
+ - name: softiron-7
+ architecture: aarch64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["e0:ff:f7:00:08:cf"]
+ - ifname: intf1
+ spaces: [floating]
+ mac: ["e0:ff:f7:00:08:d0"]
+ - ifname: intf1.2185
+ spaces: [data]
+ mac: ["e0:ff:f7:00:08:d0"]
+ - ifname: intf1.2183
+ spaces: [public]
+ mac: ["e0:ff:f7:00:08:d0"]
+ - ifname: intf1.2184
+ spaces: [storage]
+ mac: ["e0:ff:f7:00:08:d0"]
+ power:
+ type: ipmi
+ address: 10.0.8.7
+ user: admin
+ pass: admin
+ floating-ip-range: 10.0.8.40,10.0.8.250,10.0.8.254,10.0.8.0/24
+ ext-port: "intf1"
+ dns: 8.8.8.8
+ osdomainname:
+#below section shoiuld define the jumphost.
+opnfv:
+ release: f
+ distro: xenial
+ type: noha
+ openstack: pike
+ sdncontroller:
+ - type: nosdn
+ storage:
+ - type: ceph
+ disk: /dev/sdb
+ feature: odl_l2
+ spaces:
+ - type: admin
+ bridge: admin7_br0
+ cidr: 192.168.11.0/24
+ gateway: 192.168.11.1
+ vlan:
+ - type: floating
+ cidr: 10.0.8.0/24
+ gateway: 10.0.8.254
+ mac: ["00:0f:b7:04:00:c2"]
+ vlan:
+ - type: data
+ cidr: 10.1.0.0/24
+ gateway:
+ mac: ["00:0f:b7:04:00:c2"]
+ vlan: 2185
+ - type: public
+ cidr: 172.16.10.0/24
+ gateway:
+ mac: ["00:0f:b7:04:00:c2"]
+ vlan: 2183
+ - type: storage
+ cidr: 10.2.0.0/24
+ gateway:
+ mac: ["00:0f:b7:04:00:c2"]
+ vlan: 2184
diff --git a/labconfig/enea/pod6/labconfig.yaml b/labconfig/enea/pod6/labconfig.yaml
new file mode 100644
index 00000000..193078bf
--- /dev/null
+++ b/labconfig/enea/pod6/labconfig.yaml
@@ -0,0 +1,170 @@
+lab:
+ location: enea
+ racks:
+ - rack: pod6
+ nodes:
+ - name: cn8890-24
+ architecture: aarch64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["68:05:ca:5a:c3:a7"]
+ - ifname: intf1.2323
+ spaces: [public]
+ mac: ["1c:1b:0d:e8:fa:83"]
+ - ifname: intf1.2324
+ spaces: [storage]
+ mac: ["1c:1b:0d:e8:fa:83"]
+ - ifname: intf1.2325
+ spaces: [data]
+ mac: ["1c:1b:0d:e8:fa:83"]
+ - ifname: intf1
+ spaces: [floating]
+ mac: ["1c:1b:0d:e8:fa:83"]
+ power:
+ type: ipmi
+ address: 10.0.1.54
+ user: ADMIN
+ pass: ADMIN
+ - name: cn8890-25
+ architecture: aarch64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["68:05:ca:5a:c3:bc"]
+ - ifname: intf1.2323
+ spaces: [public]
+ mac: ["1c:1b:0d:e8:fb:a5"]
+ - ifname: intf1.2324
+ spaces: [storage]
+ mac: ["1c:1b:0d:e8:fb:a5"]
+ - ifname: intf1.2325
+ spaces: [data]
+ mac: ["1c:1b:0d:e8:fb:a5"]
+ - ifname: intf1
+ spaces: [floating]
+ mac: ["1c:1b:0d:e8:fb:a5"]
+ power:
+ type: ipmi
+ address: 10.0.1.55
+ user: ADMIN
+ pass: ADMIN
+
+ - name: cn8890-26
+ architecture: aarch64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["68:05:ca:61:b9:00"]
+ - ifname: intf1.2323
+ spaces: [public]
+ mac: ["1c:1b:0d:e8:fa:65"]
+ - ifname: intf1.2324
+ spaces: [storage]
+ mac: ["1c:1b:0d:e8:fa:65"]
+ - ifname: intf1.2325
+ spaces: [data]
+ mac: ["1c:1b:0d:e8:fa:65"]
+ - ifname: intf1
+ spaces: [floating]
+ mac: ["1c:1b:0d:e8:fa:65"]
+ power:
+ type: ipmi
+ address: 10.0.1.56
+ user: ADMIN
+ pass: ADMIN
+
+ - name: cn8890-27
+ architecture: aarch64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["68:05:ca:57:f7:16"]
+ - ifname: intf1.2323
+ spaces: [public]
+ mac: ["1c:1b:0d:e8:fb:19"]
+ - ifname: intf1.2324
+ spaces: [storage]
+ mac: ["1c:1b:0d:e8:fb:19"]
+ - ifname: intf1.2325
+ spaces: [data]
+ mac: ["1c:1b:0d:e8:fb:19"]
+ - ifname: intf1
+ spaces: [floating]
+ mac: ["1c:1b:0d:e8:fb:19"]
+ power:
+ type: ipmi
+ address: 10.0.1.57
+ user: ADMIN
+ pass: ADMIN
+
+ - name: cn8890-28
+ architecture: aarch64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["68:05:ca:61:97:5a"]
+ - ifname: intf1.2323
+ spaces: [public]
+ mac: ["1c:1b:0d:e8:fb:7d"]
+ - ifname: intf1.2324
+ spaces: [storage]
+ mac: ["1c:1b:0d:e8:fb:7d"]
+ - ifname: intf1.2325
+ spaces: [data]
+ mac: ["1c:1b:0d:e8:fb:7d"]
+ - ifname: intf1
+ spaces: [floating]
+ mac: ["1c:1b:0d:e8:fb:7d"]
+ power:
+ type: ipmi
+ address: 10.0.1.58
+ user: ADMIN
+ pass: ADMIN
+ floating-ip-range: 10.0.15.40,10.0.15.250,10.0.15.254,10.0.15.0/24
+ ext-port: "intf1"
+ dns: 8.8.8.8
+ osdomainname:
+#below section shoiuld define the jumphost.
+opnfv:
+ release: f
+ distro: xenial
+ type: noha
+ openstack: pike
+ sdncontroller:
+ - type: nosdn
+ storage:
+ - type: ceph
+ disk: /dev/sdb
+ feature: odl_l2
+ spaces:
+ - type: admin
+ bridge: admin14_br0
+ cidr: 192.168.11.0/24
+ gateway: 192.168.11.1
+ vlan:
+ - type: floating
+ cidr: 10.0.15.0/24
+ gateway: 10.0.15.254
+ vlan:
+ mac: ["00:01:73:02:36:d5"]
+ - type: public
+ cidr: 172.16.10.0/24
+ gateway:
+ vlan: 2323
+ mac: ["00:01:73:02:36:d5"]
+ - type: storage
+ cidr: 10.2.0.0/24
+ gateway:
+ vlan: 2324
+ mac: ["00:01:73:02:36:d5"]
+ - type: data
+ cidr: 10.1.0.0/24
+ gateway:
+ vlan: 2325
+ mac: ["00:01:73:02:36:d5"]
diff --git a/labconfig/enea/virtual/pod1/labconfig.yaml b/labconfig/enea/virtual/pod1/labconfig.yaml
new file mode 100644
index 00000000..cc64acc3
--- /dev/null
+++ b/labconfig/enea/virtual/pod1/labconfig.yaml
@@ -0,0 +1,54 @@
+lab:
+ location: virtual
+ racks:
+ - rack: pod1
+ nodes:
+ - name: rack-vir-m1
+ architecture: x86_64
+ roles: [network,control]
+ nics:
+ - ifname: ens3
+ spaces: [admin]
+ - ifname: ens4
+ spaces: [floating]
+ - name: rack-vir-m2
+ architecture: x86_64
+ roles: [compute,control,storage]
+ nics:
+ - ifname: ens3
+ spaces: [admin]
+ - ifname: ens4
+ spaces: [floating]
+ - name: rack-vir-m3
+ architecture: x86_64
+ roles: [compute,control,storage]
+ nics:
+ - ifname: ens3
+ spaces: [admin]
+ - ifname: ens4
+ spaces: [floating]
+ floating-ip-range: 192.168.122.31,192.168.122.49,192.168.122.1,192.168.122.0/24
+ ext-port: "enp2s0"
+ dns: 8.8.8.8
+opnfv:
+ release: d
+ distro: xenial
+ type: noha
+ openstack: newton
+ sdncontroller:
+ - type: nosdn
+ storage:
+ - type: ceph
+ disk: /srv
+ feature: odl_l2
+ spaces:
+ - type: admin
+ bridge: virbr0
+ cidr: 192.168.122.0/24
+ gateway: 192.168.122.1
+ vlan:
+ - type: floating
+ bridge:
+ cidr:
+ gateway:
+ vlan:
diff --git a/labconfig/huawei/pod12/labconfig.yaml b/labconfig/huawei/pod12/labconfig.yaml
index c78a056b..51ab8b79 100644
--- a/labconfig/huawei/pod12/labconfig.yaml
+++ b/labconfig/huawei/pod12/labconfig.yaml
@@ -18,16 +18,16 @@ lab:
mac: ["88:cf:98:e9:9a:9a"]
power:
type: ipmi
- address: 192.168.120.19
+ address: 172.16.130.179
user: root
- pass: Huawei12#$
+ pass: Opnfv@pod12
- name: rack-12-m2
architecture: x86_64
roles: [compute,control,storage]
nics:
- ifname: intf0
spaces: [admin]
- mac: ["88:cf:98:61:66:0b"]
+ mac: ["88:cf:98:61:67:0b"]
- ifname: intf1
spaces: [data]
mac: ["88:cf:98:e9:9a:c3"]
@@ -36,9 +36,9 @@ lab:
mac: ["88:cf:98:e9:9a:c4"]
power:
type: ipmi
- address: 192.168.120.20
+ address: 172.16.130.180
user: root
- pass: Huawei12#$
+ pass: Opnfv@pod12
- name: rack-12-m3
architecture: x86_64
roles: [compute,control,storage]
@@ -48,15 +48,15 @@ lab:
mac: ["88:cf:98:61:66:d9"]
- ifname: intf1
spaces: [data]
- mac: ["88:cf:98:e9:9a:9b"]
+ mac: ["88:cf:98:e9:9a:b3"]
- ifname: intf2
spaces: [floating]
- mac: ["88:cf:98:e9:9a:9c"]
+ mac: ["88:cf:98:e9:9a:b4"]
power:
type: ipmi
- address: 192.168.120.21
+ address: 172.16.130.181
user: root
- pass: Huawei12#$
+ pass: Opnfv@pod12
- name: rack-12-m4
architecture: x86_64
roles: [compute,storage]
@@ -72,36 +72,36 @@ lab:
mac: ["88:cf:98:e9:9a:9c"]
power:
type: ipmi
- address: 192.168.120.22
+ address: 172.16.130.182
user: root
- pass: Huawei12#$
+ pass: Opnfv@pod12
- name: rack-12-m5
architecture: x86_64
roles: [compute,storage]
nics:
- ifname: intf0
spaces: [admin]
- mac: ["88:cf:98:83:31:db"]
+ mac: ["88:cf:98:61:66:db"]
- ifname: intf1
spaces: [data]
- mac: ["88:cf:98:e9:9a:a5"]
+ mac: ["88:cf:98:e9:9a:af"]
- ifname: intf2
spaces: [floating]
- mac: ["88:cf:98:e9:9a:a6"]
+ mac: ["88:cf:98:e9:9a:b0"]
power:
type: ipmi
- address: 192.168.120.23
+ address: 172.16.130.183
user: root
- pass: Huawei12#$
+ pass: Opnfv@pod12
floating-ip-range: 10.6.15.7,10.6.15.250,10.6.15.1,10.6.15.0/24
- ext-port: "enp4s0d1"
+ ext-port: "intf2"
dns: 8.8.8.8
public-api-ip:
osdomainname:
opnfv:
release: d
distro: xenial
- type: noha
+ type: nonha
openstack: newton
sdncontroller:
- type: nosdn
@@ -127,7 +127,7 @@ opnfv:
vlan:
- type: external
bridge: brExt
- cidr: 192.168.30.0/24
- gateway: 192.168.30.250
- ipaddress: 192.168.30.2
+ cidr: 172.30.12.0/24
+ gateway: 172.30.12.1
+ ipaddress: 172.30.12.2
vlan:
diff --git a/labconfig/intel/pod18/labconfig.yaml b/labconfig/intel/pod18/labconfig.yaml
new file mode 100644
index 00000000..2cb83d20
--- /dev/null
+++ b/labconfig/intel/pod18/labconfig.yaml
@@ -0,0 +1,163 @@
+lab:
+ location: intel
+ racks:
+ - rack: pod18
+ nodes:
+ - name: rack-18-m1
+ architecture: x86_64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["A4:BF:01:14:40:17"]
+ - ifname: intf1
+ spaces: [data]
+ mac: ["3c:fd:fe:a4:9f:a0"]
+ - ifname: intf3
+ spaces: [floating]
+ mac: ["A4:BF:01:14:40:16"]
+ - ifname: intf2.1183
+ spaces: [public]
+ mac: ["3c:fd:fe:a4:9f:a1"]
+ - ifname: intf2
+ spaces: [storage]
+ mac: ["3c:fd:fe:a4:9f:a1"]
+ power:
+ type: ipmi
+ address: 10.10.180.11
+ user: root
+ pass: root
+ - name: rack-18-m2
+ architecture: x86_64
+ roles: [compute,control,storage]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["A4:BF:01:16:31:1f"]
+ - ifname: intf1
+ spaces: [data]
+ mac: ["3c:fd:fe:a4:a0:30"]
+ - ifname: intf3
+ spaces: [floating]
+ mac: ["A4:BF:01:16:31:1e"]
+ - ifname: intf2.1183
+ spaces: [public]
+ mac: ["3c:fd:fe:a4:a0:31"]
+ - ifname: intf2
+ spaces: [storage]
+ mac: ["3c:fd:fe:a4:a0:31"]
+ power:
+ type: ipmi
+ address: 10.10.180.12
+ user: root
+ pass: root
+ - name: rack-18-m3
+ architecture: x86_64
+ roles: [compute,control,storage]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["A4:BF:01:16:30:F7"]
+ - ifname: intf1
+ spaces: [data]
+ mac: ["3c:fd:fe:a4:9e:48"]
+ - ifname: intf3
+ spaces: [floating]
+ mac: ["A4:BF:01:16:30:F6"]
+ - ifname: intf2.1183
+ spaces: [public]
+ mac: ["3c:fd:fe:a4:9e:49"]
+ - ifname: intf2
+ spaces: [storage]
+ mac: ["3c:fd:fe:a4:9e:49"]
+ power:
+ type: ipmi
+ address: 10.10.180.13
+ user: root
+ pass: root
+ - name: rack-18-m4
+ architecture: x86_64
+ roles: [compute,storage]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["A4:BF:01:14:72:0E"]
+ - ifname: intf1
+ spaces: [data]
+ mac: ["3c:fd:fe:a4:9d:e8"]
+ - ifname: intf3
+ spaces: [floating]
+ mac: ["A4:BF:01:14:72:0D"]
+ - ifname: intf2.1183
+ spaces: [public]
+ mac: ["3c:fd:fe:a4:9d:e9"]
+ - ifname: intf2
+ spaces: [storage]
+ mac: ["3c:fd:fe:a4:9d:e9"]
+ power:
+ type: ipmi
+ address: 10.10.180.14
+ user: root
+ pass: root
+ - name: rack-18-m5
+ architecture: x86_64
+ roles: [compute,storage]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["A4:BF:01:14:71:69"]
+ - ifname: intf1
+ spaces: [data]
+ mac: ["3c:fd:fe:a4:a1:08"]
+ - ifname: intf3
+ spaces: [floating]
+ mac: ["A4:BF:01:14:71:68"]
+ - ifname: intf2.1183
+ spaces: [public]
+ mac: ["3c:fd:fe:a4:a1:09"]
+ - ifname: intf2
+ spaces: [storage]
+ mac: ["3c:fd:fe:a4:a1:09"]
+ power:
+ type: ipmi
+ address: 10.10.180.15
+ user: root
+ pass: root
+ floating-ip-range: 10.10.180.40,10.10.180.250,10.10.180.1,10.10.180.0/24
+ ext-port: "intf3"
+ dns: 8.8.8.8
+ osdomainname:
+opnfv:
+ release: f
+ distro: xenial
+ type: noha
+ openstack: pike
+ sdncontroller:
+ - type: nosdn
+ storage:
+ - type: ceph
+ disk: /dev/sdb
+ feature: odl_l2
+ spaces:
+ - type: admin
+ bridge: brAdm
+ cidr: 10.10.181.0/24
+ gateway: 10.10.181.2
+ vlan:
+ - type: data
+ cidr: 10.10.182.0/24
+ gateway:
+ vlan:
+ - type: storage
+ cidr: 10.10.183.0/24
+ gateway:
+ vlan:
+ - type: floating
+ bridge: brExt
+ cidr: 10.10.180.0/24
+ gateway:
+ vlan:
+ - type: public
+ cidr: 10.10.185.0/24
+ gateway: 10.10.185.1
+ vlan: 1183
diff --git a/labconfig/intel/pod19/labconfig.yaml b/labconfig/intel/pod19/labconfig.yaml
new file mode 100644
index 00000000..098571c5
--- /dev/null
+++ b/labconfig/intel/pod19/labconfig.yaml
@@ -0,0 +1,162 @@
+lab:
+ location: intel
+ racks:
+ - rack: pod19
+ nodes:
+ - name: rack-19-m1
+ architecture: x86_64
+ roles: [network,control]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["a4:bf:01:4b:55:f5"]
+ - ifname: intf1
+ spaces: [data]
+ mac: ["3c:fd:fe:aa:b8:f4"]
+ - ifname: intf3
+ spaces: [floating]
+ mac: ["a4:bf:01:4b:55:f4"]
+# - ifname: intf2.1193
+# spaces: [public]
+# mac: ["3c:fd:fe:aa:b8:f5"]
+ - ifname: intf2
+ spaces: [storage]
+ mac: ["3c:fd:fe:aa:b8:f5"]
+ power:
+ type: ipmi
+ address: 10.10.190.11
+ user: root
+ pass: root
+ - name: rack-19-m2
+ architecture: x86_64
+ roles: [compute,control,storage]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["a4:bf:01:4b:4f:9d"]
+ - ifname: intf1
+ spaces: [data]
+ mac: ["3c:fd:fe:aa:b7:fc"]
+ - ifname: intf3
+ spaces: [floating]
+ mac: ["a4:bf:01:4b:4f:9c"]
+# - ifname: intf2.1193
+# spaces: [public]
+# mac: ["3c:fd:fe:aa:b7:fd"]
+ - ifname: intf2
+ spaces: [storage]
+ mac: ["3c:fd:fe:aa:b7:fd"]
+ power:
+ type: ipmi
+ address: 10.10.190.12
+ user: root
+ pass: root
+ - name: rack-19-m3
+ architecture: x86_64
+ roles: [compute,control,storage]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["a4:bf:01:4b:4f:5e"]
+ - ifname: intf1
+ spaces: [data]
+ mac: ["3c:fd:fe:aa:bd:d4"]
+ - ifname: intf3
+ spaces: [floating]
+ mac: ["a4:bf:01:4b:4f:5d"]
+# - ifname: intf2.1193
+# spaces: [public]
+# mac: ["3c:fd:fe:aa:bd:d5"]
+ - ifname: intf2
+ spaces: [storage]
+ mac: ["3c:fd:fe:aa:bd:d5"]
+ power:
+ type: ipmi
+ address: 10.10.190.13
+ user: root
+ pass: root
+ - name: rack-19-m4
+ architecture: x86_64
+ roles: [compute,storage]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["a4:bf:01:4b:4d:2e"]
+ - ifname: intf1
+ spaces: [data]
+ mac: ["3c:fd:fe:aa:b9:c8"]
+ - ifname: intf3
+ spaces: [floating]
+ mac: ["a4:bf:01:4b:4d:2d"]
+# - ifname: intf2.1193
+# spaces: [public]
+# mac: ["3c:fd:fe:aa:b9:c9"]
+ - ifname: intf2
+ spaces: [storage]
+ mac: ["3c:fd:fe:aa:b9:c9"]
+ power:
+ type: ipmi
+ address: 10.10.190.14
+ user: root
+ pass: root
+ - name: rack-19-m5
+ architecture: x86_64
+ roles: [compute,storage]
+ nics:
+ - ifname: intf0
+ spaces: [admin]
+ mac: ["a4:bf:01:4b:56:11"]
+ - ifname: intf1
+ spaces: [data]
+ mac: ["3c:fd:fe:aa:ba:38"]
+ - ifname: intf3
+ spaces: [floating]
+ mac: ["a4:bf:01:4b:56:10"]
+# - ifname: intf2.1193
+# spaces: [public]
+# mac: ["3c:fd:fe:aa:ba:39"]
+ - ifname: intf2
+ spaces: [storage]
+ mac: ["3c:fd:fe:aa:ba:39"]
+ power:
+ type: ipmi
+ address: 10.10.190.15
+ user: root
+ pass: root
+ floating-ip-range: 10.10.190.40,10.10.190.250,10.10.190.1,10.10.190.0/24
+ ext-port: "intf3"
+ dns: 8.8.8.8
+ osdomainname:
+opnfv:
+ release: d
+ distro: xenial
+ type: noha
+ openstack: pike
+ sdncontroller:
+ - type: nosdn
+ storage:
+ - type: ceph
+ disk: /srv
+ feature: odl_l2
+ spaces:
+ - type: admin
+ bridge: brAdm
+ cidr: 10.10.191.0/24
+ gateway: 10.10.191.2
+ vlan:
+ - type: data
+ cidr: 10.10.192.0/24
+ gateway:
+ vlan:
+ - type: storage
+ cidr: 10.10.193.0/24
+ gateway:
+ vlan:
+ - type: floating
+ cidr: 10.10.190.0/24
+ gateway:
+ vlan:
+# - type: public
+# cidr: 10.10.195.0/24
+# gateway:
+# vlan: 1193
diff --git a/labconfig/lenovo/pod1/labconfig.yaml b/labconfig/lenovo/pod1/labconfig.yaml
index a29282da..fb8637eb 100644
--- a/labconfig/lenovo/pod1/labconfig.yaml
+++ b/labconfig/lenovo/pod1/labconfig.yaml
@@ -13,6 +13,9 @@ lab:
- ifname: intf101
spaces: [floating]
mac: ["24:8a:07:3f:84:ad"]
+ - ifname: intf101.104
+ spaces: [public]
+ mac: ["24:8a:07:3f:84:ad"]
power:
type: ipmi
address: 192.0.5.125
@@ -28,6 +31,9 @@ lab:
- ifname: intf101
spaces: [floating]
mac: ["24:8a:07:3f:96:87"]
+ - ifname: intf101.104
+ spaces: [public]
+ mac: ["24:8a:07:3f:96:87"]
power:
type: ipmi
address: 192.0.5.126
@@ -43,6 +49,9 @@ lab:
- ifname: intf101
spaces: [floating]
mac: ["24:8a:07:3f:84:c5"]
+ - ifname: intf101.104
+ spaces: [public]
+ mac: ["24:8a:07:3f:84:c5"]
power:
type: ipmi
address: 192.0.5.127
@@ -58,6 +67,9 @@ lab:
- ifname: intf101
spaces: [floating]
mac: ["24:8a:07:3f:96:4f"]
+ - ifname: intf101.104
+ spaces: [public]
+ mac: ["24:8a:07:3f:96:4f"]
power:
type: ipmi
address: 192.0.5.128
@@ -69,10 +81,13 @@ lab:
nics:
- ifname: intf100
spaces: [admin]
- mac: ["24:8a:07:3f:95:fe"]
+ mac: ["24:8a:07:3f:95:b6"]
- ifname: intf101
spaces: [floating]
- mac: ["24:8a:07:3f:95:ff"]
+ mac: ["24:8a:07:3f:95:b7"]
+ - ifname: intf101.104
+ spaces: [public]
+ mac: ["24:8a:07:3f:95:b7"]
power:
type: ipmi
address: 192.0.5.129
@@ -83,10 +98,10 @@ lab:
dns: 8.8.8.8
osdomainname:
opnfv:
- release: d
+ release: f
distro: xenial
type: nonha
- openstack: Newton
+ openstack: pike
sdncontroller:
- type: nosdn
storage:
@@ -100,10 +115,13 @@ opnfv:
gateway: 192.0.5.5
vlan:
- type: floating
- bridge: brPublic
cidr: 172.21.159.0/24
gateway: 172.21.159.1
vlan:
+ - type: public
+ cidr: 172.22.159.0/24
+ gateway:
+ vlan: 104
- type: external
bridge: brExt
cidr: