Advertisement
Guest User

OVN-NORTHD

a guest
Feb 8th, 2016
44
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.99 KB | None | 0 0
  1. From adc8bec58fdc8e2a346dcd5b92423ab5c4679085 Mon Sep 17 00:00:00 2001
  2. From: Michael Arnaldi <mike@mymoneyex.com>
  3. Date: Mon, 8 Feb 2016 15:45:10 +0100
  4. Subject: [PATCH] made ovn-northd run his own ovsdb-server
  5.  
  6. ---
  7. ovn/utilities/ovn-ctl | 49 +++++++++++++++++++++++++++++------------------
  8. ovn/utilities/ovn-nbctl.c | 2 +-
  9. ovn/utilities/ovn-sbctl.c | 3 ++-
  10. 3 files changed, 33 insertions(+), 21 deletions(-)
  11.  
  12. diff --git a/ovn/utilities/ovn-ctl b/ovn/utilities/ovn-ctl
  13. index b171934..ce18f06 100755
  14. --- a/ovn/utilities/ovn-ctl
  15. +++ b/ovn/utilities/ovn-ctl
  16. @@ -31,30 +31,33 @@ done
  17. ## ----- ##
  18.  
  19. upgrade_ovn_dbs () {
  20. - ovn_dbs=$(ovs-appctl -t ovsdb-server ovsdb-server/list-dbs 2>/dev/null)
  21. - for db in $ovn_dbs; do
  22. - case $db in
  23. - OVN*)
  24. - action "Removing $db from ovsdb-server" \
  25. - ovs-appctl -t ovsdb-server ovsdb-server/remove-db $db
  26. - ;;
  27. - esac
  28. - done
  29. - upgrade_db "$DB_NB_FILE" "$DB_NB_SCHEMA"
  30. - upgrade_db "$DB_SB_FILE" "$DB_SB_SCHEMA"
  31. - for db in $DB_NB_FILE $DB_SB_FILE; do
  32. - action "Adding $db to ovsdb-server" \
  33. - ovs-appctl -t ovsdb-server ovsdb-server/add-db $db || exit 1
  34. - done
  35. + upgrade_db "$DB_NB_FILE" "$DB_NB_SCHEMA" 1>/dev/null 2>/dev/null
  36. + upgrade_db "$DB_SB_FILE" "$DB_SB_SCHEMA" 1>/dev/null 2>/dev/null
  37. +}
  38. +
  39. +stop_ovsdb_ovn () {
  40. + if [ -f $OVN_DB_PID ]; then
  41. + kill -9 $(cat $OVN_DB_PID) 1>/dev/null 2>/dev/null
  42. + rm -f $OVN_DB_PID 1>/dev/null 2>/dev/null
  43. + fi
  44. +}
  45. +
  46. +start_ovsdb_ovn () {
  47. + mkdir -p $OVN_DB_DIR
  48. + mkdir -p $OVN_DB_DIR/run
  49. +
  50. + ovsdb-server --detach -vconsole:off --remote=punix:$OVN_DB_SOCK --remote=ptcp:6651 --pidfile=$OVN_DB_PID $DB_NB_FILE $DB_SB_FILE
  51. }
  52.  
  53. start_northd () {
  54. # We expect ovn-northd to be co-located with ovsdb-server handling both the
  55. # OVN_Northbound and OVN_Southbound dbs.
  56. + stop_ovsdb_ovn
  57. upgrade_ovn_dbs
  58. + start_ovsdb_ovn
  59.  
  60. set ovn-northd
  61. - set "$@" -vconsole:emer -vsyslog:err -vfile:info
  62. + set "$@" -vconsole:emer -vsyslog:err -vfile:info --ovnnb-db=unix:$DB_NB_SOCK
  63. OVS_RUNDIR=${OVN_RUNDIR} start_daemon "$OVN_NORTHD_PRIORITY" "$OVN_NORTHD_WRAPPER" "$@"
  64. }
  65.  
  66. @@ -70,6 +73,7 @@ start_controller () {
  67.  
  68. stop_northd () {
  69. OVS_RUNDIR=${OVN_RUNDIR} stop_daemon ovn-northd
  70. + stop_ovsdb_ovn
  71. }
  72.  
  73. stop_controller () {
  74. @@ -95,12 +99,19 @@ restart_controller () {
  75. ## ---- ##
  76.  
  77. set_defaults () {
  78. - DB_SOCK=$rundir/db.sock
  79. - DB_NB_FILE=$dbdir/ovnnb.db
  80. - DB_SB_FILE=$dbdir/ovnsb.db
  81. + OVN_DB_DIR=$rundir/ovn
  82. +
  83. + OVN_DB_SOCK=$OVN_DB_DIR/run/db.sock
  84. + OVN_DB_PID=$OVN_DB_DIR/run/db.pid
  85. +
  86. + DB_NB_FILE=$OVN_DB_DIR/db/ovnnb.db
  87. + DB_SB_FILE=$OVN_DB_DIR/db/ovnsb.db
  88. +
  89. DB_NB_SCHEMA=$datadir/ovn-nb.ovsschema
  90. DB_SB_SCHEMA=$datadir/ovn-sb.ovsschema
  91.  
  92. + DB_SOCK=$rundir/db.sock
  93. +
  94. OVN_NORTHD_PRIORITY=-10
  95. OVN_NORTHD_WRAPPER=
  96. OVN_CONTROLLER_PRIORITY=-10
  97. diff --git a/ovn/utilities/ovn-nbctl.c b/ovn/utilities/ovn-nbctl.c
  98. index 324a0a4..85caf5b 100644
  99. --- a/ovn/utilities/ovn-nbctl.c
  100. +++ b/ovn/utilities/ovn-nbctl.c
  101. @@ -142,7 +142,7 @@ nbctl_default_db(void)
  102. if (!def) {
  103. def = getenv("OVN_NB_DB");
  104. if (!def) {
  105. - def = ctl_default_db();
  106. + def = xasprintf("unix:%s/ovn/run/db.sock", ovs_rundir());
  107. }
  108. }
  109. return def;
  110. diff --git a/ovn/utilities/ovn-sbctl.c b/ovn/utilities/ovn-sbctl.c
  111. index b428a35..c36bc02 100644
  112. --- a/ovn/utilities/ovn-sbctl.c
  113. +++ b/ovn/utilities/ovn-sbctl.c
  114. @@ -28,6 +28,7 @@
  115. #include <unistd.h>
  116.  
  117. #include "db-ctl-base.h"
  118. +#include "dirs.h"
  119.  
  120. #include "command-line.h"
  121. #include "compiler.h"
  122. @@ -154,7 +155,7 @@ sbctl_default_db(void)
  123. if (!def) {
  124. def = getenv("OVN_SB_DB");
  125. if (!def) {
  126. - def = ctl_default_db();
  127. + def = xasprintf("unix:%s/ovn/run/db.sock", ovs_rundir());
  128. }
  129. }
  130. return def;
  131. --
  132. 2.4.9 (Apple Git-60)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement