شبکه در داکر مبحث گسترده ای است که در این مقاله صرفا معرفی مختصر و اولیه ای از زیرسیستم شبکه داکر و درایورهای آن خواهیم داشت. زیرسیستم شبکه ای داکر حالت pluggable داشته و از درایورهای مختلفی استفاده می کند. توانمندی اصلی و وظایف مهم شبکه ای در ساختار داکر بواسطه برخی درایورها که بصورت پیش فرض وجود دارند تعیین و انجام می شود. در ادامه به معرفی مختصر درایورهای شبکه در Docker پرداخته ایم.

انواع درایورهای شبکه در داکر:

Bridge: این درایور به عنوان درایور پیش فرض داکر در نظر گرفته شده است و اگر درایور خاصی تعیین نشود، از این مدل به عنوان پیش فرض استفاده می شود. در صورتیکه اپلیکشن و نرم افزار خاصی را بصورت standalone اجرا شود و نیاز به برقراری ارتباط با یکدیگر داشته باشند، از مدل شبکه های bridge استفاده می کنند. 

Host: برای کانتینرهای standalone عمل جداسازی و ایزوله کردن شبکه بین کانتینرها و هاست داکر صورت گرفته و در این روش از شبکه های هاست داکر بصورت مستقیم استفاده می شود. در این حالت هاست فقط برای سرویس های Swarm که از نسخه 17.06 و بعد از ان در دسترس هستند قابل ارائه می باشد. 

Overlay: شبکه های overlay به منظور متصل کردن چندین داکر دیمون به همدیگر و یا فعال کردن سرویس های swarm جهت انتقال داده و ارتباط با یکدیگر استفاده می شوند. از این مدل درایور شبکه ای، می توان به منظور تسهیل کردن ارتباط بین سرویس های swarm و کانتینرهای standalone بهره مند شد. همچنین در صورتیکه بخواهید ارتباط کانتنینرهای standalone که روی داکرهاست های متفاوتی مقیم هستند برقرار کنید، بایستی از این مدل درایور شبکه ای استفاده کنید. با استفاده از این مدل درایور، نیازی به انجام مسیریابی در سطح سیستم عامل بین کانتینرها نمی باشد. 

MacVLAN: این مدل شبکه این امکان را فراهم می آورد تا بتوان به یک کانتینتر آدرس فیزیکی MAC تخصیص داد، و این باعث می شود تا همانند یک دستگاه فیزیکی در شبکه شما دیده شود. داکر دیمون نیز ترافیک به کانتینرها را با استفاده از آدرس های فیزیکی MAC شان مسیریابی می کند. گاهی اوقات استفاده از این مدل درایور بهترین انتخاب هست و آن زمانیست که یک اپلیکشن قدیمی انتظار می رود بصورت مستقیم در شبکه فیزیکی دیده شود و از داخل شبکه فیزیکی به آن مستقیما متصل شوند، و اینکار صرفنظر از پشته شبکه هاست داکر می باشد. 

None در این مدل، کانتینترها اصطلاحات بدون شبکه بوده و تنظیمات شبکه ای همه کانتینرها بصورت غیرفعال درمی آید. این درایور برای سرویس های Swarm نیز قابل دسترس نیست.  

 

پس از شناخت و آشنایی اولیه با انواع درایورهای شبکه، می توانید با استفاده از دستور Docker network تمرین های خود را جهت تسلط بیشتر آغاز کنید. توصیه می کنم، برای درک بهتر چند شبکه مختلف ایجاد، کانتینرهای خود را به آنها متصل و برقراری ارتباط بین آنها و رفتار شبکه ای در هر مدل را مورد بررسی قرار دهید.

Docker network ls: مشاهده لیست درایورهای شبکه هاست داکر که می توان وجود مدل bridge بصورت پیش فرض را بررسی کنید.

docker network create: از این دستور جهت ایجاد یک شبکه جدید بر اساس درایور دلخواه تان استفاده کنید و تنظیمات دلخواه از قبیل رنج آدرس، ماسک شبکه و ادرس دروازه خود را تعیین کنید

docker network rm: برای حذف یک درایور شبکه در داکر از این دستور می توانید استفاده کنید.

docker network connect/disconnect:  از این دو دستور به منظور متصل کردن یک کانتینر به شبکه ای که روی داکر هاست وجود دارد استفاده می شود. همچنین امکان قطع کردن یک کانتینر از یک شبکه خاص نیز وجود دارد.

docker network prune: در صورتیکه درایورهای خاصی ایجاد شده که بلااستفاده مانده و هیچ اتصالی به آنها برقرار نیست، می توان آنها را پاکسازی نمود

docker network inspect: با این دستور می توانید جزئیات کامل و پیکربندی هرکدام از شبکه های ایجاد شده روی هاست را مورد بازبینی قرار داد.

لازم به توضیح است دستورات فوق، دارای پارامترهای خاصی بوده که در زمان تمرین می توان با –help به آنها دسترسی پیدا کرد.

فرستادن دیدگاه


حامیان