Commit 4a772376 authored by Mark Beierl's avatar Mark Beierl
Browse files

More updates


Signed-off-by: Mark Beierl's avatarMark Beierl <mark.beierl@canonical.com>
parent a0bb1ca6
Pipeline #7583 failed with stage
in 1 minute and 34 seconds
#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_TYPE=password
export OS_AUTH_URL=https://keystone.pc1.canonical.com:5000/v3
export OS_CACERT=/home/mark/git/osm/files/pc-cacert.pem
export OS_DOMAIN_NAME=admin_domain
export OS_IDENTITY_API_VERSION=3
export OS_INTERFACE=public
export OS_PASSWORD=`cat admin.password`
#export OS_REGION_NAME='RegionOne'
#export OS_INTERFACE=public
#export OS_IDENTITY_API_VERSION=3
export OS_PROJECT_DOMAIN_NAME=admin_domain
export OS_PROJECT_NAME=admin
export OS_REGION_NAME=PartnerCloud1
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
cleanup() {
# kill all processes whose parent is this process
pkill -P $$
}
for sig in INT QUIT HUP TERM; do
trap "
cleanup
trap - $sig EXIT
kill -s $sig "'"$$"' "$sig"
done
trap cleanup EXIT
if [ ! -z ${DEBUG} ]; then
set -x
fi
......@@ -29,4 +42,4 @@ 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
VyOS="vyos-1.1.7-cloudinit"
......@@ -10,31 +10,31 @@ OPENSTACK_USER=hackfest-${PARTICIPANT}
PROJECT=hackfest-${PARTICIPANT}
PASSWORD=hackfest
echo "Creating OpenStack project: $PROJECT"
openstack project create --domain ${ADMIN_DOMAIN} $PROJECT
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 &
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 &
openstack user create --project ${PROJECT} --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"
echo "Creating OpenStack Network RBAC policy access_as_external, for network $NETWORK and project ${PROJECT}"
openstack network rbac create \
--target-project $PROJECT \
--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"
echo "Creating OpenStack Network RBAC policy access_as_shared, for network $NETWORK and project ${PROJECT}"
openstack network rbac create \
--target-project $PROJECT \
--target-project ${PROJECT} \
--type network \
--action access_as_shared \
$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`
......@@ -44,10 +44,18 @@ openstack port create --disable-port-security --fixed-ip ip-address=${SUBNET}.${
openstack port create --disable-port-security --fixed-ip ip-address=${SUBNET}.${VYOSIP} --project=${PROJECT} --enable --network osm-ext VyOS-management-${PARTICIPANT} &
wait
# This is done as the tenant, and some form of bug makes it necessary to unset this variable
unset OS_PROJECT_NAME
export OS_USERNAME=${OPENSTACK_USER}
export OS_PASSWORD=${PASSWORD}
export OS_PROJECT_NAME=${PROJECT}
NOT_READY=1
while [ $NOT_READY -eq 1 ] ; do
openstack server list
NOT_READY=$?
done
echo "Adding security groups"
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 &
......@@ -60,7 +68,7 @@ echo "Creating networks"
NETWORK=management
echo "Creating ${NETWORK} network"
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
openstack subnet create ${NETWORK}-subnet --network=${NETWORK} --subnet-range=${MANAGEMENT_SUBNET}.0/24 --gateway none --dns-nameserver 172.21.18.2 --dhcp --allocation-pool start=10.0.0.101,end=10.0.0.199 --host-route destination=0.0.0.0/0,gateway=10.0.0.10
NETWORK=SGi
echo "Creating ${NETWORK} network"
......@@ -88,11 +96,12 @@ openstack keypair create --public-key ./hackfest_rsa.pub ${KEY_NAME} &
wait
echo "Launching OSM VM"
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}
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 server create --availability-zone ${ZONE} --key-name ${KEY_NAME} --flavor ${FLAVOR} --image ${FOCAL} --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 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
wait
echo "Waiting for OSM VM to be ready"
......
-----BEGIN CERTIFICATE-----
MIIDazCCAlOgAwIBAgIUamWIGAvUwJHZAOv9r4Aa3sI//SowDQYJKoZIhvcNAQEL
BQAwPTE7MDkGA1UEAxMyVmF1bHQgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkg
KGNoYXJtLXBraS1sb2NhbCkwHhcNMjIxMDA1MjM1NDEzWhcNMzIxMDAyMjI1NDQz
WjA9MTswOQYDVQQDEzJWYXVsdCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAo
Y2hhcm0tcGtpLWxvY2FsKTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
ALbGiAa6r4jkMEDnVuw6DdTvRMxYh7ot6T9tkdWqJYGcmywZixeiOyCjn6Z4F5Bm
945/iQqP7IVz9Ck8wyb+3c9Pd9lXCaaLSSR2Zi2JObmlMvg+I0JeoxxvtfqU/dD1
UnDAccYcfBuHPQy7SUXqqIYwjFUIMJPbFzBTaWRxZlSJXz71Wj9BQY5hzs69aukq
IylJFGzaZX9N33AT0kKLQCg1O6JGjIbyAmbpyswvzzYJk39xrv86njJgq8u0DAm7
/jgAgmKeY9KYrymVWo8k8L01Q+oukggAL4lw6KGQL1Cen43W7yxGgKCYNukfFUXN
ukpZeYFojk544/bxAbWbK2kCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgEGMA8GA1Ud
EwEB/wQFMAMBAf8wHQYDVR0OBBYEFI7WUsgGRmjqYRTPcpaaN0asDL7qMB8GA1Ud
IwQYMBaAFI7WUsgGRmjqYRTPcpaaN0asDL7qMA0GCSqGSIb3DQEBCwUAA4IBAQAN
LSmEiAyjT5NvRm/BRALXYbL8lae48H5E3sNjQJJD/ghKR3UNsSKqd61X30WgochQ
YVVeFbtRifOChhM9D+TFDKMsb0ZS8zfpJxfIUPF4q4dNR2DCAAmC964f+2H86nKX
WaCvkBGmpXexpZdJcQt7Hx+MuFydhv4qUBHHLIRJqj3EfPCoMj+rtJ1/3hp/WPNJ
K0sq9F+50oyCG2BUc08xF3Je90y7ukY3ZJF7whSTCR38T6dvVTjnNRup0+Msvn49
DBFYnDIRC2NiHRr/6jaQgfaQ+WelxitO31auQzA7rVhlq02gHzAU7WfUKXJehLlv
YNBsjiiusMse18zDxhi0
-----END CERTIFICATE-----
......@@ -5,6 +5,7 @@ echo $0 started at $(date)
for PARTICIPANT in `seq ${START} ${MAX}` ; do
IP=`expr ${PARTICIPANT} + 0`
scp -o StrictHostKeyChecking=no -i hackfest_rsa ./hackfest_rsa ubuntu@${SUBNET}.${IP}:.ssh/id_rsa &
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
......
......@@ -13,15 +13,19 @@ for PARTICIPANT in `seq ${START} ${MAX}` ; do
OS_PROJECT_NAME=hackfest-${PARTICIPANT}
cat << EOF > ${OS_USERNAME}.rc
export OS_AUTH_TYPE=password
export OS_AUTH_URL=${OS_AUTH_URL}
export OS_CACERT=/home/ubuntu/pc-cacert.pem
export OS_DOMAIN_NAME=${OS_DOMAIN_NAME}
export OS_IDENTITY_API_VERSION=3
export OS_INTERFACE=public
export OS_PASSWORD=${OS_PASSWORD}
export OS_PROJECT_DOMAIN_NAME=${OS_DOMAIN_NAME}
export OS_PROJECT_NAME=${OS_PROJECT_NAME}
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_ID=default
export OS_REGION_NAME=${OS_REGION_NAME}
export OS_TENANT_NAME=${OS_USERNAME}
export OS_USERNAME=${OS_USERNAME}
export OS_PASSWORD=hackfest
export OS_REGION_NAME='RegionOne'
export OS_INTERFACE=public
export OS_IDENTITY_API_VERSION=3
export OS_USER_DOMAIN_NAME=${OS_DOMAIN_NAME}
EOF
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} ". .profile;osm version"
......@@ -29,7 +33,9 @@ EOF
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
scp -o StrictHostKeyChecking=no -i hackfest_rsa pc-cacert.pem 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_NAME}, 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"
......
......@@ -2,6 +2,7 @@
echo $0 started at $(date)
sudo snap install microk8s --classic --channel=1.23/stable
sudo snap install jq
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
......@@ -15,14 +16,13 @@ EOF
sudo systemctl restart snap.microk8s.daemon-containerd.service
sudo microk8s.enable storage
#sudo microk8s enable dns:8.8.8.8
sudo microk8s enable dns:172.21.18.2
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
./install_osm.sh -R testing-daily -r testing -y --charmed --tag testing-daily 2>&1 | tee install_osm.log
# Set our environment to talk to the new OSM
$(grep "export OSM_PASSWORD" install_osm.log|head -1)
......@@ -35,16 +35,19 @@ 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 mon grafana-password=hackfest
POD=`sudo microk8s.kubectl -n osm get po | grep -v operator | grep grafana- | awk '{print $1}'`
sudo microk8s.kubectl exec -n osm -it $POD -- grafana-cli admin reset-admin-password hackfest
juju config -m osm prometheus web_config_password=hackfest
# Expose our services
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 nbi site_url=https://nbi.osm
juju config -m osm ng-ui site_url=https://ui.osm
juju config -m osm grafana site_url=https://grafana.osm
juju config -m osm prometheus site_url=https://prometheus.osm
juju config -m osm nbi external-hostname=nbi.osm
juju config -m osm ng-ui external-hostname=ui.osm
echo "export OSM_HOSTNAME=nbi.osm:443" >> .bashrc
echo "export OSM_HOSTNAME=nbi.osm:443" >> .profile
......
......@@ -26,7 +26,7 @@ sudo systemctl restart snap.microk8s.daemon-containerd.service
sudo microk8s.enable storage
HOST_IP=10.0.0.11
METALLB_START=10.0.0.200
METALLB_START=10.0.0.201
METALLB_END=10.0.0.250
sudo cat /var/snap/microk8s/current/args/kube-apiserver | grep advertise-address || ( echo "--advertise-address ${HOST_IP}" | sudo tee -a /var/snap/microk8s/current/args/kube-apiserver; sudo microk8s.stop; sudo microk8s.start; )
......
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