OvS: Implement cleaner shutdown and start logic
This PS adds cleaner shutdown and start logic to the OvS components. Change-Id: I5c7fb212163a19d7584b37c20e7c6c757b498856 Co-Authored-By: SamYaple <sam@yaple.net>
This commit is contained in:
parent
f5a6a5dedc
commit
cc81c5f558
@ -17,15 +17,32 @@ limitations under the License.
|
|||||||
*/}}
|
*/}}
|
||||||
|
|
||||||
set -ex
|
set -ex
|
||||||
|
COMMAND="${@:-start}"
|
||||||
|
|
||||||
mkdir -p "/run/openvswitch"
|
OVS_DB=/run/openvswitch/conf.db
|
||||||
if [[ ! -e "/run/openvswitch/conf.db" ]]; then
|
OVS_SOCKET=/run/openvswitch/db.sock
|
||||||
ovsdb-tool create "/run/openvswitch/conf.db"
|
OVS_SCHEMA=/usr/share/openvswitch/vswitch.ovsschema
|
||||||
|
|
||||||
|
function start () {
|
||||||
|
mkdir -p "$(dirname ${OVS_DB})"
|
||||||
|
if [[ ! -e "${OVS_DB}" ]]; then
|
||||||
|
ovsdb-tool create "${OVS_DB}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$(ovsdb-tool needs-conversion ${OVS_DB} ${OVS_SCHEMA})" == 'yes' ]]; then
|
||||||
|
ovsdb-tool convert ${OVS_DB} ${OVS_SCHEMA}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
umask 000
|
umask 000
|
||||||
exec /usr/sbin/ovsdb-server /run/openvswitch/conf.db \
|
exec /usr/sbin/ovsdb-server ${OVS_DB} \
|
||||||
-vconsole:emer \
|
-vconsole:emer \
|
||||||
-vconsole:err \
|
-vconsole:err \
|
||||||
-vconsole:info \
|
-vconsole:info \
|
||||||
--remote=punix:/run/openvswitch/db.sock
|
--remote=punix:${OVS_SOCKET}
|
||||||
|
}
|
||||||
|
|
||||||
|
function stop () {
|
||||||
|
ovs-appctl -T1 -t /run/openvswitch/ovsdb-server.1.ctl exit
|
||||||
|
}
|
||||||
|
|
||||||
|
$COMMAND
|
||||||
|
@ -17,10 +17,13 @@ limitations under the License.
|
|||||||
*/}}
|
*/}}
|
||||||
|
|
||||||
set -ex
|
set -ex
|
||||||
|
COMMAND="${@:-start}"
|
||||||
|
|
||||||
sock="/var/run/openvswitch/db.sock"
|
OVS_SOCKET=/run/openvswitch/db.sock
|
||||||
|
|
||||||
|
function start () {
|
||||||
t=0
|
t=0
|
||||||
while [ ! -e "${sock}" ] ; do
|
while [ ! -e "${OVS_SOCKET}" ] ; do
|
||||||
echo "waiting for ovs socket $sock"
|
echo "waiting for ovs socket $sock"
|
||||||
sleep 1
|
sleep 1
|
||||||
t=$(($t+1))
|
t=$(($t+1))
|
||||||
@ -56,8 +59,15 @@ if [ -n "{{- $br -}}" ] ; then
|
|||||||
fi
|
fi
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
exec /usr/sbin/ovs-vswitchd unix:/run/openvswitch/db.sock \
|
exec /usr/sbin/ovs-vswitchd unix:${OVS_SOCKET} \
|
||||||
-vconsole:emer \
|
-vconsole:emer \
|
||||||
-vconsole:err \
|
-vconsole:err \
|
||||||
-vconsole:info \
|
-vconsole:info \
|
||||||
--mlockall
|
--mlockall
|
||||||
|
}
|
||||||
|
|
||||||
|
function stop () {
|
||||||
|
ovs-appctl -T1 -t /run/openvswitch/ovs-vswitchd.1.ctl exit
|
||||||
|
}
|
||||||
|
|
||||||
|
$COMMAND
|
||||||
|
@ -44,6 +44,13 @@ spec:
|
|||||||
privileged: true
|
privileged: true
|
||||||
command:
|
command:
|
||||||
- /tmp/openvswitch-db-server.sh
|
- /tmp/openvswitch-db-server.sh
|
||||||
|
- start
|
||||||
|
lifecycle:
|
||||||
|
preStop:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- /tmp/openvswitch-db-server.sh
|
||||||
|
- stop
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: openvswitch-bin
|
- name: openvswitch-bin
|
||||||
mountPath: /tmp/openvswitch-db-server.sh
|
mountPath: /tmp/openvswitch-db-server.sh
|
||||||
|
@ -70,6 +70,13 @@ spec:
|
|||||||
- show
|
- show
|
||||||
command:
|
command:
|
||||||
- /tmp/openvswitch-vswitchd.sh
|
- /tmp/openvswitch-vswitchd.sh
|
||||||
|
- start
|
||||||
|
lifecycle:
|
||||||
|
preStop:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- /tmp/openvswitch-db-server.sh
|
||||||
|
- stop
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: openvswitch-bin
|
- name: openvswitch-bin
|
||||||
mountPath: /tmp/openvswitch-vswitchd.sh
|
mountPath: /tmp/openvswitch-vswitchd.sh
|
||||||
|
Loading…
x
Reference in New Issue
Block a user