Let’s Talk Cloud Computing – انجمن DEV

وقتی مردم، محاسبات ابری یا ابر را می شنوند، آن را چیزی بسیار فراطبیعی، مبهم و پیچیده می بینند، حداقل من این کار را کردم. این مقاله اولین مورد از مجموعه های ابری من است که در آن می خواهم این مفاهیم ابر را بشکافم.
بیایید رایانش ابری را تعریف کنیم
رایانش ابری ارائه خدمات یا منابع محاسباتی (ذخیره، قدرت محاسباتی و شبکه) از طریق اینترنت است. این به سادگی منابع محاسباتی (ذخیره، توان محاسباتی، شبکه و غیره) را که به صورت مجازی از طریق اینترنت به کاربر ارائه می شود، می دهد.
💡نکته مهم این است که این منابع محاسباتی برای کاربر مجازی هستند، یعنی کاربر به این منابع دسترسی فیزیکی ندارد، اما از طریق اینترنت می تواند به آن دسترسی داشته باشد.
چرا ابر نام؟
وقتی مردم ابر را می شنوند، فکر می کنند این منابع جایی در آن بالا هستند. متاسفانه اینطور نیست. کلمه ابر بیشتر شبیه یک استعاره برای توصیف چیزی است که برای کاربر مجازی است. فرض بر این است که کاربران در واقع به اندازه ای که این خدمات در یک مکان فیزیکی هستند، به این خدمات دسترسی فیزیکی ندارند.
قبل از ابر
بیایید به نحوه استقرار برنامهها قبل از ظهور محاسبات ابری نگاه کنیم. بسیار مهم است که ببینیم کارها قبلاً چگونه انجام می شد و محاسبات ابری دقیقاً چه چیزی را حل می کند.
به طور سنتی، برای استقرار یک برنامه، یک سازمان یا فرد باید سرورهایی با حافظه و ذخیره سازی مناسب خریداری کند، آنها را در محل نگهداری کند و از آنها برای میزبانی برنامه های خود استفاده کند. این امر هزینه های سرمایه ای زیادی (خرید سرورها) در کنار هزینه های عملیاتی (برق، استخدام متخصصان ماهر یا کارکنان آموزش) به همراه داشت. جدا از هزینه ها، مسائل وجود داشت امنیت، که تضمین می کند که سرورها در برابر حملات ایمن هستند و پوسته پوسته شدن مسائل مقیاس بندی شامل افزایش یا کاهش تعداد منابع محاسباتی است.
به لطف محاسبات ابری، کاربران میتوانند هزینههای سرمایهای را که با استقرار به وجود میآیند کاهش دهند، در عوض هزینههایی را که استفاده میکنند بدون اینکه نگران امنیت این سرورها باشند، پرداخت میکنند. در نهایت، با رایانش ابری مقیاسبندی بسیار آسان است زیرا کاربران میتوانند به راحتی منابع را اضافه یا حذف کنند.
💡شما می توانید محاسبات ابری را به عنوان پرداخت قبوض آب و برق به جای ساخت نیروگاه خصوصی یا شخصی در حیاط خلوت خود ببینید که گران تر است. شما باید نگران ایمنی نیروگاه باشید، بنابراین نمیتوانید همسایههایتان را بدون رضایت شما نور بزنند. در نهایت، هنگامی که شما برق اضافی تولید می کنید، وسایل کافی برای تغذیه وجود نخواهد داشت و کاهش آن مشکل خواهد بود.
دسته بندی های رایانش ابری
رایانش ابری را می توان بر اساس مدل استقرار و نوع خدمات ارائه شده دسته بندی کرد.
مدل استقرار
رایانش ابری را می توان بر اساس مدل استقرار به 3 نوع تقسیم کرد که شامل.
-
ابر عمومی: در ابر عمومی، منابع و خدمات توسط ارائه دهندگان شخص ثالث (ارائه دهندگان خدمات ابری مانند AWS، Azure، GCP و غیره) از طریق اینترنت ارائه می شوند. این منابع برای چندین کاربر یا سازمان به عنوان یک مبنا پرداخت و به اشتراک گذاشته می شود.
-
ابر خصوصی: در ابر خصوصی، منابع صرفاً به یک سازمان یا کاربر اختصاص داده می شود. می توان آن را در محل یا توسط یک ارائه دهنده شخص ثالث میزبانی کرد.
-
ابر هیبریدی: از نام، ابر ترکیبی ترکیبی از عناصر ابر عمومی و خصوصی است. این یک راه حل عالی برای سازمان هایی است که می خواهند از خدمات داخلی به خدمات ابری مهاجرت کنند.
نوع خدمات
از نظر خدمات ارائه شده، رایانش ابری را می توان به دو دسته تقسیم کرد.
-
زیرساخت به عنوان یک سرویس (IaaS): این نوعی از رایانش ابری است که به موجب آن ارائهدهندگان خدمات ابری مسئول تامین منابع یا زیرساختهای محاسباتی (سرورها، ذخیرهسازی و شبکه) هستند، اما مشتری یا کاربر کنترل این زیرساختها (امنیت، ارائه اطلاعات و غیره) را در دست دارد. مثال: ماشین های مجازی Azure.
-
پلتفرم به عنوان یک سرویس (PaaS): این نوعی از محاسبات ابری است که به کاربران امکان توسعه و استقرار برنامهها را بدون زحمت مدیریت زیرساختها میدهد. این سرویس به توسعه دهندگان اجازه می دهد تا تمرکز بیشتری روی پیاده سازی کد داشته باشند. مثال: برنامه های وب Azure.
-
نرم افزار به عنوان یک سرویس (SaaS): این نوع سرویس ابری به کاربران اجازه می دهد تا از طریق اشتراک به نرم افزاری بر اساس سازمان در فضای ابری دسترسی داشته باشند. کاربر نیازی به نصب هیچ برنامه ای روی دستگاه محلی خود ندارد، در عوض نرم افزار از طریق وب یا یک API قابل دسترسی است. مثال: مایکروسافت 365.
💡مدل مسئولیت مشترک Microsoft Learn در بالا به شما کمک می کند تا مدل استقرار ابری را بهتر درک کنید. این فقط نشان می دهد که چه کسی مسئول ایمن سازی جنبه های مختلف محیط رایانش ابری بین ارائه دهندگان خدمات ابری (در این مورد مایکروسافت) و کاربر است.
مفاهیم رایانش ابری
بیایید به برخی اصطلاحات ابری که ممکن است شنیده باشیم نگاه کنیم.
- تجسم: می توانید مجازی سازی را به عنوان ایجاد نسخه مجازی چیزی به عنوان مثال سخت افزار رایانه خود ببینید. این مفهوم ماشین های مجازی و دسکتاپ های مجازی را به ارمغان می آورد. این امکان را به شما می دهد تا با به اشتراک گذاری آن در بین چندین نفر یا کاربران به طور همزمان از ظرفیت کامل یک ماشین فیزیکی استفاده کنید.
💡مجازی سازی به عنوان مثال مشکل منابع سخت افزاری کم استفاده را حل می کند. یک سازمان دارای 3 سرور است (یکی برای اهداف قانونی و انطباق، یکی برای خدمات ایمیل و آخری برای میزبانی وب) متاسفانه هر سرور حدود 25 درصد از ظرفیت خود استفاده می کند که یک چهارم ظرفیت آنها است. با مجازی سازی، می توانید یکی از این سرورها را به 3 سرور منحصر به فرد تقسیم کنید که می توانند وظایف مستقل را انجام دهند، بنابراین از این طریق سرورها به طور موثر و کارآمد با هزینه کمتر مورد استفاده قرار می گیرند.
- کانتینری سازی: به زبان ساده Containerization شکلی از مجازی سازی است که به شما امکان می دهد برنامه ها و وابستگی های آنها را در واحدهایی به نام کانتینر بسته بندی و تنظیم کنید. کانتینرها یک محیط منسجم و ایزوله را فراهم میکنند و تضمین میکنند که یک برنامه کاربردی در محیطهای محاسباتی مختلف بهطور روان اجرا میشود. سیستمها یا محیطهای مختلف سیستمعاملهای متفاوتی دارند و این سیستمعاملها برای اجرای برنامههای خاص به وابستگیها یا الزامات متفاوتی نیاز دارند.
💡به عنوان یک توسعه دهنده چیزهایی مانند “روی سیستم خودم کار می کند اما روی سیستم شما کار نمی کند“، این مشکلی است که کانتینرسازی سعی در حل آن دارد.
- محاسبات بدون سرور: وقتی مردم محاسبات بدون سرور را می شنوند، تصور می کنند که هیچ سروری در کار نیست. همانطور که در رایانش ابری منابع در ابر نیستند، در رایانش بدون سرور نیز سرورهای محاسباتی دخیل هستند. در عوض، محاسبات بدون سرور به سادگی به این معنی است که ارائه دهندگان ابر منابع را بر اساس تقاضا به کاربران اختصاص می دهند. محاسبات بدون سرور مبتنی بر رویداد است، بر اساس پرداخت زمانی کار میکند و شامل مقیاسبندی خودکار است.
💡از مهمانی شام به عنوان قیاس استفاده کنیم. فرض کنید میزبان گروهی از دوستانتان برای شام هستید، به جای اینکه یک وعده غذایی را برای همه آماده کنید، یک منو ایجاد می کنید و تیمی از سرآشپزها را استخدام می کنید تا یک غذای تازه را برای هر کسی بر اساس سفارششان آماده کنند.
ارائه دهندگان خدمات ابری
قبل از اینکه بتوان به یک منبع ابری دسترسی داشت یا از آن استفاده کرد، باید از یک ارائه دهنده خدمات ابری استفاده کرد.
ارائه دهندگان خدمات ابری شرکت ها یا شرکت هایی (افراد) هستند که منابع ابری را ارائه می دهند. چندین ارائه دهنده خدمات ابری مانند Microsoft Azure، Amazon Web Services (AWS)، Google Cloud Platform (GCP)، Oracle، IBM و غیره وجود دارد.
در سرتاسر این مجموعه، ما با Microsoft Azure کار میکنیم و به سرویسهای مختلف آن، زمان و نحوه استفاده از این سرویسها نگاه میکنیم.