diff --git a/Hackfest_Demos/OSM-MR13/1.1-Welcome/basic-build.sh b/Hackfest_Demos/OSM-MR13/1.1-Welcome/basic-build.sh new file mode 100755 index 0000000000000000000000000000000000000000..3b240c35d505ba889ad25728df412056ae22db8d --- /dev/null +++ b/Hackfest_Demos/OSM-MR13/1.1-Welcome/basic-build.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +if [ ! -d hackfest_basic_ns ] ; then + echo "It does not look like we are in the osm-packages directory, exiting" + exit 1 +fi + + +echo "========================================================================" +echo "Cleaning out any prior versions of the descriptors from OSM" +echo "========================================================================" +osm nsd-delete hackfest_basic-ns +osm vnfd-delete hackfest_basic-vnf + +echo "========================================================================" +echo "Building packages" +echo "========================================================================" +osm package-build hackfest_basic_vnf +osm package-build hackfest_basic_ns + +echo "========================================================================" +echo "Uploading packages" +echo "========================================================================" +osm upload-package hackfest_basic_vnf.tar.gz +osm upload-package hackfest_basic_ns.tar.gz +echo "========================================================================" +echo "Done" +echo "========================================================================" + diff --git a/Hackfest_Demos/OSM-MR13/1.1-Welcome/basic-delete.sh b/Hackfest_Demos/OSM-MR13/1.1-Welcome/basic-delete.sh new file mode 100755 index 0000000000000000000000000000000000000000..84668b031c62dee4cb8c25f4d596d2b14f0347f9 --- /dev/null +++ b/Hackfest_Demos/OSM-MR13/1.1-Welcome/basic-delete.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +echo "========================================================================" +echo "Deleting network service" +echo "========================================================================" + +osm ns-delete basic-vnf + +echo "========================================================================" +echo "Done" +echo "========================================================================" + diff --git a/Hackfest_Demos/OSM-MR13/1.1-Welcome/basic-launch.sh b/Hackfest_Demos/OSM-MR13/1.1-Welcome/basic-launch.sh new file mode 100755 index 0000000000000000000000000000000000000000..4c4c83be06c6a2360e5b98091833bf7271e4200e --- /dev/null +++ b/Hackfest_Demos/OSM-MR13/1.1-Welcome/basic-launch.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +VIMID=`osm vim-list | grep osm_ | awk '{ print $4 }'` +echo "========================================================================" +echo "Launching network service with VIMID ${VIMID}" +echo "========================================================================" +osm ns-create --ns_name basic-vnf \ + --nsd_name hackfest_basic-ns \ + --vim_account ${VIMID} \ + --ssh_keys ~/.ssh/id_rsa.pub \ + --config \ + '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' +echo "========================================================================" +echo "Done" +echo "========================================================================" + diff --git a/Hackfest_Demos/OSM-MR13/1.1-Welcome/git-clone.sh b/Hackfest_Demos/OSM-MR13/1.1-Welcome/git-clone.sh new file mode 100755 index 0000000000000000000000000000000000000000..75cf947a2681bd371d4edeb0066905873a97818e --- /dev/null +++ b/Hackfest_Demos/OSM-MR13/1.1-Welcome/git-clone.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +git clone --recurse-submodules -j8 https://osm.etsi.org/gitlab/vnf-onboarding/osm-packages.git + diff --git a/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-actions.sh b/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-actions.sh new file mode 100755 index 0000000000000000000000000000000000000000..ba6a8c7650452358b1c31988471a3c7c5e290b19 --- /dev/null +++ b/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-actions.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +echo "========================================================================" +echo "Here are some of the actions you can run" +echo "========================================================================" + +cat << 'EOF' + +DESKTOP_IP=`osm ns-show virtual-desktop --literal | yq e '.vcaStatus.*.machines.0.network_interfaces.ens3.ip_addresses.0' -` + +osm ns-action firewall --vnf_name VYOS-PNF --action_name add-port-forward --params "{ruleNumber: '10', sourcePort: '3389', destinationAddress: \"${DESKTOP_IP}\", destinationPort: '3389'}" +osm ns-action firewall --vnf_name VYOS-PNF --action_name remove-port-forward --params '{ruleNumber: "10"}' + +EOF  diff --git a/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-build.sh b/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-build.sh new file mode 100755 index 0000000000000000000000000000000000000000..77b298362adb0b8ba7616bb22cbfc325cb5a82cc --- /dev/null +++ b/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-build.sh @@ -0,0 +1,72 @@ +#!/bin/bash + +if [ ! -d hackfest_firewall_pnf ] ; then + echo "It does not look like we are in the osm-packages directory, exiting" + exit 1 +fi + +echo "========================================================================" +echo "Building operator charms" +echo "========================================================================" +cd hackfest_firewall_pnf/charms/vyos-config-src +#virtualenv -p python3 venv +#source venv/bin/activate +#pip install -r requirements-dev.txt +#pip install charmcraft +#./venv/bin/charmcraft build +rm -rf venv +charmcraft build +cd - +cd hackfest_firewall_pnf/charms +mkdir -p vyos-config/ +rm -rf vyos-config/* +cp -r vyos-config-src/build/* vyos-config/ +cd - + +echo "========================================================================" +echo "Cleaning out any prior versions of the descriptors from OSM" +echo "========================================================================" +osm nsd-delete hackfest_firewall_pnf_ns +osm vnfd-delete hackfest_firewall_pnf +osm pdu-delete router01 +rm -v hackfest_firewall_pnf*.tar.gz + +echo "========================================================================" +echo "Building packages" +echo "========================================================================" +osm package-build hackfest_firewall_pnf +osm package-build hackfest_firewall_pnf_ns + +echo "========================================================================" +echo "Uploading packages" +echo "========================================================================" +osm upload-package hackfest_firewall_pnf.tar.gz +osm upload-package hackfest_firewall_pnf_ns.tar.gz + +VIMID=`osm vim-list | grep osm_ | awk '{ print $4 }'` +echo "========================================================================" +echo "Registering PDU 172.21.19.${HFID} with $VIMID" +echo "========================================================================" + +cat << EOF > firewall-pdu.yaml +name: router01 +description: VyOS Router +type: gateway +shared: false +interfaces: + - name: gateway_public + ip-address: 172.21.19.${HFID} + mgmt: true + vim-network-name: osm-ext + - name: vnf_internal + ip-address: 192.168.239.250 + mgmt: false + vim-network-name: private +EOF + +osm pdu-create --descriptor_file firewall-pdu.yaml \ + --vim_account $VIMID +echo "========================================================================" +echo "Done" +echo "========================================================================" + diff --git a/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-launch.sh b/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-launch.sh new file mode 100755 index 0000000000000000000000000000000000000000..f2626b6a511ff124517b9a94bc02b6c6c4b525e9 --- /dev/null +++ b/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-launch.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +VIMID=`osm vim-list | grep osm_ | awk '{ print $4 }'` +echo "========================================================================" +echo "Launching network service with VIMID ${VIMID}" +echo "========================================================================" + +osm ns-create --ns_name firewall \ + --nsd_name hackfest_firewall_pnf_ns \ + --vim_account $VIMID + +echo "========================================================================" +echo "Done" +echo "========================================================================" + diff --git a/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-watch-progress.sh b/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-watch-progress.sh new file mode 100755 index 0000000000000000000000000000000000000000..40c026b47eaef48b7126afaa75ccb1ec4025f993 --- /dev/null +++ b/Hackfest_Demos/OSM-MR13/2.2-PNF/firewall-watch-progress.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +watch -- 'osm ns-show firewall | grep -i status' diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/admin-credentials.rc b/Hackfest_Demos/OSM-MR13/Setup Scripts/admin-credentials.rc index e80d45249f170c28b41dd47bec55694c42fda02a..39004225fc9cb13811c654250489451013c30acb 100644 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/admin-credentials.rc +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/admin-credentials.rc @@ -1,10 +1,25 @@ #OpenStack Credentials -export OS_AUTH_URL=http://172.21.247.1:5000/v3 -export OS_PROJECT_NAME=hackfest -export OS_USER_DOMAIN_NAME='Default' -export OS_PROJECT_DOMAIN_ID='default' -export OS_USERNAME=hackfest +#export OS_AUTH_URL=http://172.21.247.1:5000/v3 +#export OS_PROJECT_NAME=hackfest +#export OS_USER_DOMAIN_NAME='Default' +#export OS_PROJECT_DOMAIN_ID='default' +#export OS_USERNAME=hackfest export OS_PASSWORD=`cat admin.password` -export OS_REGION_NAME='RegionOne' +#export OS_REGION_NAME='RegionOne' +#export OS_INTERFACE=public +#export OS_IDENTITY_API_VERSION=3 + +export OS_TENANT_NAME=admin +export OS_DOMAIN_NAME=admin_domain +export OS_USER_DOMAIN_NAME=admin_domain +export OS_PROJECT_NAME=admin +export OS_PROJECT_DOMAIN_NAME=admin_domain +export OS_AUTH_TYPE=password export OS_INTERFACE=public +export OS_USERNAME=admin +export OS_REGION_NAME=PartnerCloud1 +export OS_DOMAIN_NAME=admin_domain export OS_IDENTITY_API_VERSION=3 + +export OS_CACERT=/home/mark/git/osm/files/pc-cacert.pem +export OS_AUTH_URL=https://keystone.pc1.canonical.com:5000/v3 diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/common-vars b/Hackfest_Demos/OSM-MR13/Setup Scripts/common-vars index 1d088dac0d18a66b1c134c8c8bbee07f1f9cc3d4..bb902229b094a672bbf4582bc024000beaf5af8f 100644 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/common-vars +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/common-vars @@ -14,14 +14,19 @@ elif [ ! -z $1 ] ; then fi # ETSI VIM ADMIN_DOMAIN=default, Partner Cloud=admin_domain -ADMIN_DOMAIN=default -APT_PROXY=http://172.21.1.1:3142 -FLAVOR=osm.sanity +ADMIN_DOMAIN=admin_domain +APT_PROXY=http://172.21.18.3:3142 +FLAVOR=m1.xlarge KEY_NAME=hackfest NETWORK=osm-ext -SUBNET=172.21.248 +SUBNET=172.21.19 +ZONE=hackfest MANAGEMENT_SUBNET=10.0.0 SGi_SUBNET=192.168.2 S1_SUBNET=192.168.0 -PRIVATE_SUBNET=192.168.239 \ No newline at end of file +PRIVATE_SUBNET=192.168.239 + +FOCAL="auto-sync/ubuntu-focal-20.04-amd64-server-20221010-disk1.img" +JAMMY="" +VyOS="vyos-1.1.7-cloudinit" \ No newline at end of file diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/create-openstack-user-and-project.sh b/Hackfest_Demos/OSM-MR13/Setup Scripts/create-openstack-user-and-project.sh index db0c345450dd5f8eaa48d172e1dc09cb86090a15..56d055c5aac5c86326dd174c5d4e0efb5758f860 100755 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/create-openstack-user-and-project.sh +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/create-openstack-user-and-project.sh @@ -34,63 +34,65 @@ openstack network rbac create \ $NETWORK & wait +# This is done as the tenant, and some form of bug makes it necessary to unset this variable +echo "Creating public port" + +IP=`expr ${PARTICIPANT} + 0` +VYOSIP=`expr ${PARTICIPANT} + 100` +# This port gets created as the admin +openstack port create --disable-port-security --fixed-ip ip-address=${SUBNET}.${IP} --project=${PROJECT} --enable --network osm-ext hackfest-osm-${PARTICIPANT} +openstack port create --disable-port-security --fixed-ip ip-address=${SUBNET}.${VYOSIP} --project=${PROJECT} --enable --network osm-ext VyOS-management-${PARTICIPANT} & +wait + +export OS_USERNAME=${OPENSTACK_USER} +export OS_PASSWORD=${PASSWORD} +export OS_PROJECT_NAME=${PROJECT} + echo "Adding security groups" -for i in $(openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID security group list | awk '/default/{ print $2 }'); do - openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID security group rule create $i --protocol icmp --remote-ip 0.0.0.0/0 & - openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID security group rule create $i --protocol udp --remote-ip 0.0.0.0/0 & - openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID security group rule create $i --protocol tcp --remote-ip 0.0.0.0/0 & +for i in $(openstack security group list | awk '/default/{ print $2 }'); do + openstack security group rule create $i --protocol icmp --remote-ip 0.0.0.0/0 & + openstack security group rule create $i --protocol udp --remote-ip 0.0.0.0/0 & + openstack security group rule create $i --protocol tcp --remote-ip 0.0.0.0/0 & done wait echo "Creating networks" NETWORK=management echo "Creating ${NETWORK} network" -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID network create ${NETWORK} --enable --no-share -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID subnet create ${NETWORK}-subnet --network=${NETWORK} --subnet-range=${MANAGEMENT_SUBNET}.0/24 -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router create ${NETWORK}-router -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router add subnet ${NETWORK}-router ${NETWORK}-subnet -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router set --external-gateway osm-ext ${NETWORK}-router +openstack network create ${NETWORK} --enable --no-share +openstack subnet create ${NETWORK}-subnet --network=${NETWORK} --subnet-range=${MANAGEMENT_SUBNET}.0/24 --gateway none --dns-nameserver 172.21.18.2 --host-route destination=0.0.0.0/0,gateway=10.0.0.10 NETWORK=SGi echo "Creating ${NETWORK} network" -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID network create ${NETWORK} --enable --no-share -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID subnet create ${NETWORK}-subnet --network=${NETWORK} --subnet-range=${SGi_SUBNET}.0/24 -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router create ${NETWORK}-router -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router add subnet ${NETWORK}-router ${NETWORK}-subnet -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router set --external-gateway osm-ext ${NETWORK}-router +openstack network create ${NETWORK} --enable --no-share +openstack subnet create ${NETWORK}-subnet --network=${NETWORK} --subnet-range=${SGi_SUBNET}.0/24 --gateway none --host-route destination=0.0.0.0/0,gateway=10.0.0.10 NETWORK=S1 echo "Creating ${NETWORK} network" -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID network create ${NETWORK} --enable --no-share -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID subnet create ${NETWORK}-subnet --network=${NETWORK} --subnet-range=${S1_SUBNET}.0/24 -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router create ${NETWORK}-router -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router add subnet ${NETWORK}-router ${NETWORK}-subnet -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router set --external-gateway osm-ext ${NETWORK}-router +openstack network create ${NETWORK} --enable --no-share +openstack subnet create ${NETWORK}-subnet --network=${NETWORK} --subnet-range=${S1_SUBNET}.0/24 echo "Creating Private network" -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID network create private --enable --no-share -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID subnet create private-subnet --network=private --subnet-range=${PRIVATE_SUBNET}.0/24 +openstack network create private --enable --no-share +openstack subnet create private-subnet --network=private --subnet-range=${PRIVATE_SUBNET}.0/24 --gateway none --host-route destination=0.0.0.0/0,gateway=192.168.239.250 -echo "Creating ports" -# This port gets created as the admin -IP=`expr ${PARTICIPANT} + 100` -openstack port create --fixed-ip ip-address=${SUBNET}.${IP} --project=${PROJECT} --enable --network osm-ext hackfest-osm-${PARTICIPANT} & # Create as the project user -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID port create --fixed-ip ip-address=192.168.239.250 --enable --disable-port-security --network private VyOS-private & -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID port create --fixed-ip ip-address=10.0.0.10 --enable --network management OSM-management & -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID port create --fixed-ip ip-address=10.0.0.11 --enable --network management MK8s-management & -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID port create --fixed-ip ip-address=10.0.0.250 --enable --network management VyOS-management & +echo "Creating Ports" +openstack port create --disable-port-security --fixed-ip ip-address=192.168.239.250 --enable --disable-port-security --network private VyOS-private & +openstack port create --disable-port-security --fixed-ip ip-address=10.0.0.10 --enable --network management OSM-management & +openstack port create --disable-port-security --fixed-ip ip-address=10.0.0.11 --enable --network management MK8s-management & + echo "Creating Keypair" -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID keypair create --public-key ./hackfest_rsa.pub ${KEY_NAME} & +openstack keypair create --public-key ./hackfest_rsa.pub ${KEY_NAME} & wait echo "Launching OSM VM" -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID server create --key-name ${KEY_NAME} --flavor ${FLAVOR} --image ubuntu20.04 --nic port-id=hackfest-osm-${PARTICIPANT} --nic port-id=OSM-management --user-data ./osm-cloud-init.yaml osm-${PARTICIPANT} +openstack server create --availability-zone ${ZONE} --key-name ${KEY_NAME} --flavor ${FLAVOR} --image ${FOCAL} --nic port-id=hackfest-osm-${PARTICIPANT} --nic port-id=OSM-management --user-data ./osm-cloud-init.yaml osm-${PARTICIPANT} echo "Launching Microk8s VM" -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID server create --key-name ${KEY_NAME} --flavor ${FLAVOR} --image ubuntu22.04 --nic port-id=MK8s-management microk8s +openstack server create --availability-zone ${ZONE} --key-name ${KEY_NAME} --flavor ${FLAVOR} --image ${FOCAL} --nic port-id=MK8s-management -- microk8s echo "Launching VyOS Router" -openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID server create --flavor m1.small --image vyos-1.1.7 --nic port-id=VyOS-management --nic port-id=VyOS-private --config-drive True --user-data "`pwd`/vyos-userdata.vsh" vyos-pnf-router +openstack server create --availability-zone ${ZONE} --flavor m1.small --image ${VyOS} --nic port-id=VyOS-management-${PARTICIPANT} --nic port-id=VyOS-private --config-drive True --user-data "`pwd`/vyos-userdata.vsh" vyos-pnf-router echo "Waiting for OSM VM to be ready" diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/delete-openstack-user-and-project.sh b/Hackfest_Demos/OSM-MR13/Setup Scripts/delete-openstack-user-and-project.sh index 98a83c30b0e6b779dd5796d97b755e34eeb7e37e..1ade3cf97b4f997079f09dd4b7eeb8852c8fa545 100755 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/delete-openstack-user-and-project.sh +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/delete-openstack-user-and-project.sh @@ -15,11 +15,12 @@ echo Cleaning up ${OPENSTACK_USER} PROJECT_ID=`openstack project list | grep "${PROJECT} " | awk '{print $2}'` if [ "${PROJECT_ID}" != "" ]; then + unset OS_PROJECT_NAME echo "Removing Router Ports" for ROUTER in $(openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router list -f value -c ID); do openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router unset --external-gateway ${ROUTER} PORT=$(openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router show ${ROUTER} -f json -c interfaces_info | jq .interfaces_info[0].port_id -r) - while [ "${PORT}" != "null" ] ; do + while [ "${PORT}" != "null" -a "${PORT}" != "" ] ; do openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router remove port ${ROUTER} ${PORT} PORT=$(openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router show ${ROUTER} -f json -c interfaces_info | jq .interfaces_info[0].port_id -r) done @@ -34,6 +35,7 @@ if [ "${PROJECT_ID}" != "" ]; then echo "Removing Networks" openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID network list -f value -c ID| xargs openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID network delete + . ./admin-credentials.rc for RBAC in `openstack network rbac list -f value -c ID`; do openstack network rbac show $RBAC -f value | grep $PROJECT_ID 2> /dev/null if [ $? -eq 0 ] ; then diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/osm-cloud-init.yaml b/Hackfest_Demos/OSM-MR13/Setup Scripts/osm-cloud-init.yaml index 7384a54159517871cf09d02d62c09ab5a93ab1d9..ddafb92fe2bddb514dc5f132899cd227e6ae5a47 100644 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/osm-cloud-init.yaml +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/osm-cloud-init.yaml @@ -13,5 +13,11 @@ write_files: ens4: dhcp4-overrides: use-routes: false + ens5: + dhcp4-overrides: + use-routes: false + ens6: + dhcp4-overrides: + use-routes: false runcmd: - reboot \ No newline at end of file diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/run-install-osm.sh b/Hackfest_Demos/OSM-MR13/Setup Scripts/run-install-osm.sh index e51f915730c2f65079b3af0887e221bbe93b3334..7ee94d4232a53e97df681d3f7b3424ce5cea289c 100755 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/run-install-osm.sh +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/run-install-osm.sh @@ -4,13 +4,13 @@ echo $0 started at $(date) . ./common-vars $@ for PARTICIPANT in `seq ${START} ${MAX}` ; do - IP=`expr ${PARTICIPANT} + 100` + IP=`expr ${PARTICIPANT} + 0` scp -o StrictHostKeyChecking=no -i hackfest_rsa ./vm-install-osm.sh ubuntu@${SUBNET}.${IP}: & done wait for PARTICIPANT in `seq ${START} ${MAX}` ; do - IP=`expr ${PARTICIPANT} + 100` + IP=`expr ${PARTICIPANT} + 0` ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} ./vm-install-osm.sh 2>&1 | tee -a logs/vm-install-osm-${PARTICIPANT}.log& done wait diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/run-microk8s-setup.sh b/Hackfest_Demos/OSM-MR13/Setup Scripts/run-microk8s-setup.sh index c72e9f5d657850158c3d4a3088a27290f952ecf0..e0dd4b26daeb286dff2a509738611e26c6255a24 100755 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/run-microk8s-setup.sh +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/run-microk8s-setup.sh @@ -4,14 +4,14 @@ echo $0 started at $(date) . ./common-vars $@ for PARTICIPANT in `seq ${START} ${MAX}` ; do - IP=`expr ${PARTICIPANT} + 100` + IP=`expr ${PARTICIPANT} + 0` scp -o StrictHostKeyChecking=no -i hackfest_rsa ./hackfest_rsa ./hackfest_rsa.pub ubuntu@${SUBNET}.${IP}:.ssh/ & scp -o StrictHostKeyChecking=no -i hackfest_rsa vm-microk8s-setup.sh ubuntu@${SUBNET}.${IP}: & done wait for PARTICIPANT in `seq ${START} ${MAX}` ; do - IP=`expr ${PARTICIPANT} + 100` + IP=`expr ${PARTICIPANT} + 0` ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} "scp -o StrictHostKeyChecking=no -i .ssh/hackfest_rsa vm-microk8s-setup.sh 10.0.0.11:; ssh -o StrictHostKeyChecking=no -i .ssh/hackfest_rsa 10.0.0.11 ./vm-microk8s-setup.sh" 2>&1 | tee -a logs/vm-microk8s-setup-${PARTICIPANT}.log& done wait diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/run-osm-vim-k8scluster-add.sh b/Hackfest_Demos/OSM-MR13/Setup Scripts/run-osm-vim-k8scluster-add.sh index 9fcf25b2fd815890a13b22fecd61f827efc37264..e33b9025c6b3087d749709f38b4f13a3643046ff 100755 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/run-osm-vim-k8scluster-add.sh +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/run-osm-vim-k8scluster-add.sh @@ -2,11 +2,11 @@ echo $0 started at $(date) . ./common-vars $@ -. ./hackfest-credentials.rc +. ./admin-credentials.rc for PARTICIPANT in `seq ${START} ${MAX}` ; do - IP=`expr ${PARTICIPANT} + 100` + IP=`expr ${PARTICIPANT} + 0` OS_USERNAME=hackfest-${PARTICIPANT} OS_PASSWORD=hackfest diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/run-vm-initial-setup.sh b/Hackfest_Demos/OSM-MR13/Setup Scripts/run-vm-initial-setup.sh index c6702214a67cb45cfd91dc215616318f95452b8a..7cf0faf05f6b6121db14fe0b5bb386810f003dfe 100755 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/run-vm-initial-setup.sh +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/run-vm-initial-setup.sh @@ -4,7 +4,7 @@ echo $0 started at $(date) . ./common-vars $@ for PARTICIPANT in `seq ${START} ${MAX}` ; do - IP=`expr ${PARTICIPANT} + 100` + IP=`expr ${PARTICIPANT} + 0` scp -o StrictHostKeyChecking=no -i hackfest_rsa vm-initial-setup.sh ubuntu@${SUBNET}.${IP}: & scp -o StrictHostKeyChecking=no -i hackfest_rsa ./hackfest_rsa ./hackfest_rsa.pub ubuntu@${SUBNET}.${IP}:.ssh/ & @@ -13,7 +13,7 @@ done wait for PARTICIPANT in `seq ${START} ${MAX}` ; do - IP=`expr ${PARTICIPANT} + 100` + IP=`expr ${PARTICIPANT} + 0` ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} "./vm-initial-setup.sh" 2>&1 | tee -a logs/vm-initial-setup-${PARTICIPANT}.log & done wait diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-initial-setup.sh b/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-initial-setup.sh index f6d1b55ae00a94b5d6fafca781254d8bf6928e42..ec1b75fdf11cbf5243a115705a1123421b9b4ee9 100755 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-initial-setup.sh +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-initial-setup.sh @@ -5,8 +5,8 @@ sudo sed -i "s/127.0.0.1 /127.0.0.1 $HOSTNAME /" /etc/hosts echo 'ubuntu:hackfest'| sudo chpasswd sudo sed -i "s/^PasswordAuthentication.*/PasswordAuthentication yes/" /etc/ssh/sshd_config sudo service ssh restart -echo "Acquire::http::Proxy \"http://172.21.1.1:3142\";" | sudo tee /etc/apt/apt.conf.d/proxy.conf -echo "Acquire::https::Proxy \"http://172.21.1.1:3142\";" | sudo tee -a /etc/apt/apt.conf.d/proxy.conf +echo "Acquire::http::Proxy \"http://172.21.18.3:3142\";" | sudo tee /etc/apt/apt.conf.d/proxy.conf +echo "Acquire::https::Proxy \"http://172.21.18.3:3142\";" | sudo tee -a /etc/apt/apt.conf.d/proxy.conf sudo apt update sudo apt full-upgrade -y @@ -30,4 +30,12 @@ ResultInactive=yes ResultActive=yes EOF +echo net.ipv4.ip_forward=1 | sudo tee -a /etc/sysctl.conf +sudo sysctl net.ipv4.ip_forward=1 +sudo iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE +cat << EOF | sudo tee /etc/rc.local +#!/bin/sh -e +echo iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE +EOF +sudo chmod +x /etc/rc.local echo $0 $@ complete at $(date) \ No newline at end of file diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-install-osm.sh b/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-install-osm.sh index 80f214b86cdb7cf2af4398de240a3546144b21df..7a4b58cebec102b0447a11cc012ed39726d5229e 100755 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-install-osm.sh +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-install-osm.sh @@ -5,9 +5,9 @@ sudo snap install microk8s --classic --channel=1.23/stable sudo mkdir -p /var/snap/microk8s/current/args/certs.d/docker.io cat << EOF | sudo tee /var/snap/microk8s/current/args/certs.d/docker.io/hosts.toml -server = "http://172.21.1.1:5000" +server = "http://172.21.18.3:5000" -[host."http://172.21.1.1:5000"] +[host."http://172.21.18.3:5000"] capabilities = ["pull", "resolve"] skip_verify = true plain-http = true @@ -36,6 +36,10 @@ done # Change the password osm user-update admin --password hackfest sudo sed -i "s/127.0.0.1 /127.0.0.1 nbi.osm ui.osm grafana.osm prometheus.osm /" /etc/hosts +juju config -m osm mon grafana_password=hackfest +POD=`microk8s.kubectl -n osm get po | grep -v operator | grep grafana- | awk '{print $1}'` +microk8s.kubectl exec -n osm -it $POD -- grafana-cli admin reset-admin-password hackfest + juju config -m osm nbi site_url=https://nbi.osm juju config -m osm ng-ui site_url=https://ui.osm diff --git a/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-microk8s-setup.sh b/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-microk8s-setup.sh index b7cf75cc798203df016d11b566718bcc3caced9c..d598c965784e5ab1bc34e8fd77a780ecd3df1e6b 100755 --- a/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-microk8s-setup.sh +++ b/Hackfest_Demos/OSM-MR13/Setup Scripts/vm-microk8s-setup.sh @@ -5,8 +5,8 @@ sudo sed -i "s/127.0.0.1 /127.0.0.1 $HOSTNAME /" /etc/hosts echo 'ubuntu:hackfest'| sudo chpasswd sudo sed -i "s/^PasswordAuthentication.*/PasswordAuthentication yes/" /etc/ssh/sshd_config sudo service ssh restart -echo "Acquire::http::Proxy \"http://172.21.1.1:3142\";" | sudo tee /etc/apt/apt.conf.d/proxy.conf -echo "Acquire::https::Proxy \"http://172.21.1.1:3142\";" | sudo tee -a /etc/apt/apt.conf.d/proxy.conf +echo "Acquire::http::Proxy \"http://172.21.18.3:3142\";" | sudo tee /etc/apt/apt.conf.d/proxy.conf +echo "Acquire::https::Proxy \"http://172.21.18.3:3142\";" | sudo tee -a /etc/apt/apt.conf.d/proxy.conf sudo apt update sudo apt full-upgrade -y @@ -14,9 +14,9 @@ sudo apt full-upgrade -y sudo snap install microk8s --classic --channel=1.23/stable sudo mkdir -p /var/snap/microk8s/current/args/certs.d/docker.io cat << EOF | sudo tee /var/snap/microk8s/current/args/certs.d/docker.io/hosts.toml -server = "http://172.21.1.1:5000" +server = "http://172.21.18.3:5000" -[host."http://172.21.1.1:5000"] +[host."http://172.21.18.3:5000"] capabilities = ["pull", "resolve"] skip_verify = true plain-http = true