Add config-internal/config-external to Nova-compute containers
Partially Implements: Blueprint standard-start Change-Id: Ia219015f18d788d0c01c0bffee6b475bb07291a9
This commit is contained in:
parent
3a4500c122
commit
0de0833675
@ -8,6 +8,8 @@ ADD config-nova-compute.sh /opt/kolla/config-nova-compute.sh
|
||||
|
||||
ADD ./start.sh /start.sh
|
||||
|
||||
COPY config-internal.sh config-external.sh /opt/kolla/
|
||||
|
||||
VOLUME [ "/sys/fs/cgroup" ]
|
||||
|
||||
CMD ["/start.sh"]
|
||||
|
@ -0,0 +1 @@
|
||||
../../../../common/nova-compute/nova-compute/config-external.sh
|
@ -0,0 +1 @@
|
||||
../../../../common/nova-compute/nova-compute/config-internal.sh
|
@ -13,4 +13,6 @@ VOLUME [ "/sys/fs/cgroup" ]
|
||||
|
||||
ADD ./start.sh /start.sh
|
||||
|
||||
COPY config-internal.sh config-external.sh /opt/kolla/
|
||||
|
||||
CMD ["/start.sh"]
|
||||
|
@ -0,0 +1 @@
|
||||
../../../../common/nova-compute/nova-libvirt/config-external.sh
|
@ -0,0 +1 @@
|
||||
../../../../common/nova-compute/nova-libvirt/config-internal.sh
|
@ -7,4 +7,6 @@ RUN yum -y install openstack-nova-network \
|
||||
ADD config-nova-network.sh /opt/kolla/config-nova-network.sh
|
||||
ADD ./start.sh /start.sh
|
||||
|
||||
COPY config-internal.sh config-external.sh /opt/kolla/
|
||||
|
||||
CMD ["/start.sh"]
|
||||
|
@ -0,0 +1 @@
|
||||
../../../../common/nova-compute/nova-network/config-external.sh
|
@ -0,0 +1 @@
|
||||
../../../../common/nova-compute/nova-network/config-internal.sh
|
10
docker/common/nova-compute/nova-compute/config-external.sh
Executable file
10
docker/common/nova-compute/nova-compute/config-external.sh
Executable file
@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
SOURCE="/opt/kolla/nova-compute/nova.conf"
|
||||
TARGET="/etc/nova/nova.conf"
|
||||
OWNER="nova"
|
||||
|
||||
if [[ -f "$SOURCE" ]]; then
|
||||
cp $SOURCE $TARGET
|
||||
chown ${OWNER}: $TARGET
|
||||
chmod 0644 $TARGET
|
||||
fi
|
19
docker/common/nova-compute/nova-compute/config-internal.sh
Executable file
19
docker/common/nova-compute/nova-compute/config-internal.sh
Executable file
@ -0,0 +1,19 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
. /opt/kolla/config-nova-compute.sh
|
||||
|
||||
sleep 6
|
||||
|
||||
# https://bugs.launchpad.net/kolla/+bug/1461635
|
||||
# Cinder requires mounting /dev in the cinder-volume, nova-compute,
|
||||
# and libvirt containers. If /dev/pts/ptmx does not have proper permissions
|
||||
# on the host, then libvirt will fail to boot an instance.
|
||||
# This is a bug in Docker where it is not correctly mounting /dev/pts
|
||||
# Tech Debt tracker: https://bugs.launchpad.net/kolla/+bug/1468962
|
||||
# **Temporary fix**
|
||||
chmod 666 /dev/pts/ptmx
|
||||
|
||||
echo "Starting nova-compute."
|
||||
exec /usr/bin/nova-compute --config-file /etc/nova/nova.conf
|
@ -1,19 +1,13 @@
|
||||
#!/bin/bash
|
||||
set -o errexit
|
||||
|
||||
set -e
|
||||
CMD="/usr/bin/nova-compute"
|
||||
ARGS=""
|
||||
|
||||
. /opt/kolla/config-nova-compute.sh
|
||||
# Loading common functions.
|
||||
source /opt/kolla/kolla-common.sh
|
||||
|
||||
sleep 6
|
||||
# Config-internal script exec out of this function, it does not return here.
|
||||
set_configs
|
||||
|
||||
# https://bugs.launchpad.net/kolla/+bug/1461635
|
||||
# Cinder requires mounting /dev in the cinder-volume, nova-compute,
|
||||
# and libvirt containers. If /dev/pts/ptmx does not have proper permissions
|
||||
# on the host, then libvirt will fail to boot an instance.
|
||||
# This is a bug in Docker where it is not correctly mounting /dev/pts
|
||||
# Tech Debt tracker: https://bugs.launchpad.net/kolla/+bug/1468962
|
||||
# **Temporary fix**
|
||||
chmod 666 /dev/pts/ptmx
|
||||
|
||||
echo "Starting nova-compute."
|
||||
exec /usr/bin/nova-compute --config-file /etc/nova/nova.conf
|
||||
exec $CMD $ARGS
|
||||
|
10
docker/common/nova-compute/nova-libvirt/config-external.sh
Executable file
10
docker/common/nova-compute/nova-libvirt/config-external.sh
Executable file
@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
SOURCE=""
|
||||
TARGET=""
|
||||
OWNER=""
|
||||
|
||||
if [[ -f "$SOURCE" ]]; then
|
||||
cp $SOURCE $TARGET
|
||||
chown ${OWNER}: $TARGET
|
||||
chmod 0644 $TARGET
|
||||
fi
|
31
docker/common/nova-compute/nova-libvirt/config-internal.sh
Executable file
31
docker/common/nova-compute/nova-libvirt/config-internal.sh
Executable file
@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [[ $(cat /proc/cpuinfo | grep vmx) ]]; then
|
||||
modprobe kvm_intel
|
||||
elif [[ $(cat /proc/cpuinfo | grep svm) ]]; then
|
||||
modprobe kvm_amd
|
||||
else
|
||||
echo "WARNING: Your hardware does not support hardware virtualization -" \
|
||||
"using qemu software virtualization instead"
|
||||
fi
|
||||
|
||||
modprobe ip6_tables ip_tables ebtable_nat
|
||||
|
||||
# If libvirt is not installed on the host permissions need to be set
|
||||
# If running in qemu, we don't need to set anything as /dev/kvm won't exist
|
||||
if [[ -c /dev/kvm ]]; then
|
||||
chmod 660 /dev/kvm
|
||||
chown root:kvm /dev/kvm
|
||||
fi
|
||||
|
||||
# https://bugs.launchpad.net/kolla/+bug/1461635
|
||||
# Cinder requires mounting /dev in the cinder-volume, nova-compute,
|
||||
# and libvirt containers. If /dev/pts/ptmx does not have proper permissions
|
||||
# on the host, then libvirt will fail to boot an instance.
|
||||
# This is a bug in Docker where it is not correctly mounting /dev/pts
|
||||
# Tech Debt tracker: https://bugs.launchpad.net/kolla/+bug/1468962
|
||||
# **Temporary fix**
|
||||
chmod 666 /dev/pts/ptmx
|
||||
|
||||
echo "Starting libvirtd."
|
||||
exec /usr/sbin/libvirtd
|
@ -1,31 +1,13 @@
|
||||
#!/bin/bash
|
||||
set -o errexit
|
||||
|
||||
if [[ $(cat /proc/cpuinfo | grep vmx) ]]; then
|
||||
modprobe kvm_intel
|
||||
elif [[ $(cat /proc/cpuinfo | grep svm) ]]; then
|
||||
modprobe kvm_amd
|
||||
else
|
||||
echo "WARNING: Your hardware does not support hardware virtualization -" \
|
||||
"using qemu software virtualization instead"
|
||||
fi
|
||||
CMD="/usr/sbin/libvirtd"
|
||||
ARGS=""
|
||||
|
||||
modprobe ip6_tables ip_tables ebtable_nat
|
||||
# Loading common functions.
|
||||
source /opt/kolla/kolla-common.sh
|
||||
|
||||
# If libvirt is not installed on the host permissions need to be set
|
||||
# If running in qemu, we don't need to set anything as /dev/kvm won't exist
|
||||
if [[ -c /dev/kvm ]]; then
|
||||
chmod 660 /dev/kvm
|
||||
chown root:kvm /dev/kvm
|
||||
fi
|
||||
# Config-internal script exec out of this function, it does not return here.
|
||||
set_configs
|
||||
|
||||
# https://bugs.launchpad.net/kolla/+bug/1461635
|
||||
# Cinder requires mounting /dev in the cinder-volume, nova-compute,
|
||||
# and libvirt containers. If /dev/pts/ptmx does not have proper permissions
|
||||
# on the host, then libvirt will fail to boot an instance.
|
||||
# This is a bug in Docker where it is not correctly mounting /dev/pts
|
||||
# Tech Debt tracker: https://bugs.launchpad.net/kolla/+bug/1468962
|
||||
# **Temporary fix**
|
||||
chmod 666 /dev/pts/ptmx
|
||||
|
||||
echo "Starting libvirtd."
|
||||
exec /usr/sbin/libvirtd
|
||||
exec $CMD $ARGS
|
||||
|
10
docker/common/nova-compute/nova-network/config-external.sh
Executable file
10
docker/common/nova-compute/nova-network/config-external.sh
Executable file
@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
SOURCE="/opt/kolla/nova-network/nova.conf"
|
||||
TARGET="/etc/nova/nova.conf"
|
||||
OWNER="nova"
|
||||
|
||||
if [[ -f "$SOURCE" ]]; then
|
||||
cp $SOURCE $TARGET
|
||||
chown ${OWNER}: $TARGET
|
||||
chmod 0644 $TARGET
|
||||
fi
|
8
docker/common/nova-compute/nova-network/config-internal.sh
Executable file
8
docker/common/nova-compute/nova-network/config-internal.sh
Executable file
@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
. /opt/kolla/config-nova-network.sh
|
||||
|
||||
# Start nova-network
|
||||
exec /usr/bin/nova-network --config-file /etc/nova/nova.conf
|
@ -1,8 +1,13 @@
|
||||
#!/bin/bash
|
||||
set -o errexit
|
||||
|
||||
set -e
|
||||
CMD="/usr/bin/nova-network"
|
||||
ARGS=""
|
||||
|
||||
. /opt/kolla/config-nova-network.sh
|
||||
# Loading common functions.
|
||||
source /opt/kolla/kolla-common.sh
|
||||
|
||||
# Start nova-network
|
||||
exec /usr/bin/nova-network --config-file /etc/nova/nova.conf
|
||||
# Config-internal script exec out of this function, it does not return here.
|
||||
set_configs
|
||||
|
||||
exec $CMD $ARGS
|
||||
|
Loading…
Reference in New Issue
Block a user