Cleanup old scripts
* get-values-overrides.sh and wait-for-pods.sh are not needed anymore because they are now a part of openstack-helm-plugin * The functionality of setup-gateway.sh and setup-ceph-loopbash-device.sh moved to deploy-env role Change-Id: Ia4c4142f98bd914e91830109ae5a0adf83f9d6cf
This commit is contained in:
parent
090878eba4
commit
86f5b0e36f
@ -1,18 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
set -e
|
||||
|
||||
export HELM_CHART_ROOT_PATH=${HELM_CHART_ROOT_PATH:-"../openstack-helm"}
|
||||
${OSH_INFRA_PATH:-"../openstack-helm-infra"}/tools/deployment/common/get-values-overrides.sh $1 $2
|
@ -1,87 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
function setup_loopback_devices() {
|
||||
osd_data_device="$1"
|
||||
osd_wal_db_device="$2"
|
||||
namespace=${CEPH_NAMESPACE}
|
||||
sudo mkdir -p /var/lib/openstack-helm/$namespace
|
||||
sudo truncate -s 10G /var/lib/openstack-helm/$namespace/ceph-osd-data-loopbackfile.img
|
||||
sudo truncate -s 8G /var/lib/openstack-helm/$namespace/ceph-osd-db-wal-loopbackfile.img
|
||||
sudo -E bash -c "cat <<EOF > /etc/systemd/system/loops-setup.service
|
||||
[Unit]
|
||||
Description=Setup loop devices
|
||||
DefaultDependencies=no
|
||||
Conflicts=umount.target
|
||||
Before=local-fs.target
|
||||
After=systemd-udevd.service
|
||||
Requires=systemd-udevd.service
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/sbin/losetup $osd_data_device '/var/lib/openstack-helm/$namespace/ceph-osd-data-loopbackfile.img'
|
||||
ExecStart=/sbin/losetup $osd_wal_db_device '/var/lib/openstack-helm/$namespace/ceph-osd-db-wal-loopbackfile.img'
|
||||
ExecStop=/sbin/losetup -d $osd_data_device
|
||||
ExecStop=/sbin/losetup -d $osd_wal_db_device
|
||||
TimeoutSec=60
|
||||
RemainAfterExit=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=local-fs.target
|
||||
Also=systemd-udevd.service
|
||||
EOF"
|
||||
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl start loops-setup
|
||||
sudo systemctl status loops-setup
|
||||
sudo systemctl enable loops-setup
|
||||
# let's verify the devices
|
||||
sudo losetup -a
|
||||
if losetup |grep -i $osd_data_device; then
|
||||
echo "ceph osd data disk got created successfully"
|
||||
else
|
||||
echo "could not find ceph osd data disk so exiting"
|
||||
exit 1
|
||||
fi
|
||||
if losetup |grep -i $osd_wal_db_device; then
|
||||
echo "ceph osd wal/db disk got created successfully"
|
||||
else
|
||||
echo "could not find ceph osd wal/db disk so exiting"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
while [[ "$#" > 0 ]]; do case $1 in
|
||||
-d|--ceph-osd-data) OSD_DATA_DEVICE="$2"; shift;shift;;
|
||||
-w|--ceph-osd-dbwal) OSD_DB_WAL_DEVICE="$2";shift;shift;;
|
||||
-v|--verbose) VERBOSE=1;shift;;
|
||||
*) echo "Unknown parameter passed: $1"; shift;;
|
||||
esac; done
|
||||
|
||||
# verify params
|
||||
if [ -z "$OSD_DATA_DEVICE" ]; then
|
||||
OSD_DATA_DEVICE=/dev/loop0
|
||||
echo "Ceph osd data device is not set so using ${OSD_DATA_DEVICE}"
|
||||
else
|
||||
ceph_osd_disk_name=`basename "$OSD_DATA_DEVICE"`
|
||||
if losetup -a|grep $ceph_osd_disk_name; then
|
||||
echo "Ceph osd data device is already in use, please double check and correct the device name"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "$OSD_DB_WAL_DEVICE" ]; then
|
||||
OSD_DB_WAL_DEVICE=/dev/loop1
|
||||
echo "Ceph osd db/wal device is not set so using ${OSD_DB_WAL_DEVICE}"
|
||||
else
|
||||
ceph_dbwal_disk_name=`basename "$OSD_DB_WAL_DEVICE"`
|
||||
if losetup -a|grep $ceph_dbwal_disk_name; then
|
||||
echo "Ceph osd dbwal device is already in use, please double check and correct the device name"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
: "${CEPH_NAMESPACE:="ceph"}"
|
||||
# setup loopback devices for ceph osds
|
||||
setup_loopback_devices $OSD_DATA_DEVICE $OSD_DB_WAL_DEVICE
|
@ -1,77 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
set -xe
|
||||
|
||||
# By default we set enable-chassis-as-gw on all OVN controllers which means
|
||||
# all nodes are connected to the provider network, but for test environment this is not
|
||||
# the case.
|
||||
if [[ "$FEATURES" =~ (,|^)ovn(,|$) ]]; then
|
||||
HOSTNAME=$(hostname -f)
|
||||
kubectl -n openstack get po --selector application=ovn,component=ovn-controller -o name | while read po; do
|
||||
kubectl -n openstack exec $po -c controller -- bash -c "if [[ \$(hostname -f) != ${HOSTNAME} ]]; then ovs-vsctl set open . external-ids:ovn-cms-options=availability-zones=nova; fi"
|
||||
done
|
||||
fi
|
||||
|
||||
sleep 10
|
||||
export OS_CLOUD=openstack_helm
|
||||
openstack network agent list
|
||||
openstack availability zone list --network
|
||||
|
||||
# Assign IP address to br-ex
|
||||
: ${OSH_EXT_SUBNET:="172.24.4.0/24"}
|
||||
: ${OSH_BR_EX_ADDR:="172.24.4.1/24"}
|
||||
sudo ip addr replace ${OSH_BR_EX_ADDR} dev br-ex
|
||||
sudo ip link set br-ex up
|
||||
: ${OPENSTACK_RELEASE:=xena}
|
||||
: ${CONTAINER_DISTRO_NAME:=ubuntu}
|
||||
: ${CONTAINER_DISTRO_VERSION:=focal}
|
||||
: ${DNSMASQ_IMAGE:=docker.io/openstackhelm/neutron:${OPENSTACK_RELEASE}-${CONTAINER_DISTRO_NAME}_${CONTAINER_DISTRO_VERSION}}
|
||||
|
||||
# NOTE(portdirect): With Docker >= 1.13.1 the default FORWARD chain policy is
|
||||
# configured to DROP, for the l3 agent to function as expected and for
|
||||
# VMs to reach the outside world correctly this needs to be set to ACCEPT.
|
||||
sudo iptables -P FORWARD ACCEPT
|
||||
|
||||
# Setup masquerading on default route dev to public subnet by searching for the
|
||||
# interface with default routing, if multiple default routes exist then select
|
||||
# the one with the lowest metric.
|
||||
DEFAULT_ROUTE_DEV=$(route -n | awk '/^0.0.0.0/ { print $5 " " $NF }' | sort | awk '{ print $NF; exit }')
|
||||
sudo iptables -t nat -A POSTROUTING -o ${DEFAULT_ROUTE_DEV} -s ${OSH_EXT_SUBNET} -j MASQUERADE
|
||||
|
||||
# Increase the number of inotify user instances
|
||||
# otherwise we get the error "failed to create inotify: Too many open files"
|
||||
# when trying to start the dnsmasq
|
||||
sudo sysctl fs.inotify.max_user_instances=256
|
||||
|
||||
container_id="$(sudo docker ps -f name=br-ex-dns-server -q -a)"
|
||||
# NOTE(portdirect): Setup DNS for public endpoints
|
||||
if [ -z $container_id ]; then
|
||||
sudo docker run -d \
|
||||
--name br-ex-dns-server \
|
||||
--net host \
|
||||
--cap-add=NET_ADMIN \
|
||||
--volume /etc/kubernetes/kubelet-resolv.conf:/etc/kubernetes/kubelet-resolv.conf:ro \
|
||||
--entrypoint dnsmasq \
|
||||
${DNSMASQ_IMAGE} \
|
||||
--keep-in-foreground \
|
||||
--no-hosts \
|
||||
--bind-interfaces \
|
||||
--resolv-file=/etc/kubernetes/kubelet-resolv.conf \
|
||||
--address="/svc.cluster.local/${OSH_BR_EX_ADDR%/*}" \
|
||||
--listen-address="${OSH_BR_EX_ADDR%/*}"
|
||||
else
|
||||
echo "external bridge for dns already exists"
|
||||
fi
|
||||
sleep 3
|
||||
sudo docker top br-ex-dns-server
|
@ -1,52 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
set -e
|
||||
if [[ "$2" -gt 0 ]];then
|
||||
seconds=$2
|
||||
else
|
||||
seconds=900
|
||||
fi
|
||||
|
||||
end=$(date +%s)
|
||||
timeout=${2:-$seconds}
|
||||
end=$((end + timeout))
|
||||
while true; do
|
||||
kubectl get pods --namespace=$1 -o json | jq -r \
|
||||
'.items[].status.phase' | grep Pending > /dev/null && \
|
||||
PENDING="True" || PENDING="False"
|
||||
query='.items[]|select(.status.phase=="Running")'
|
||||
query="$query|.status.containerStatuses[].ready"
|
||||
kubectl get pods --namespace=$1 -o json | jq -r "$query" | \
|
||||
grep false > /dev/null && READY="False" || READY="True"
|
||||
kubectl get jobs --namespace=$1 -o json | jq -r \
|
||||
'.items[] | .spec.completions == .status.succeeded' | \
|
||||
grep false > /dev/null && JOBR="False" || JOBR="True"
|
||||
[ $PENDING == "False" -a $READY == "True" -a $JOBR == "True" ] && \
|
||||
break || true
|
||||
sleep 5
|
||||
now=$(date +%s)
|
||||
if [ $now -gt $end ] ; then
|
||||
echo "Containers failed to start after $timeout seconds"
|
||||
echo
|
||||
kubectl get pods --namespace $1 -o wide
|
||||
echo
|
||||
if [ $PENDING == "True" ] ; then
|
||||
echo "Some pods are in pending state:"
|
||||
kubectl get pods --field-selector=status.phase=Pending -n $1 -o wide
|
||||
fi
|
||||
[ $READY == "False" ] && echo "Some pods are not ready"
|
||||
[ $JOBR == "False" ] && echo "Some jobs have not succeeded"
|
||||
exit -1
|
||||
fi
|
||||
done
|
Loading…
x
Reference in New Issue
Block a user