Advertisement
Guest User

DB SEPARATION

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