Commit 67cbc2a4 authored by Mark Beierl's avatar Mark Beierl
Browse files

Updates



Added logging, creation of subnets, improved cleanup
Signed-off-by: Mark Beierl's avatarMark Beierl <mark.beierl@canonical.com>
parent f68153bd
Pipeline #7497 failed with stage
in 1 minute and 49 seconds
......@@ -14,20 +14,13 @@ FLAVOR: the flavour of the new VM to launch. Must have at least 4 CPUs, 8 GB RA
PROJECT: The project ID in which to launch the new VM
SUBNET: the first three octets of the subnet to use. IP addresses will be allocated from this subnet, starting with .101 - .199
### Creating ports
This script will create the ports in Openstack on the subnet specified
```
./create-osm-vm-ports.sh
```
### Launching VM
This script will launch all the OSM VMs in a loop
### Creating Openstack Tenants
This script will create users and projects in Openstack for hackfest-1, -2, -3, etc. These projects are for deploying workloads to, OSM itself will be installed under the admin tenant. It also creates SGi, S1, Private and Management networks, and launches OSM, VyOS and Microk8s VMs in the tenant.
```
./create-osm-vm-servers.sh
./run-create-openstack-user-and-project.sh
```
### Initial Configuration
This script updates apt, upgrades the system to the latest 20.04 and installs remote desktop software
......@@ -35,6 +28,14 @@ This script updates apt, upgrades the system to the latest 20.04 and installs re
./run-vm-setup.sh
```
### Install Microk8s
This script will configure the Microk8s VM launched by the create-openstack-user-and-project script.
```
./run-microk8s-setup.sh
```
### Install OSM
This script downloads the installer and runs it. It also sets the OSM admin password to `hackfest`.
......@@ -47,3 +48,14 @@ This script downloads the installer and runs it. It also sets the OSM admin pas
```
./run-osm-vim-k8scluster-add.sh
```
## Full Flow
```
./run-create-openstack-user-and-project.sh 1 1
./run-vm-setup.sh 1 1
./run-microk8s-setup.sh 1 1
./run-install-osm.sh 1 1
./run-osm-vim-k8scluster-add.sh 1 1
```
if [ ! -z ${DEBUG} ]; then
set -x
fi
START=1
MAX=1
......@@ -5,13 +9,19 @@ if [ ! -z $2 ] ; then
START=$1
MAX=$2
elif [ ! -z $1 ] ; then
START=$1
MAX=$1
fi
# ETSI VIM ADMIN_DOMAIN=default, Partner Cloud=admin_domain
ADMIN_DOMAIN=default
APT_PROXY=http://172.21.1.1:3142
FLAVOR=m1.xlarge
KEY_NAME=mbeierl
FLAVOR=osm.sanity
KEY_NAME=hackfest
NETWORK=osm-ext
SUBNET=172.21.248
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
#!/bin/bash
echo $0 started at $(date)
. ./common-vars
. ./admin-credentials.rc
for PARTICIPANT in `seq ${START} ${MAX}` ; do
OPENSTACK_USER=hackfest-${PARTICIPANT}
PROJECT=hackfest-${PARTICIPANT}
PASSWORD=hackfest
echo "Creating OpenStack project: $PROJECT"
openstack project create --domain ${ADMIN_DOMAIN} $PROJECT
PROJECT_ID=`openstack project list | grep $PROJECT | awk '{print $2}'`
openstack quota set --cores 64 --ram 131072 $PROJECT_ID
echo "Creating OpenStack User"
openstack user create --domain ${ADMIN_DOMAIN} --password $PASSWORD $OPENSTACK_USER
openstack role add --user $OPENSTACK_USER --project $PROJECT member
echo "Creating OpenStack Network RBAC policy access_as_external, for network $NETWORK and project $PROJECT"
openstack network rbac create \
--target-project $PROJECT \
--type network \
--action access_as_external \
$NETWORK
echo "Creating OpenStack Network RBAC policy access_as_shared, for network $NETWORK and project $PROJECT"
openstack network rbac create \
--target-project $PROJECT \
--type network \
--action access_as_shared \
$NETWORK
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
done
done
\ No newline at end of file
PARTICIPANT=${1}
OPENSTACK_USER=hackfest-${PARTICIPANT}
PROJECT=hackfest-${PARTICIPANT}
PASSWORD=hackfest
echo "Creating OpenStack project: $PROJECT"
openstack project create --domain ${ADMIN_DOMAIN} $PROJECT
PROJECT_ID=`openstack project list | grep "${PROJECT} " | awk '{print $2}'`
openstack quota set --cores 64 --ram 131072 --instances 12 $PROJECT_ID &
echo "Creating OpenStack User"
openstack user create --domain ${ADMIN_DOMAIN} --password $PASSWORD $OPENSTACK_USER
openstack role add --user $OPENSTACK_USER --project $PROJECT member &
echo "Creating OpenStack Network RBAC policy access_as_external, for network $NETWORK and project $PROJECT"
openstack network rbac create \
--target-project $PROJECT \
--type network \
--action access_as_external \
$NETWORK &
echo "Creating OpenStack Network RBAC policy access_as_shared, for network $NETWORK and project $PROJECT"
openstack network rbac create \
--target-project $PROJECT \
--type network \
--action access_as_shared \
$NETWORK &
wait
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 &
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
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
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
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
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 Keypair"
openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID 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}
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
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
echo "Waiting for OSM VM to be ready"
while [ 1 ] ; do
sleep 5
ALIVE=$(ssh -T -o ConnectTimeout=1 -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} 'cloud-init status --wait | tail -1' 2> /dev/null)
if [ "${ALIVE}" == "status: done" ] ; then break ; fi
done
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
. ./common-vars $@
. ./admin-credentials.rc
for PARTICIPANT in `seq ${START} ${MAX}` ; do
IP=`expr ${PARTICIPANT} + 100`
PROJECT="hackfest-${PARTICIPANT}"
openstack port create --fixed-ip ip-address=${SUBNET}.${IP} --project=${PROJECT} --enable --network osm-ext hackfest-osm-${PARTICIPANT}
done
#!/bin/bash
. ./common-vars $@
. ./admin-credentials.rc
for PARTICIPANT in `seq ${START} ${MAX}` ; do
openstack server create --key-name ${KEY_NAME} --flavor ${FLAVOR} --image ubuntu20.04 --nic port-id=hackfest-osm-${PARTICIPANT} osm-${PARTICIPANT}
done
#!/bin/bash
echo $0 started at $(date)
. ./common-vars
. ./admin-credentials.rc
for PARTICIPANT in `seq ${START} ${MAX}` ; do
PARTICIPANT=${1}
OPENSTACK_USER=hackfest-$1
PROJECT=$OPENSTACK_USER
OPENSTACK_USER=hackfest-$1
PROJECT=$OPENSTACK_USER
PASSWORD=hackfest
echo Cleaning up ${OPENSTACK_USER}
echo Cleaning up ${OPENSTACK_USER}
PROJECT_ID=`openstack project list | grep $PROJECT | awk '{print $2}'`
if [ "${PROJECT_ID}" != "" ]; then
PROJECT_ID=`openstack project list | grep "${PROJECT} " | awk '{print $2}'`
if [ "${PROJECT_ID}" != "" ]; then
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
echo "Deleting RBAC policy $RBAC"
openstack network rbac delete $RBAC
fi
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
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
fi
done
echo "Removing VMs"
openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID server list -f value -c ID | xargs openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID server delete
echo "Removing Routers"
openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router list -f value -c ID | xargs openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID router delete
echo "Removing Ports"
openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID port list -f value -c ID | xargs openstack --os-username=$OPENSTACK_USER --os-password=$PASSWORD --os-project-id=$PROJECT_ID port delete
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
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
echo "Deleting RBAC policy $RBAC"
openstack network rbac delete $RBAC &
fi
done
wait
echo "Deleting OpenStack project: $PROJECT"
openstack project delete --domain ${ADMIN_DOMAIN} $PROJECT
openstack project purge --project ${PROJECT_ID}
fi
echo "Deleting OpenStack User: $OPENSTACK_USER"
openstack user delete --domain ${ADMIN_DOMAIN} $OPENSTACK_USER
done
\ No newline at end of file
echo "Deleting OpenStack User: $OPENSTACK_USER"
openstack user delete --domain ${ADMIN_DOMAIN} ${OPENSTACK_USER}
echo $0 $@ complete at $(date)
\ No newline at end of file
-----BEGIN OPENSSH PRIVATE KEY-----
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
-----END OPENSSH PRIVATE KEY-----
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCclrtqjkMHuQJag9iR0/R//Dmtbu3tjOxNgId0pXwz+aS17Bv43cRsXFzGzsJq63kz0z6ClmknJjR38zu3O+GUBta92JzCSMuBTq6MpnDC7F8/JztQmvHDR3A2W5u1oVtZr+1fKAqWT7n8gIUVhjh3p1eSp9iM78JR+lJc7D6EvupL1mRudcWguIvCfPRmbnABMhR3IO0f13OtYJHAVrRAoSa5qRHEmhjkEutr0d+iuTxVmoWbAG0DiuxEcG7zbQtjBHJWqTg5dgqNJ9ZdIlY+jKw60632Ul5oD9L4OK0BDALBRNK4TqJcYsB+dBuLgblyeMyPX7cDrGOnSLAz//eSXcewkZfoZWUPmFbMBKPNCgaLjDIeYzdLc4XBCXTouO/htGM0idQUT/bebbNCDWHeJ5CU8yRvEsedJ0xb4kEUwf1rrPJqsuY1faGzHgO+LAPGoJID4GH2Bw1H+lYN/hstwGrCYKMEFDbzJJ3Cm/+GQ+f3OjJpEGsUit8mRvPswic= mark@mark-G5-5090
#cloud-config
password: hackfest
chpasswd: { expire: False }
ssh_pwauth: True
write_files:
- path: /etc/netplan/99-default-route.yaml
owner: root:root
content: |
network:
version: 2
ethernets:
ens4:
dhcp4-overrides:
use-routes: false
runcmd:
- reboot
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
. ./common-vars
. ./admin-credentials.rc
mkdir -p logs/
for PARTICIPANT in `seq ${START} ${MAX}` ; do
./create-openstack-user-and-project.sh ${PARTICIPANT} 2>&1 | tee -a logs/create-openstack-user-and-project-${PARTICIPANT}.log &
done
wait
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
. ./common-vars
. ./admin-credentials.rc
mkdir -p logs/
for PARTICIPANT in `seq ${START} ${MAX}` ; do
./delete-openstack-user-and-project.sh ${PARTICIPANT} 2>&1 | tee -a logs/delete-openstack-user-and-project-${PARTICIPANT}.log &
done
wait
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
. common-vars
./run-create-openstack-user-and-project.sh $@
./run-vm-initial-setup.sh $@
./run-microk8s-setup.sh $@ &
./run-install-osm.sh $@
wait
./run-osm-vim-k8scluster-add.sh $@
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
. ./common-vars $@
for PARTICIPANT in `seq ${START} ${MAX}` ; do
IP=`expr ${PARTICIPANT} + 100`
scp ./vm-install-osm.sh ubuntu@${SUBNET}.${IP}: &
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`
xterm -hold -e ssh ubuntu@${SUBNET}.${IP} ./vm-install-osm.sh &
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
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
. ./common-vars $@
for PARTICIPANT in `seq ${START} ${MAX}` ; do
IP=`expr ${PARTICIPANT} + 100`
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`
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
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash -x
. ./common-vars $@
#!/bin/bash
echo $0 started at $(date)
. ./common-vars $@
. ./hackfest-credentials.rc
for PARTICIPANT in `seq ${START} ${MAX}` ; do
......@@ -23,9 +24,15 @@ export OS_INTERFACE=public
export OS_IDENTITY_API_VERSION=3
EOF
scp ${OS_USERNAME}.rc ubuntu@${SUBNET}.${IP}:
ssh ubuntu@${SUBNET}.${IP} ". .profile;echo osm vim-create --name openstack --user ${OS_USERNAME} --password ${OS_PASSWORD} --auth_url ${OS_AUTH_URL} --tenant ${OS_PROJECT_NAME} --account_type openstack --config=\"{ management_network_name: osm-ext, security_groups: default, insecure: true, project_domain_name:${OS_PROJECT_DOMAIN_ID}, user_domain_name: ${OS_USER_DOMAIN_NAME} }\""
scp whitemist.yaml ubuntu@${SUBNET}.${IP}:
ssh ubuntu@${SUBNET}.${IP} '. .profile;osm k8scluster-add --creds whitemist.yaml --vim openstack --k8s-nets "{"net1": "osm-ext"}" --version 1.20 --namespace test --description "k8s cluster" whitemist'
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} ". .profile;osm version"
while [ $? -ne -0 ] ; do
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} ". .profile;osm version"
done
scp -o StrictHostKeyChecking=no -i hackfest_rsa ${OS_USERNAME}.rc ubuntu@${SUBNET}.${IP}:
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} ". .profile;osm vim-create --name openstack --user ${OS_USERNAME} --password ${OS_PASSWORD} --auth_url ${OS_AUTH_URL} --tenant ${OS_PROJECT_NAME} --account_type openstack --config=\"{ management_network_name: osm-ext, security_groups: default, insecure: true, project_domain_name:${OS_PROJECT_DOMAIN_ID}, user_domain_name: ${OS_USER_DOMAIN_NAME} }\"" 2>&1 | tee -a logs/osm-vim-k8scluster-add-${PARTICIPANT}.log
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} "scp -o StrictHostKeyChecking=no -i .ssh/hackfest_rsa ${MANAGEMENT_SUBNET}.11:kubeconfig.yaml ." 2>&1 | tee -a logs/osm-vim-k8scluster-add-${PARTICIPANT}.log
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} '. .profile;osm k8scluster-add --creds kubeconfig.yaml --vim openstack --k8s-nets "{"net1": "osm-ext"}" --version 1.23 --namespace hackfest --description "Microk8s cluster" hackfest' 2>&1 | tee -a logs/osm-vim-k8scluster-add-${PARTICIPANT}.log
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} "echo . ~/${OS_USERNAME}.rc >> .bashrc"
done
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
. ./common-vars $@
for PARTICIPANT in `seq ${START} ${MAX}` ; do
IP=`expr ${PARTICIPANT} + 100`
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/ &
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`
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
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
. ./common-vars $@
for PARTICIPANT in `seq ${START} ${MAX}` ; do
IP=`expr ${PARTICIPANT} + 100`
scp vm-initial-setup.sh ubuntu@${SUBNET}.${IP}: &
done
wait
for PARTICIPANT in `seq ${START} ${MAX}` ; do
IP=`expr ${PARTICIPANT} + 100`
ssh ubuntu@${SUBNET}.${IP} ./vm-initial-setup.sh &
done
wait
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
sudo sed -i "s/127.0.0.1 /127.0.0.1 $HOSTNAME /" /etc/hosts
echo 'ubuntu:hackfest'| sudo chpasswd
......@@ -27,4 +28,6 @@ Action=org.freedesktop.color-manager.create-device;org.freedesktop.color-manager
ResultAny=yes
ResultInactive=yes
ResultActive=yes
EOF
\ No newline at end of file
EOF
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
sudo snap install microk8s --classic --channel=1.23/stable
......@@ -18,6 +19,7 @@ sudo microk8s.enable storage
sudo snap alias microk8s.kubectl kubectl
wget https://osm-download.etsi.org/ftp/osm-12.0-twelve/install_osm.sh
chmod +x ./install_osm.sh
./install_osm.sh -y --charmed --tag testing-daily 2>&1 | tee install_osm.log
......@@ -26,6 +28,11 @@ chmod +x ./install_osm.sh
$(grep "export OSM_PASSWORD" install_osm.log|head -1)
$(grep "export OSM_HOSTNAME" install_osm.log|head -1)
while [ 1 ] ; do
osm version
if [ $? -eq 0 ]; then break ; fi
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
......@@ -39,3 +46,9 @@ echo "export OSM_HOSTNAME=nbi.osm:443" >> .bashrc
echo "export OSM_HOSTNAME=nbi.osm:443" >> .profile
echo "export OSM_PASSWORD=hackfest" >> .bashrc
echo "export OSM_PASSWORD=hackfest" >> .profile
# Set some sane defaults for LXD
lxc profile set default limits.memory 1GB
lxc profile set default limits.cpu 2
echo $0 $@ complete at $(date)
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment