زمانی که مجازی سازی چیز جدیدی بود، شبکههای مجازی اتصالات سادهای بودند که سرورهای مجازی و گاهی اوقات ابزار شبکه را به هم متصل میکردند. حالا اما همه چیز فرق میکند. ایجاد و مدیریت یک شبکه مجازی بخشی از اجرای زیرساخت مجازی است و شبیه مدیریت یک شبکه فیزیکی است. این امر زمانی بیشتر واضح است که در حال ایجاد یک محیط ترکیبی هستید که بین سیستمهای داخلی و زیرساختهای ابری قرار میگیرد. ناگهان شما مجبور به مدیریت شبکهای میشوید که سیستمهای فیزیکی و مجازی خود را با سیستم ارائه دهنده ابر شما ترکیب میکند، در حالی که پیچیدگی اتصال مستقیم VPN یا Multiprotocol Label Switching (MPLS) را برای پیوند سایت خود به ابر نیز دارید. این موضوع آسان نیست اما ابرهای بزرگ مانند Azure ابزارهایی را برای کمک به شما ارائه میدهند.
معرفی شبکههای مجازی Azure
در قلب هر دو زیرساخت و مدل پلتفرم به عنوان سرویس Azure، شبکه مجازی Azure (VNet) وجود دارد، VLAN مدیریت شده که منابع را به Azure متصل میکند و یک پارتیشن امن ارائه میدهد که ترافیک شبکه شما را حفظ میکند. برای سایر کاربران که ممکن است از سرورهای فیزیکی مشابه استفاده کنند شبکههای مجازی Azure نیازی به اتصال به شبکه داخلی ندارند. میتوانید از VLAN برای ایجاد و مدیریت زیرساختها و منابع بومی ابر استفاده کنید. این شبکههای مجازی میتوانند با استفاده از شبکه خصوصی Azure برای مدیریت جابجایی بدون استفاده از اینترنت عمومی، بین مناطق مختلف Azure ارتباط برقرار کنند. به عنوان بخشی از شبکههای مجازی Azure، میتوانید پیادهسازی لوازم مجازی رایجترین سختافزار شبکه را پیادهسازی کرده و VLAN خود را به عنوان یک شبکه تعریف شده توسط نرم افزار در نظر بگیرید که بر اساس خدمات مسیریابی Azure ساخته شده است. در عین حال، این دروازه ابزارهایی است که در Azure Application Gateway و Azure Bastion تعبیه شده است و شبکههای برنامه را به اینترنت عمومی متصل میکند چه برای دسترسی مستقیم و چه از طریق ابزارهای شبکه مانند فایروالهای برنامه وب و بالانسهای مدیریت شده بار شبکه با مسیریابی جغرافیایی برای ارائه ترافیک و همچنین بازگشت به شبکه، اطمینان از دسترسی محافظت شده برای کاربران تأیید شده. هر Azure VNet به اینترنت خروجی دارد درست مانند کار با هر روتر فایروال. منابع شما در ابتدا دارای آدرسهای خصوصی هستند و آدرسهای IP خارجی از طریق یک بالانس کننده بار شبکه مدیریت میشوند. به صورت داخلی VNet شما میتواند ماشینهای مجازی و همچنین منابع خاصی از Azure مانند Azure Kubernetes Service را میزبانی کند. منابع دیگر از طریق نقاط پایانی سرویس قابل دسترسی هستند که منابع شما را به شبکه شما متصل میکند و از دسترسی سایر کاربران به آنها جلوگیری میکند و دسترسی به VNet شما را قفل میکند. اگر بیش از یک زیرساخت میزبانی VNet یا منابعی دارید که میخواهید به اشتراک بگذارید می توانید VNet peering را برای اجازه عملیات بین شبکهای (و عملیات بین منطقهای که VNets در مناطق مختلف Azure هستند) تنظیم کنید.
ساخت و استقرار اولین VNet
در مورد ایجاد و مدیریت یک شبکه در Azure چگونه عمل میکنید؟ VNets به عنوان منابع Azure ایجاد شده و به عنوان بخشی از یک گروه منابع مدیریت میشود. با استفاده از ابزارها و مفاهیم آشنا میتوانید از هر ابزار مدیریت Azure برای ایجاد و استقرار شبکه استفاده کنید. در ابتداییترین حالت، ایجاد یک شبکه مجازی Azure بسیار شبیه به کار با یک شبکه خصوصی استاندارد با استفاده از آدرس های RFC 1918 است. در صورت لزوم، میتوانید زیر شبکههای خود را انتخاب کرده و از آنها برای تقسیمبندی آدرس و مدیریت VLANها و گروههای امنیتی فردی در VNet استفاده کنید. اگر از Azure VNet به عنوان افزونه شبکه داخلی خود استفاده میکنید، باید مطمئن شوید که بین محدوده آدرسها هیچ تداخلی وجود ندارد. حتی اگر در ابتدا قصد ایجاد یک نمونه ابر ترکیبی را ندارید تصحیح آدرس IP میتواند یک فرآیند پیچیده باشد.
پس از راه اندازی شبکه اصلی میتوانید ماشینهای مجازی و منابع دیگر را اضافه کنید. درک این نکته ضروری است که این یک شبکه مجازی نرم افزاری است. هیچ ارتباطی بین مکانهای مجازی مجازی در شبکه و نحوه عملکرد شبکه شما وجود ندارد. تا آنجا که به شما مربوط میشود این دو دستگاه در یک شبکه هستند. شبکه اصلی Azure شبکه واقعی را مدیریت می کند.
افزودن دستگاهها و خدمات مجازی به VNet
هنگام ایجاد منبع تنها کاری که باید انجام دهید این است که VNet و زیر شبکه مورد نظر خود را انتخاب کنید Azure اتصال را برای شما پیکربندی و مدیریت میکند. اگر از ماشینهای مجازی استفاده میکنید آزمایش ساده بودن شبکه شما آسان است. در ویندوز میتوانید با PowerShell وارد شوید و میزبان دیگری را در VNet خود پینگ کنید. برای لینوکس نیز با استفاده از bash همینطور است. اگرچه ساخت اولین شبکه از طریق Azure Portal آسان است، اما اگر در مقیاس بزرگ کار میکنید و از زیرساختهای نرم افزاری برای برنامههای خود استفاده میکنید باید از الگوهای Azure Resource Manager برای پیکربندی و استقرار شبکه استفاده کنید. ARM دارای ابزارهای لازم برای تعریف نام شبکه، فضاهای آدرس، زیر شبکهها و موارد دیگر است. الگوها را میتوان در مخزن برنامه ذخیره کرد و از طریق یک پلتفرم یکپارچه سازی/تحویل مداوم (CI/CD) استفاده کرد. اکنون میتوانید از زبان تعریف زیرساخت جدید Bicep مایکروسافت برای ایجاد الگوهای ARM خود استفاده کنید. ابزارهای دیگر مانند Terraform یا Pulumi نیز گزینههایی برای ایجاد و مدیریت شبکههای Azure دارند که مستقیماً با API های آن کار میکنند.
ابزارهای شبکه تعریف شده توسط نرم افزار در Azure
پس از ایجاد شبکه میتوانید از قابلیتهای شبکه تعریف شده توسط نرم افزار Azure استفاده کرده و فیلترهایی را برای استفاده از گروههای امنیتی شبکه Azure برای قفل دسترسی به سرورهای خاص اضافه کنید. به عنوان مثال میتوانید قوانینی داشته باشید که تا مطمئن شوید فقط ترافیک SSL به سرور وب برنامه میرود. به طور مشابه میتوانید مسیریابی سفارشی ایجاد کنید که از مسیریابی پیش فرض Azure غافل شود و یک ماشین مجازی را به عنوان یک ابزار شبکه برای مدیریت جداول مسیریابی خود برای برنامه خود استفاده کنید. شما باید یک مسیر Azure ایجاد کنید که ترافیک زیر شبکه را به دستگاه مجازی شما متصل میکند.
عملیات ترکیبی به اتصالات از راه دور نیاز دارد. در اینجا میتوانید با محدود کردن دسترسی VPN به رایانههای داخلی خاص با استفاده از VPN نقطه به نقطه دسترسیها را کنترل کنید. این رویکرد میتواند دسترسی به یک برنامه کاربردی مبتنی بر ابر را مدیریت کرده و به مهندسان و کارکنان پشتیبانی دسترسی دهد. به طور مشابه، VPN های سایت به سایت یک VNet را برای همه منابع داخلی شما باز میکنند و دیتاسنتر را در Azure و بالعکس گسترش میدهند. شبکه مجازی Azure برای ترافیک داخلی رایگان است اگرچه افزودن برخی از خدمات به شبکه قیمت مبتنی بر منابع و استفاده را افزایش میدهد. با انتخاب فضای آدرس IPv4 RFC 1918 و net mask برای همه شبکههای خود شروع کنید. سپس از یک ماسک شبکه بالاتر برای ایجاد اولین زیر شبکه خود استفاده خواهید کرد از خدماتی مانند Azure Bastion برای مدیریت دسترسی به سرورها و Azure Front Door برای ارائه مجموعه ایمن آدرسهای IP خارجی، تنظیم کننده بار و دیوار آتش استفاده میکنید. یک سرویس اساسی Azure است که برای ساخت، استقرار و مدیریت برنامههای کاربردی بومی ابر ضروری است. شبکه مجازی Azure این است که چگونه خدمات و Azure را با هم پیوند میدهید. حتی میتواند به عنوان مقدمهای برای شبکههای تعریف شده توسط نرم افزار و مفاهیمی باشد که در صورت استفاده از Azure Stack HCI یا Azure Arc برای ایجاد ابرهای خصوصی و ترکیبی ضروری خواهد بود.