What is FAN Networking in linux systems

  • فرض کنید تعداد زیادی سرور فیزیکی دارید که هر کدام به یک سویچ مرکزی متصل هستند.
  • بحث Network برای پیاده‌سازی LXD بر روی این سیستم‌ها می‌تواند به صورت Bridge بوده تا کانتینرها به صورت مستقیم به سویچ مرکزی نیز متصل شوند.
  • در این صورت کانتینرهای سرورهای فیزیکی مختلف می‌توانند با یک دیگر صحبت کنند. (چون در داخل یک subnet و vlan می‌باشند.)
  • این عمل سربار زیادی دارد چرا که در مقیاس بالا ، subnet اختصاص یافته می‌تواند تمام شود.
  • همچنین ممکن است گروهی از سرورهای فیزیکی درون یک دیتاسنتر دیگر بوده و مسیرهای ارتباطی متعددی در سر راه وجود داشته باشد.
  • در این شرایط محبث Fan Networking مطرح می‌شود.
  • این قابلیت در درجه‌ی اول سعی می‌کند پیاده‌سازی بسیار ساده‌ای داشته باشد. (به دور از پیچیدگی)
  • در درجه‌ی دوم بین تمام موجودیت‌ها (سرور فیزیکی و کانتینترهای LXD) یک subnet واحد 8/ ایجاد می‌کند.
  • با پیاده‌سازی این قابلیت یک اینترفیس به سرور فیزیکی اضافه شده که یک subnet /8 ارائه می‌دهد.
  • هر یک از subnet های 8/ ایجاد شده بر روی سرورهای فیزیکی قابلیت صحبت کردن با یک دیگر در لایه دو را دارند.
  • طبیعتا کانتینرهای سرورهای مختلف نیز قابلیت صحبت کردن با یکدیگر را نیز دارند.
  • یکی از تاکیدهای بحث Fan Networking پیاده‌سازی ساده‌ی آن به دور از پیچیدگی است.
  • همچنین با ایجاد یک کلاستر درون LXD ، به صورت خودکار بحث FAN Networking نیز توسط LXD راه‌اندازی می‌شود.

پیاده‌سازی بر روی Ubuntu 16.04

  • برای این منظور ابتدا بسته‌ی زیر را نصب نمایید.

  • تنظیمات مربوط به Network ماشین اول به صورت زیر است :

  • تنظیمات مربوط به Network ماشین دوم به صورت زیر است :

  • پرونده‌ی زیر را درون ماشین اول به صورت زیر ایجاد کنید :

  • پرونده‌ی زیر را درون ماشین دوم به صورت زیر ایجاد کنید :

  • در نهایت سیستم‌ها را یک مرتبه reboot کنید.
  • مشخصات کارت شبکه‌ی سیستم اول به صورت زیر خواهد بود.

  • مشخصات کارت شبکه‌ی سیستم دوم به صورت زیر خواهد بود.


استفاده در LXC

  • برای استفاده از قابلیت FAN Network درون LXC ابتدا پرونده‌ی تنظیمات مربوط به کانتینر LXC را باز نمایید. به عنوان مثال :

  • مقدار عبارت زیر را به صورت زیر تغییر دهید.

  • در نهایت کافیست کانتینر LXC را روشن کنید.
  • در صورتی که به صورت خودکار از طریق DHCP آدرس دریافت نکردید، به صورت زیر آی پی تخصیص دهید.

  • نکته : ممکن است Ubuntu 16.04 در تخصیص رنج 241 مشکل داشته باشد، لذا در بالا رنج Fan Network را روی 220 قرار دادیم.

راه‌اندازی DHCP Server

  • همان طور که در قسمت قبل اشاره شد، به صورت پیش‌فرض درون شبکه DHCP نخواهیم داشت.
  • لذا لازم است یک سرویس DHCP Server درون هر یک از سرورها برای کارت شبکه‌ی مربوط به Fan Network راه‌اندازی شود.
  • برای این منظور می‌توان از این مستند استفاده نمود.
  • مستند بالا بر روی Fan Network تست شده است.