آموزش Cloud+؛ ارائهدهندگان خدمات ابری از چه معماری برای پیادهسازی زیرساخت استفاده میکنند
پس از تکمیل ارزیابیها و تجزیه و تحلیل نیازهای خود باید بتوانید مدلی که پاسخگوی نیازهاست را انتخاب کنید. در ادامه، باید یک برنامه آزمایشی برای مهاجرت از مرکز داده به ابر تعریف کنید. البته بهتر است، قبل از مهاجرت، تیم مهندسی طرح کاملی در ارتباط با برنامههای کاربردی، پیکربندی، سختافزار، شبکه، ذخیرهسازی و امنیت تدوین کرده باشد، ملاحظات مربوطه را به دقت بررسی کرده باشد و به شکل آزمایشی این فرآیند را بررسی کند تا مشکلی به وجود نیاید.
خرید سرور بری ارائه دهندگان خدمات ابری، اولویت بالایی دارد، پیشنهاد میکنیم پیش از خرید با کارشناسان فالنیک با شماره 02154591915 تماس بگیرید و راهنماییهای لازم را دریافت کنید.
- مقیاسبندی صحیح نیازها
- اطمینان از اینکه ابر همیشه در دسترس است
- مناطق (Regions)
- نواحی دسترسپذیری (Availability Zones)
- ناحیه دسترسپذیری برای کاربران رایانش ابری چه سودی دارد؟
- قرارگیری مبتنی بر خوشه
- مدیریت از راه دور ماشینهای مجازی
- نظارت بر منابع ابری
مقیاسبندی صحیح نیازها
توانایی ابر در افزایش یا کاهش سریع منابع مطابقت با تقاضا، کشش (elasticity) نامیده میشود. در ارتباط با سرویسهای IaaS، این امکان وجود دارد تا روند فوق را خودکارسازی کرد تا گسترشپذیری بدون نیاز به دخالت عامل انسانی انجام شود. رویکرد فوق به مصرفکنندگان خدمات ابری اجازه میدهد با افزایش حجم کاری، بهطور خودکار به مقیاس موردنیاز خود دسترسی پیدا کنند و پس از کاهش حجم کاری، از ابر بخواهند خدمات اضافی را حذف کند. برای سرویسهای SaaS و PaaS نیز امکان استفاده از ویژگی تخصیص پویای منابع به شکل خودکار وجود دارد و توسط ارائهدهنده ابر مدیریت میشود.
محاسبات منعطف یا همان کششی، وابستگی به استقرار سرورها و سیستمهای ذخیرهسازی مضاعف برای مدیریت پیک مصرف را برطرف میکنند. رویکرد فوق درست در نقطه مقابل روش سنتی قرار دارد که سازمانها مجبور بودند برای مدیریت ترافیک، سرورها و سیستمهایی که ممکن است در شرایط عادی به ندرت از آنها استفاده میشدند، را خریداری کنند. همانگونه که مشاهده میکنید، زیرساختهای ابری بالاترین سطح از انعطافپذیری در تخصیص خودکار منابع را ارائه میکنند.
سرویسهای ابری به یک کاربر اجازه میدهند تا سرورهای اضافی، ذخیرهسازی، توان پردازشی یا هر سرویس دیگری را بر مبنای نیاز کاری به شکل لحظهای ایجاد کند. بر مبنای تقاضا به کاربران این امکان داده میشود تا خدمات ابری را فقط در صورت نیاز مصرف کنند و زمانی که دیگر به آنها نیازی نیست، سطح دسترسی به خدمات را کاهش دهند. به عنوان مثال، اگر یک توسعهدهنده نیاز به استقرار یک پایگاه داده و برنامه سرور دارد، میتواند به سرعت سرورهای موردنیاز خود را تهیه کند و زمانی که دیگر به آنها نیاز ندارد، آنها را از دسترس خارج کند. این مدل سرویسها just-in-time نام دارند، زیرا به سرویسهای ابری اجازه میدهند در صورت نیاز اضافه و حذف شوند.
قیمت سرور hp با توجه به امکانات مدیریتی و امنیتی که در اختیار کاربران قرار میدهد، مقرون به صرفه است.
این معماری بر مبنای اصل پرداخت به هنگام رشد (PAYG) عمل میکند، درست مشابه با قبوض آب و برقی که ماهانه برای شما ارسال میشود و بر مبنای میزان مصرف هزینه مربوطه را پرداخت میکنید. رویکرد فوق برای شرکتهای بزرگ کاملا مقرون به صرفه است، زیرا حداقل هزینههای اولیه را میپردازند و قادر هستند به شکل لحظهای بر هزینه خدماتی که از آنها استفاده میکنند، نظارت داشته باشند. انعطافپذیری ابر به شما امکان میدهد منابع را بر اساس تقاضا اضافه کنید، بنابراین نیازی نیست به فکر آمادهسازی منابع برای آینده باشید. به طور مثال، هنگامی که قصد پیادهسازی یک مرکز داده را دارید که قرار است به یکسری عملیات عادی پاسخ دهد، همواره باید الزامات آینده را در نظر بگیرید تا در آینده با مشکل روبرو نشوید، الزاماتی که شاید هیچگاه به آنها نیازی نداشته باشید.
اطمینان از اینکه ابر همیشه در دسترس است
در این بخش، قصد داریم، شما را با معماریهای استقرار متداول که توسط بسیاری از ارائهدهندگان پیشرو ابر با هدف دستیابی به دسترسپذیری، تداوم و انعطافپذیری در ارائه خدمات مورد استفاده قرار میگیرند، آشنا کنیم.
مناطق (Regions)
ارائهدهندگان بزرگ ابر با هدف ارائه بهتر سرویسها، تابآوری در برابر خطا (fault tolerance) و بهبود عملکرد سرویسها از رویکرد تقسیمبندی مناطق (Regions) استفاده میکنند. دقت کنید که منطقه یک مرکز داده یکپارچه نیست، بلکه یک منطقه جغرافیایی است که ممکن است در یک شهر یا یک کشور قرار داشته باشد. به عنوان مثال، یک شرکت ابری ممکن است مناطقی در کشورهای مختلف داشته باشد. درست به همان صورتی که در شکل زیر نشان داده شد است.
در دنیای رایانش ابری با هدف دسترسی سریع به سرویسها، همه مناطق با شبکههای نوری پرسرعت به یکدیگر و اینترنت متصل هستند، اما از یکدیگر جدا هستند، بنابراین اگر در یک منطقه قطعی به وجود آید، به طور عادی نباید بر عملکرد مناطق دیگر تاثیر بگذارد.
به طور کلی، دادهها و منابع موجود در یک منطقه مختص به آن منطقه هستند و قرار نیست به هیچ منطقه دیگری کپی نمیشوند، مگر اینکه شما به طور خاص این فرآیند را پیکربندی کرده باشید. اینکار با هدف نظارت دقیق بر سرویسها و هماهنگ بودن سرویسها و دادهها با نیازهای کاربران کشور مبدا انجام میشود.
هنگامی که عملیات تجاری خود را به ابر انتقال میدهید، به شما حق انتخاب منطقهای که میخواهید از آن استفاده کنید داده میشود. شرکتهای بزرگ، با هدف ورود به بازارهای بینالمللی و کاهش تاخیرهای شبکه، عملیات تجاری خود را در مناطق مختلفی در قارههای مختلف تعریف میکنند.
نواحی دسترسپذیری (Availability Zones)
اگر به خاطر داشته باشید در مقاله قبل به این نکته اشاره کردیم که نواحی دسترسپذیری یکی از مفاهیم مهم دنیای رایانش ابری هستند. اکنون قصد داریم این مفهوم را با جزییات بیشتری بررسی کنیم. مناطق به یک یا چند ناحیه در دسترس (AZs) که به آنها نواحی دسترسپذیری (availability zones) گفته میشود، تقسیم میشوند. به طور معمول، هر منطقه دو یا چند ناحیه دسترسپذیری برای تابآوری در برابر خطاها دارد. نواحی دسترسپذیری به مکانهای فیزیکی منحصر به فردی که منطقه (Region) نام دارند، اشاره دارند که از ترکیب یک یا چند مرکز داده به وجود میآیند. این نواحی مکانیزمهای سرمایشی، شبکههای مستقل و سایر ملزومات خاص خود را دارند.
به طور کلی، ناحیه دسترسپذیری با یک مرکز داده منفرد تشابهاتی دارد. هر AZ دارای برق و اتصالات شبکه مضاعف با هدف دستیابی به اصل افزونگی است. در یک منطقه، نواحی دسترسپذیری ممکن است با فاصله بیشتری از هم قرار گیرند، به خصوص اگر ناحیه در منطقهای مستعد بلایای طبیعی مانند طوفان یا زلزله مستقر باشد. هنگامی که قصد اجرای ماشینهای مجازی مختلف در فضای ابری را دارید، بهتر است آنها را در نواحی دسترسپذیری مختلف قرار دهید تا به بالاترین سطح از انعطافپذیری دست پیدا کنید. شکل زیر مفهوم نواحی در دسترس را نشان میدهد.
به طور مثال، خدمات وب آمازون (AWS) در مناطقی در ایالات متحده، آمریکای جنوبی، اروپا و آسیا و اقیانوسیه مستقر هستند. هر ناحیه شامل دو تا پنج منطقه در دسترس است که از نظر جغرافیایی از یکدیگر جدا هستند و همانگونه که اشاره کردیم از طریق اینترنت به یکدیگر متصل میشوند. هر ناحیه دسترسپذیر یک یا چند مرکز داده دارد.
به طور کلی، ناحیه دسترسپذیری با هدف محافظت از برنامهها و دادههای کاربران در برابر خرابیهای مرکز داده پیادهسازی میشود. ناحیه دسترسپذیری متشکل از مولفهها، معماریها، پروتکلهای ارتباطی و شبکهسازیهای پیچیدهای است که هدفش ارائه یکپارچه و دائمی سرویسها به کاربران است. همچنین، هر ناحیه از مکانیزمهای ارتباطی خاص خود برای ارائه سرویسها استفاده میکند. ارائهدهندگان خدمات ابری برای اطمینان از انعطافپذیری و خودترمیمی، حداقل سه ناحیه جداگانه در تمام مناطق فعال تعریف میکنند. تفکیک فیزیکی نواحی دسترسپذیری در یک منطقه اجازه میدهد از برنامهها و دادهها در برابر خرابیهای مرکز داده محافظت کرد. در معماری فوق، سرویسها بر مبنای اصل افزونگی-ناحیه، برنامهها و دادهها را در نواحی مختلف تکثیر میکنند تا بتوانند بر مشکل تک نقطه خرابی Single-Points-Of-Failure غلبه کنند. این معماری مزایای قابل توجهی برای ارائهدهندگان خدمات ابری به همراه دارد که از مهمترین آنها به موارد زیر باید اشاره کرد:
- بهبود زمان دسترسی به سرویسها
- استفاده از یک ماشین مجازی بدون تاخیر یا مشکلات جانبی
- حصول اطمینان از رعایت مفاد مندرج در قرارداد سطح خدمات (SLA).
رمز موفقیت معماری ناحیه دسترسپذیری بر پراکندگی مناطقی قرار دارد که مراکز داده در آنها مستقر میشوند. برای آنکه معماری فوق تابآوری در برابر خطا را بهبود بخشد، لازم است از افزونگی N+1 استفاده کرد. در این حالت، اگر مرکز داده به دلیل مشکلات فیزیکی یا حملههای سایبری با مشکل روبرو شود، در مدت زمان تعمیر، مراکز داده پشتیبان به مدار وارد شده و خدمترسانی را انجام میدهند. به لحاظ فنی، ناحیه دسترسپذیری و معماری ماژولار مرکز داده وجه تشابه زیادی دارند، زیرا قرار است یک سامانه یا معماری بزرگ به زیرسامانههای کوچکتری تقسیم شوند. با این توصیف، اگر بگوییم که ناحیه دسترسپذیر به ترکیب چند مرکز داده اشاره دارد که به لحاظ فیزیکی به اندازهای از یکدیگر دور هستند که در زمان بروز یک حادثه به طور همزمان از دسترس خارج نمیشوند، اشتباه نکردهایم.
به بیان دقیقتر این مراکز داده بر مبنای اصل خیلی دور خیلی نزدیک مستقر میشوند تا بتوانند به نیازهای تجاری کاربران محلی با کمترین تاخیر پاسخ دهند. یک ناحیه دسترسپذیری میتواند یک مساحت بزرگ را به خود اختصاص دهد و در نتیجه ممکن است مجموعهای متشکل از ساختمانها، لینکهای پر سرعت فیبرنوری و منابع تامین انرژی را شامل شود. نکته مهمی که باید به آن اشاره داشته باشیم این است که اگر یک برنامه یا سرویس تنها در یک ناحیه دسترسپذیری قرار داشته باشند، اصل دسترسپذیری بالا در ارتباط با آن صدق نمیکند. برای خواندن قسمت هفتم آموزش رایگان Cloud+؛ معماری مدل رایانش ابری عمومی به چه صورتی است؟ روی لینک کلیک کنید.
ناحیه دسترسپذیری برای کاربران رایانش ابری چه سودی دارد؟
ناحیه دسترسپذیری بر اصل تداوم خدمات اشاره دارد، به این صورت که سرورهای میزبانیکننده برنامههای کاربردی تا حد امکان به کاربران نهایی نزدیک باشند تا تاخیر به کمترین مقدار ممکن برسد. تاخیر یکی از بزرگترین مشکلات شبکهها است و بیشتر ارائهدهندگان خدمات ابری برای غلبه بر این مشکل از مکانیزم توزیع سرورها و فضای ذخیرهسازی در نزدیکی کاربران نهایی استفاده میکنند. اگر با عملکرد شرکتهای ارائهدهنده خدمات ابری داخلی آشنا باشید بهخوبی از این نکته اطلاع دارید که آنها نواحی دسترسپذیری مختلفی در شهرهای مختلف ایران پیادهسازی میکنند که این نواحی از طریق یک ابر خصوصی مجازی به یکدیگر متصل هستند. بهطور مثال، در تهران که تعداد کاربران زیاد است، مناطق و نواحی مختلفی تعریف میشوند تا پاسخگوی نیازهای کاربران باشند، به همین ترتیب، برای کاربران ساکن در استانهای دیگر مثل تبریز، اصفهان، مشهد، شیراز، کیش و….. نواحی دسترسپذیری دیگری تعریف میشود که همگی با یکدیگر مرتبط هستند.
این معماری دو مزیت بزرگ دارد، اول آنکه سرعت دستیابی به خدمات را برای کاربران هر شهر افزایش میدهد و دوم آنکه به مقابله با حملههای سایبری میپردازد. به این صورت که اگر ناحیه دسترسپذیری و مراکز داده مستقر در یک شهر با حمله روبرو شده و از دسترس خارج شدند، مراکز داده شهرهای اطراف خدمترسانی را آغاز کنند تا مشکل برطرف شود. در این حالت کاربر نهایی متوجه این اتفاق نمیشود و شاید تنها افت سرعت در دسترسی به خدمات را تجربه کند که در نهایت برطرف خواهد شد.
کاربران میتوانند برنامههای کاربردی یا ماشینهای مجازی خود را در نواحی دسترسپذیر مستقر کنند و زیرساخت عملیاتی موردنیاز خود را به شکلی پیکربندی کنند تا اگر دسترسی به یک ناحیه دسترسپذیر فراهم نبود، نواحی پشتیبان در دسترس بتوانند بار عملیاتی را پردازش کنند.
قرارگیری مبتنی بر خوشه (Cluster Placement)
قرارگیری مبتنی بر خوشه اشاره به یک گروهبندی منطقی از نمونهها (instances) در یک ناحیه دسترسپذیر واحد دارد.Cluster Placement به گسترش ابرهای خصوصی مجازی (VPC) همتا در یک منطقه کمک فراوانی میکند.
شما میتوانید ماشینهای مجازی را روی هاستهای مجازیسازی مختلف برای دستیابی به اصل افزونگی در صورت خرابی یک هاست اجرا کنید. گاهی اوقات شرایط ایجاد میکند که ماشینهای مجازی روی یک میزبان اجرا شوند تا ماشینهای مجازی با کمترین تاخیر به یکدیگر دسترسی داشته باشند. برای رسیدن به این هدف، باید ماشینهای مجازی را در یک خوشه گروهبندی کنید تا مطمئن شوید که ماشینهای مجازی همیشه روی یک میزبان اجرا میشوند.
مشکلی که قرارگیری مبتنی بر خوشهبندی دارد، این است که پایینترین سطح از انعطافپذیری را ارائه میکند و در نتیجه در صورت خرابی میزبان، دسترسی به ماشینهای مجازی متوقف میشود. بنابراین کاری که میتوانید انجام دهید این است که چند خوشه از ماشینهای مجازی ایجاد کنید و آنها را روی میزبانهای مختلف و حتی در AZهای مختلف اجرا کنید.
مدیریت از راه دور ماشینهای مجازی
یکی از مباحث مهمی که هنگام کار با ماشینهای مجازی و ابر با آن روبرو میشوید، روشهای دسترسی از راه دور به ماشینهای مجازی و ابزارهایی است که برای مدیریت و نظارت بر ماشینهای مجازی در اختیار دارید. با توجه به اینکه دسترسی فیزیکی به مراکز داده ارائهدهنده خدمات ابری ندارید، بنابراین دسترسی از راه دور تنها گزینه شما برای مدیریت سرورهایتان است. علاوه بر این، ارائهدهنده ابر به شما دسترسی مستقیم به هایپروایزر که اغلب اختصاصی است را نمیدهد.
رویکرد فوق در نقطه مقابل یک محیط سنتی مرکز داده است که در آن میتوانید یک برنامه مدیریت هایپروایزر را روی یک ایستگاه کاری نصب کنید و هایپروایزر را بهطور کامل پیکربندی و مدیریت کنید. درست به همان صورتی که در شکلهای زیر مشاهده میکنید.
در شکل بالا، کامپیوتر محلی برنامه مدیریت هایپروایزر (Hypervisor) را اجرا می کند.
در شکل بالا، نرمافزار مدیریت از راه دور هایپروایزر در دسترس مصرفکننده قرار دارد.
گزینههای شما برای مدیریت ماشینهای مجازی و سایر منابع ابری محدود به رابط مدیریت وب، ابزارهای خط فرمان و واسطهای برنامهنویسی کاربردی (API) است که ارائهدهنده خدمات ابری در اختیارتان قرار میدهد.
هنگامی که یک ماشین مجازی را تهیه میکنید، مدیریت سیستم عامل و برنامههای در حال اجرا روی آن پیچیدگی خاصی ندارد، زیرا آنها را تقریباً به روشی یکسان با زمانی که از مرکز داده استفاده میکردید، مدیریت میکنید. در واقع، دلیل اصلی که شرکتها خدمات IaaS را ارائه میدهند این است که زیرساختهای مرکز داده را به اندازه کافی در نزدیکی شما مستقر میکنند تا بتوانید ماشینهای مجازی موجود را متناسب با نیاز کاری خود انتخاب کنید و با کمترین دردسر خدمات تجاری را به ابر انتقال دهید. در ادامه برخی از گزینههای مدیریتی که پیشتر با آنها آشنا شدهایم را مرور کنیم.
Remote Desktop Protocol
پروتکل دسکتاپ از راه دور RDP مخفف Remote Desktop Protocol یک پروتکل اختصاصی است که توسط مایکروسافت طراحی شده تا کاربران بتوانند از راه دور به دستگاههای ویندوزی خود دسترسی داشته باشند. مکانیزم کاری پروتکل فوق در شکل زیر نشان داده شدهاست.
RDP کارآمدترین ابزاری است که برای مدیریت از راه دور ماشینهای مجازی ویندوز به آن دسترسی دارید، زیرا به شما امکان میدهد از راه دور بهگونهای کار کنید که گویی به صورت محلی به سرور متصل هستید. مایکروسافت برنامه مرتبط با این پروتکل را Remote Desktop Services نامگذاری کرده که پیشتر Terminal Services شناخته میشد. برنامه دسکتاپ از راه دور روی تمام نسخههای ویندوز نصب شدهاست. پروتکلRDP از پورت 3389 پروتکل TCP استفاده میکند.
نسخه گرافیکی نام سرور راه دور مستقر در فضای ابری را برای اتصال درخواست میکند. پس از اتصال موفقیتآمیز، یک رابط استاندارد ویندوزی برای ورود به سیستم نمایش داده میشود. در ادامه، پس از اتصال موفقیتآمیز، دسکتاپ استاندارد مربوط به ویندوز سرور را به شکل محلی در ایستگاه کاری مشاهده خواهید کرد.
پروتکل SSH: دومین گزینه دسترسی از راه دور به سرور پروتکل SSH است که تا حد زیادی به عنوان یک روش دسترسی از راه دور، جایگزین Telnet شده است. SSH از رمزگذاری ارتباطات پشتیبانی میکند، در حالی که Telnet فاقد هرگونه رمزگذاری است. به همین دلیل Telnet یک دسترسی غیر ایمن را فراهم میکند.
برای استفاده از SSH، سرویس SSH باید روی ماشین مجازی فعال باشد. تقریباً روی بیشتر توزیعهای لینوکس پروتکل فوق وجود دارد، اما کاربران سیستم عامل ویندوز باید آن را روی دستگاههای خود نصب کنند.
بیشتر کلاینتهای SSH به دو شکل تجاری و رایگان در بازار موجود هستند. کلاینت SSH با استفاده از پورت 22، پروتکل TCP بر مبنای یک اتصال رمزگذاری شده به شبکه متصل میشود. فرآیند فوق در شکل زیر نشان داده شده است.
پس از اتصال موفقیتآمیز، یک رابط خط فرمان برای مدیریت خدمات ابری در دسترس کاربر قرار میگیرد. SSH یک روش رایج اتصال از راه دور است که برای پیکربندی دستگاههای شبکه مانند سوئیچها و روترها استفاده میشود.
نظارت بر منابع ابری
توجه داشته باشید وقتی یک استقرار ابرمحور را عملیاتی کردید، کار شما به اتمام نرسیده است. شما باید به طور مداوم بر عملکرد نظارت داشته باشید و مطمئن شوید که هیچ وقفهای در خدمات وجود ندارد. خوشبختانه، این عملکرد تا حد زیادی خودکار شده است.
ارائهدهندگان ابر راههایی را برای جمعآوری و تجزیه و تحلیل معیارهای عملکردی و سلامت در اختیار کاربران خود قرار میدهند. برخی از آنها تنظیمات پیشرفتهای در ارتباط با گزارشدهی در مورد افزایش زمان پاسخدهی برنامه، از کار افتادن ماشین مجازی، هشدارهای پیامکی، ایمیل یا تماس با دیگر اپلیکیشنها را در اختیار کاربران قرار میدهند.
نظارت و خودکارسازی در فضای ابری به شکل یکپارچهای با یکدیگر عجین شدهاند. به عنوان مثال، این امکان وجود دارد تا اگر بار کاری برای بیش از 10 دقیقه از 98 درصد فراتر رفت، از مقیاسبندی خودکار برای افزودن CPUهای مجازی اضافی به ماشین مجازی استفاده کنید تا عملکرد ماشین مجازی افت پیدا نکند. درست همانند فناوریهای امروزی در ابر امکان خودکارسازی به سادهترین شکل وجود دارد تا پاسخگویی به الزامات با کمترین کار دستی انجام شود.