Skip to content

Commit 1f5d6c0

Browse files
Zuulopenstack-gerrit
authored andcommitted
Merge "Use separate OVS and OVN directories"
2 parents 5e7afb7 + 71c9965 commit 1f5d6c0

1 file changed

Lines changed: 20 additions & 23 deletions

File tree

lib/neutron_plugins/ovn_agent

Lines changed: 20 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -244,11 +244,12 @@ function _run_process {
244244
local cmd="$2"
245245
local stop_cmd="$3"
246246
local group=$4
247-
local user=${5:-$STACK_USER}
247+
local user=$5
248+
local rundir=${6:-$OVS_RUNDIR}
248249

249250
local systemd_service="devstack@$service.service"
250251
local unit_file="$SYSTEMD_DIR/$systemd_service"
251-
local environment="OVN_RUNDIR=$OVS_RUNDIR OVN_DBDIR=$OVN_DATADIR OVN_LOGDIR=$LOGDIR OVS_RUNDIR=$OVS_RUNDIR OVS_DBDIR=$OVS_DATADIR OVS_LOGDIR=$LOGDIR"
252+
local environment="OVN_RUNDIR=$OVN_RUNDIR OVN_DBDIR=$OVN_DATADIR OVN_LOGDIR=$LOGDIR OVS_RUNDIR=$OVS_RUNDIR OVS_DBDIR=$OVS_DATADIR OVS_LOGDIR=$LOGDIR"
252253

253254
echo "Starting $service executed command": $cmd
254255

@@ -264,14 +265,14 @@ function _run_process {
264265

265266
_start_process $systemd_service
266267

267-
local testcmd="test -e $OVS_RUNDIR/$service.pid"
268+
local testcmd="test -e $rundir/$service.pid"
268269
test_with_retry "$testcmd" "$service did not start" $SERVICE_TIMEOUT 1
269270
local service_ctl_file
270-
service_ctl_file=$(ls $OVS_RUNDIR | grep $service | grep ctl)
271+
service_ctl_file=$(ls $rundir | grep $service | grep ctl)
271272
if [ -z "$service_ctl_file" ]; then
272273
die $LINENO "ctl file for service $service is not present."
273274
fi
274-
sudo ovs-appctl -t $OVS_RUNDIR/$service_ctl_file vlog/set console:off syslog:info file:info
275+
sudo ovs-appctl -t $rundir/$service_ctl_file vlog/set console:off syslog:info file:info
275276
}
276277

277278
function clone_repository {
@@ -370,10 +371,6 @@ function install_ovn {
370371

371372
sudo mkdir -p $OVS_RUNDIR
372373
sudo chown $(whoami) $OVS_RUNDIR
373-
# NOTE(lucasagomes): To keep things simpler, let's reuse the same
374-
# RUNDIR for both OVS and OVN. This way we avoid having to specify the
375-
# --db option in the ovn-{n,s}bctl commands while playing with DevStack
376-
sudo ln -s $OVS_RUNDIR $OVN_RUNDIR
377374

378375
if [[ "$OVN_BUILD_FROM_SOURCE" == "True" ]]; then
379376
# If OVS is already installed, remove it, because we're about to
@@ -616,12 +613,12 @@ function _start_ovs {
616613
dbcmd+=" --remote=db:hardware_vtep,Global,managers $OVS_DATADIR/vtep.db"
617614
fi
618615
dbcmd+=" $OVS_DATADIR/conf.db"
619-
_run_process ovsdb-server "$dbcmd" "" "$STACK_GROUP" "root"
616+
_run_process ovsdb-server "$dbcmd" "" "$STACK_GROUP" "root" "$OVS_RUNDIR"
620617

621618
# Note: ovn-controller will create and configure br-int once it is started.
622619
# So, no need to create it now because nothing depends on that bridge here.
623620
local ovscmd="$OVS_SBINDIR/ovs-vswitchd --log-file --pidfile --detach"
624-
_run_process ovs-vswitchd "$ovscmd" "" "$STACK_GROUP" "root"
621+
_run_process ovs-vswitchd "$ovscmd" "" "$STACK_GROUP" "root" "$OVS_RUNDIR"
625622
else
626623
_start_process "$OVSDB_SERVER_SERVICE"
627624
_start_process "$OVS_VSWITCHD_SERVICE"
@@ -660,7 +657,7 @@ function _start_ovs {
660657

661658
enable_service ovs-vtep
662659
local vtepcmd="$OVS_SCRIPTDIR/ovs-vtep --log-file --pidfile --detach br-v"
663-
_run_process ovs-vtep "$vtepcmd" "" "$STACK_GROUP" "root"
660+
_run_process ovs-vtep "$vtepcmd" "" "$STACK_GROUP" "root" "$OVS_RUNDIR"
664661

665662
vtep-ctl set-manager tcp:$HOST_IP:6640
666663
fi
@@ -704,34 +701,34 @@ function start_ovn {
704701
local cmd="/bin/bash $SCRIPTDIR/ovn-ctl --no-monitor start_northd"
705702
local stop_cmd="/bin/bash $SCRIPTDIR/ovn-ctl stop_northd"
706703

707-
_run_process ovn-northd "$cmd" "$stop_cmd" "$STACK_GROUP" "root"
704+
_run_process ovn-northd "$cmd" "$stop_cmd" "$STACK_GROUP" "root" "$OVN_RUNDIR"
708705
else
709706
_start_process "$OVN_NORTHD_SERVICE"
710707
fi
711708

712709
# Wait for the service to be ready
713710
# Check for socket and db files for both OVN NB and SB
714-
wait_for_sock_file $OVS_RUNDIR/ovnnb_db.sock
715-
wait_for_sock_file $OVS_RUNDIR/ovnsb_db.sock
711+
wait_for_sock_file $OVN_RUNDIR/ovnnb_db.sock
712+
wait_for_sock_file $OVN_RUNDIR/ovnsb_db.sock
716713
wait_for_db_file $OVN_DATADIR/ovnnb_db.db
717714
wait_for_db_file $OVN_DATADIR/ovnsb_db.db
718715

719716
if is_service_enabled tls-proxy; then
720-
sudo ovn-nbctl --db=unix:$OVS_RUNDIR/ovnnb_db.sock set-ssl $INT_CA_DIR/private/$DEVSTACK_CERT_NAME.key $INT_CA_DIR/$DEVSTACK_CERT_NAME.crt $INT_CA_DIR/ca-chain.pem
721-
sudo ovn-sbctl --db=unix:$OVS_RUNDIR/ovnsb_db.sock set-ssl $INT_CA_DIR/private/$DEVSTACK_CERT_NAME.key $INT_CA_DIR/$DEVSTACK_CERT_NAME.crt $INT_CA_DIR/ca-chain.pem
717+
sudo ovn-nbctl --db=unix:$OVN_RUNDIR/ovnnb_db.sock set-ssl $INT_CA_DIR/private/$DEVSTACK_CERT_NAME.key $INT_CA_DIR/$DEVSTACK_CERT_NAME.crt $INT_CA_DIR/ca-chain.pem
718+
sudo ovn-sbctl --db=unix:$OVN_RUNDIR/ovnsb_db.sock set-ssl $INT_CA_DIR/private/$DEVSTACK_CERT_NAME.key $INT_CA_DIR/$DEVSTACK_CERT_NAME.crt $INT_CA_DIR/ca-chain.pem
722719
fi
723-
sudo ovn-nbctl --db=unix:$OVS_RUNDIR/ovnnb_db.sock set-connection p${OVN_PROTO}:6641:$SERVICE_LISTEN_ADDRESS -- set connection . inactivity_probe=60000
724-
sudo ovn-sbctl --db=unix:$OVS_RUNDIR/ovnsb_db.sock set-connection p${OVN_PROTO}:6642:$SERVICE_LISTEN_ADDRESS -- set connection . inactivity_probe=60000
725-
sudo ovs-appctl -t $OVS_RUNDIR/ovnnb_db.ctl vlog/set console:off syslog:$OVN_DBS_LOG_LEVEL file:$OVN_DBS_LOG_LEVEL
726-
sudo ovs-appctl -t $OVS_RUNDIR/ovnsb_db.ctl vlog/set console:off syslog:$OVN_DBS_LOG_LEVEL file:$OVN_DBS_LOG_LEVEL
720+
sudo ovn-nbctl --db=unix:$OVN_RUNDIR/ovnnb_db.sock set-connection p${OVN_PROTO}:6641:$SERVICE_LISTEN_ADDRESS -- set connection . inactivity_probe=60000
721+
sudo ovn-sbctl --db=unix:$OVN_RUNDIR/ovnsb_db.sock set-connection p${OVN_PROTO}:6642:$SERVICE_LISTEN_ADDRESS -- set connection . inactivity_probe=60000
722+
sudo ovs-appctl -t $OVN_RUNDIR/ovnnb_db.ctl vlog/set console:off syslog:$OVN_DBS_LOG_LEVEL file:$OVN_DBS_LOG_LEVEL
723+
sudo ovs-appctl -t $OVN_RUNDIR/ovnsb_db.ctl vlog/set console:off syslog:$OVN_DBS_LOG_LEVEL file:$OVN_DBS_LOG_LEVEL
727724
fi
728725

729726
if is_service_enabled ovn-controller ; then
730727
if [[ "$OVN_BUILD_FROM_SOURCE" == "True" ]]; then
731728
local cmd="/bin/bash $SCRIPTDIR/ovn-ctl --no-monitor start_controller"
732729
local stop_cmd="/bin/bash $SCRIPTDIR/ovn-ctl stop_controller"
733730

734-
_run_process ovn-controller "$cmd" "$stop_cmd" "$STACK_GROUP" "root"
731+
_run_process ovn-controller "$cmd" "$stop_cmd" "$STACK_GROUP" "root" "$OVN_RUNDIR"
735732
else
736733
_start_process "$OVN_CONTROLLER_SERVICE"
737734
fi
@@ -740,7 +737,7 @@ function start_ovn {
740737
if is_service_enabled ovn-controller-vtep ; then
741738
if [[ "$OVN_BUILD_FROM_SOURCE" == "True" ]]; then
742739
local cmd="$OVS_BINDIR/ovn-controller-vtep --log-file --pidfile --detach --ovnsb-db=$OVN_SB_REMOTE"
743-
_run_process ovn-controller-vtep "$cmd" "" "$STACK_GROUP" "root"
740+
_run_process ovn-controller-vtep "$cmd" "" "$STACK_GROUP" "root" "$OVN_RUNDIR"
744741
else
745742
_start_process "$OVN_CONTROLLER_VTEP_SERVICE"
746743
fi

0 commit comments

Comments
 (0)