• ارسال به دوستان
  • چاپ
نام ارسال کننده :
ایمیل ارسال کننده:
نام دریافت کننده :
ایمیل دریافت کننده :
موضوع ایمیل :
کد تصویری :
1397/2/3 دوشنبه

معرفی سرویس مدیریت شبکه اپن استک

Neutron سرویس مدیریت شبکه OpenStack است که در واقع یک API با معماری ماژولار است.


 می‏توان گفت پیچیده ترین سرویس یا ماژول OpenStack ماژول neutron است شاید به این دلیل که پیچیده ترین بخش computing، بخش شبکه است. ماژول neutron قابلیت per-tenant networking را در اختیار قرار می دهد. به این معنی که شبکه های مجازی ایزوله می توانند داخل tenants ساخته و ایجاد شوند و این امکان باعث ایزوله شدن ماشین های مجازی می شود.

هر ماشین مجازی در  OpenStack باید دارای آدرس  IP باشد. دو نوع از آدرس های IP برای ماشین های مجازی وجود دارند: fixed IPs و floating IPs. آدرس های fixed IPs در زمان بوت ماشین مجازی تخصیص داده می‎شوند درحالیکه آدرس های floating IPs می توانند پس از ایجاد ماشین های مجازی به آنها تخصیص داده شوند و بین چندین ماشین مجازی جابه جا شوند. آدرس‎های fixed IPs ضروری هستند ولی ماشین های مجازی بدون آدرس‎های floating IPs هم می توانند اجرا شوند. یکی از سناریوهای متداول استفاده از آدرس های floating IPs مهیا کردن آدرس های  IPعمومی برای یک ابر خصوصی با در اختیار داشتن تعداد محدودی از آدرس های IP است.

Open vSwitch

Open vSwicth) OVS) یک سوئیچ مجازی SDN) Software Defined Networking) است که مشابه Linux software bridge است. OVS سرویس های سوئیچینگ را برای شبکه های مجازی مهیا می کند و از استانداراهای صنعتی NetFlow، OpenFlow و sFlow پشتیبانی می کند. یکی از ویژگی های جالب  OVSاین است که می تواند با استفاده از ویژگی های لایه دو مانند STP، LACP و 802.1Q VLAN tagging با سوئیچ های فیزیکی تجمیع شود. تونل های VXLAN و GRE بعد از نسخه های 1.11.0-1.el6 OVS پشتیبانی می شوند.


 Modular Layer 2) ML2)

ماژول ML2 یکی از ماژول‎های شبکه OpenStack است که از نسخه Havana معرفی شد. پلاگین پیش‎فرض شبکه OpenStack همان ML2 با درایور پیش فرض OVS است. قبل از معرفی ماژول ML2، شبکه OpenStack فقط قادر بود با پلاگینی که در زمان پیاده سازی انتخاب شده است، کار کند. برای مثال پیاده سازی که از OVS استفاده می کرد تنها محدود به همان پلاگین بود و نمی توانست به طور همزمان از پلاگین دیگری مانند linuxbridge استفاده کند. با بهره بردن از ML2 چندین نوع از سگمنت های شبکه به طور همزمان قابل استفاده هستند. ML2 از چندین نوع از شبکه پشتیبانی می کند که شامل موارد زیر هستند:
 

1. Flat
2. GRE
3. Local
4. VLAN
5. XLAN
6. سرویس های شبکه ای OpenStack



L3 Agent: L3 agent بخشی از پکیج openstack-neutron است. مفهوم network namespaces در شبکه OpenStack، راترهای (routers) لایه سه ایزوله را برای هر tenant مهیا می کند. وظیفه این راترهای لایه سه مسیریابی ترافیک و ایجاد سرویس های gateway برای شبکه های لایه دو است. وظیفه L3 agent همکاری با این راترهای لایه سه است.

DHCP Agent: DHCP agent مانند یک DHCP server عمل می کند و از این طریق به مدیریت network namespaces که به هر tenant اختصاص داده شده است، می‎پردازد. هر network namespace یک پروسه با نام dnsmasq اجرا می کند که وظیفه آن تخصیص آدرس‎های IP به ماشین های مجازی است که در آن شبکه در حال اجرا هستند.

Open vSwitch Agent: پلاگین Open vSwitch از agent خودش استفاده می کند. این agent روی هر گرهی اجرا می شود و ظیفه آن مدیریت OVS bridges است.

نسخه قابل چاپ