ovsdb-server(5) Open vSwitch Manual ovsdb-server(5)

ovsdb-server - پایگاه‌داده پیکربندی سرور OVSDB

هر ovsdb-server (نسخه 2.9 یا جدیدتر) همواره میزبان نمونه‌ای از این طرح‌واره است که اطلاعات مربوط به وضعیت و پیکربندی خود سرور را نگهداری می‌کند. این پایگاه‌داده فقط‌خواندنی است. این صفحه راهنما طرح‌واره این پایگاه‌داده را شرح می‌دهد.

فهرست زیر هدف هر یک از جدول‌های موجود در پایگاه‌داده _Server را خلاصه می‌کند. هر جدول در صفحات بعدی با جزئیات بیشتر شرح داده شده است.

جدول
هدف
پایگاه‌های داده.

این جدول پایگاه‌های داده میزبانی‌شده توسط سرور پایگاه‌داده را شرح می‌دهد که برای هر پایگاه‌داده یک ردیف دارد. با تغییر وضعیت و پیکربندی پایگاه‌داده، سرور به‌طور خودکار و بلافاصله جدول را متناسب با آن به‌روزرسانی می‌کند.

پروتکل OVSDB مشخص‌شده در RFC 7047 راهکاری برای کلاینت OVSDB جهت اطلاع از برخی انواع تغییرات پیکربندی، مانند پایگاه‌های داده اضافه‌شده یا حذف‌شده در زمان اتصال کلاینت به سرور، یا تغییر پایگاه‌های داده بین حالت‌های خواندن/نوشتن و فقط‌خواندنی به دلیل جابه‌جایی میان نقش‌های فعال (active) و پشتیبان (backup) ارائه نمی‌دهد. این جدول راه‌حلی برای این موضوع ارائه می‌کند: کلاینت‌ها می‌توانند محتویات جدول را برای اطلاع از تغییرات مهم پایش کنند.

به‌طور سنتی، ovsdb-server هنگام رخ دادن یک تغییر پیکربندی اساسی، اتصال تمامی کلاینت‌های خود را قطع می‌کند، زیرا این اقدام یک کلاینت با طراحی مناسب را ترغیب می‌کند تا پس از اتصال مجدد، موارد موجود از سرور را دوباره ارزیابی کند. از آنجا که این جدول روشی جایگزین و کارآمدتر برای آگاهی از آن تغییرات ارائه می‌دهد، OVS نسخه 2.9 همچنین فراخوانی رویه از راه دور (RPC) تحت عنوان set_db_change_aware را که در ovsdb-server(7) مستند شده است معرفی می‌کند تا به کلاینت‌ها امکان لغو این رفتار قطع اتصال را بدهد.

هنگامی که یک پایگاه‌داده از سرور حذف می‌شود، علاوه بر به‌روزرسانی‌های جدول Database، سرور پیام‌های canceled را طبق آنچه در بخش 4.1.4 از RFC 7047 شرح داده شده، در پاسخ به تراکنش‌های در حال انتظار برای پایگاه‌داده حذف‌شده ارسال می‌کند. سرور همچنین هرگونه پایش در حال انتظاری را که توسط monitor یا monitor_cond روی پایگاه‌داده حذف‌شده درخواست شده بود لغو کرده و RPC تحت عنوان monitor_canceled شرح داده شده در ovsdb-server(7) را ارسال می‌کند. تنها کلاینت‌هایی که قطع اتصال را با set_db_change_aware غیرفعال کرده باشند این پیام‌ها را دریافت می‌کنند.

کلاینت‌ها می‌توانند از ستون _uuid در این جدول به عنوان شماره نسل استفاده کنند. سرور هر بار که پایگاه‌داده‌ای را اضافه می‌کند، یک _uuid جدید تولید می‌کند، بنابراین حذف و سپس افزودن مجدد یک پایگاه‌داده به سرور باعث تغییر _uuid ردیف آن می‌شود.

رشته
رشته، یکی از clustered، relay، یا standalone
رشته اختیاری
بولی (boolean)
پایگاه‌های داده خوشه‌ای (Clustered Databases):

بولی (boolean)
شناسه uuid اختیاری
شناسه uuid اختیاری
عدد صحیح اختیاری

نام پایگاه‌داده، همان‌طور که در طرح‌واره آن مشخص شده است.
مدل ذخیره‌سازی: standalone برای یک پایگاه‌داده مستقل یا فعال-پشتیبان، clustered برای یک پایگاه‌داده خوشه‌ای، relay برای یک پایگاه‌داده رله (relay).
طرح‌واره پایگاه‌داده، به صورت یک رشته JSON. در مورد یک پایگاه‌داده خوشه‌ای، این مقدار تا زمان تکمیل پیوستن آن به خوشه‌اش خالی است. در مورد یک پایگاه‌داده رله، این مقدار تا زمان اتصال به منبع رله خالی است.
درست (True) در صورتی که پایگاه‌داده به فضای ذخیره‌سازی خود متصل باشد. یک پایگاه‌داده مستقل همواره متصل است. یک پایگاه‌داده خوشه‌ای در صورتی متصل است که سرور با اکثریت اعضای خوشه خود در ارتباط باشد. یک پایگاه‌داده رله در صورتی متصل است که سرور با منبع رله در تماس باشد، یعنی به سروری که از آن همگام‌سازی می‌کند متصل باشد. یک پایگاه‌داده غیرمتصل قابل تغییر نیست و داده‌های آن ممکن است در دسترس نبوده یا قدیمی باشند.
پایگاه‌های داده خوشه‌ای (Clustered Databases):

این ستون‌ها برای پایگاه‌های داده خوشه‌ای بیشترین جذابیت را دارند و در برخی موارد تنها به آن‌ها مربوط می‌شوند، یعنی مواردی که ستون model مقدار clustered دارد.

درست (True) در صورتی که پایگاه‌داده در خوشه خود راهبر (leader) باشد. برای یک پایگاه‌داده مستقل یا فعال-پشتیبان، این مقدار همیشه درست است. برای یک پایگاه‌داده رله، این مقدار همیشه نادرست (False) است.
شناسه خوشه (Cluster ID) برای این پایگاه‌داده، که برای تمام سرورهای میزبان این پایگاه‌داده خوشه‌ایِ مشخص یکسان است. برای یک پایگاه‌داده مستقل، فعال-پشتیبان یا رله، این ستون خالی است.
شناسه سرور (Server ID) برای این پایگاه‌داده، که برای هر سرور میزبانِ یک پایگاه‌داده خوشه‌ای مشخص، متفاوت است. سروری که میزبان بیش از یک پایگاه‌داده خوشه‌ای است، در هر یک از آن‌ها یک sid متفاوت خواهد داشت. برای یک پایگاه‌داده مستقل، فعال-پشتیبان یا رله، این ستون خالی است.
برای یک پایگاه‌داده خوشه‌ای، نمایه (index) مدخل لاگ که در حال حاضر برای کلاینت‌ها نمایش داده می‌شود. برای یک سرور مشخص، این مقدار به صورت یکنواخت صعودی افزایش می‌یابد. هنگامی که یک کلاینت از یک سرور به سرور دیگر در یک خوشه جابه‌جا می‌شود، می‌تواند با اجتناب از سرورهایی که index آن‌ها کمتر از بزرگ‌ترین مقدار مشاهده‌شده است، تضمین کند که هرگز نمای قدیمی‌تری از داده‌ها را نخواهد دید.
برای یک پایگاه‌داده مستقل، فعال-پشتیبان یا رله، این ستون خالی است.
DB Schema 1.2.0 Open vSwitch 4.0.0