در دو مقاله قبلی که در همین سری از مقالات که در خصوص سرورها نوشته شد ، بیشتر در خصوص ساختار و شیوه طراحی Case سرورها بحث شد.اما اینبار بیشتر می خواهیم در خصوص امکانات مدیریتی سرورها بحث کنیم . در مراکز داده مدیریت سرورها یکی از اساسی ترین قسمت ها و البته مهمترین قسمت های کار است . به همین دلیل بسیاری از تولید کنندگان سرور برای آسان شدن فرآیند مدیریت سرورها ، امکانات مدیریتی را در درون سخت افزارهای سرور تعبیه می کنند. همچنین همین تولید کنندگان برای مدیریت قابلیت های سخت افزارهای سرور ، نرم افزارهای مدیریت متناسب با نوع محصول تولیدی به همراه سرور ارائه می کنند . همانطور که در ابتدای این سری مقالات هم عنوان شد به دلیل اینکه این مقاله برای دوستانی نوشته شده است که در این زمینه تازه کار هستند بنابراین ممکن است عنوان مدیریت سخت افزار سرور کمی سخت به نظر برسد. شاید شما دوستان تعجب کنید که چرا برخی از سازمان ها برای خرید ( البته نه در ایران ) و راه اندازی سرویس های نرم افزارهای مانند System Center Operations Manager هزینه می کنند ، با توجه به اینکه نرم افزارهای مدیریت سرور خود به تنهایی اینکار را انجام می دهند !
یکی از مهمترین دلایل خرید نرم افزارهای مدیریتی که معمولا سازمان های آنها را پیاده سازی می کنند این است که ساختار سخت افزاری سرورها کمی پیچیده می باشد و طبیعی است که مدیریت و نظارت بر اینگونه سرورها بایستی در سطوح مختلفی انجام شود. مثلا در پاراگراف قبلی در خصوص System Center Operations Manager صحبت کردیم ، این نرم افزار یک محصول از شرکت مایکروسافت برای نظارت بر عملکرد سرویس هایی از خود شرکت مایکروسافت و همچنین سیستم عامل های مختلف می باشد ، به محض بروز مشکلی در سرورهای مختلف این نرم افزار می توانید ضمن اینکه به مدیران شبکه اطلاع رسانی کند ، عملیاتی برای ترمیم مشکل نیز انجام دهد ، البته عکس العمل این نرم افزار نسبت به رویداد های مختلف در سرورها بسته به نوع خواسته های مدیر شبکه می تواند متفاوت باشد. همچنین دقت داشته باشید که با اینکه این نرم افزار بصورت پیشفرض برای سیستم عامل های مایکروسافت و همچنین سرویس های این شرکت ارائه شده است اما به دلیل دارا بودن ساختار ماژولار این توانایی را دارد که با استفاده از Management Pack هایی که برای آن ارائه شده است سرورها و حتی سخت افزارها را نیز تا حدودی مدیریت و نظارت کند . بطور خلاصه SCOM سلامتی سیستم عامل و نرم افزارهای مختلف را تحت شبکه پایش یا مانیتور می کند.
هیچ نرم افزاری عملیات مانیتورینگ کامل را نمی تواند انجام دهد ، همانطور که اشاره کردیم System Center Operations Manager بیشتر در زمینه مانیتورینگ سیستم عامل و سرویس های مایکروسافت فعالیت می کند و در خصوص مانیتورینگ سخت افزارها شبکه چندان قوی کار نکرده است . توجه کنید که مانیتورینگ سرور و سیستم عامل دو مسئله در دو لایه مختلف هستند ، در لایه سیستم عامل ممکن است اصلا مشکلات سخت افزاری مشاهده نشوند اما اگر مشکلی در لایه سخت افزاری ایجاد شود قطعا لایه نرم افزار تحت تاثیر آن قرار خواهد گرفت . دقت کنید که سری مقالات ما در خصوص سخت افزارهای سرور است و اگر ما در خصوص مانیتورینگ صحبت می کنیم بیشتر مانیتورینگ سخت افزاری سروها مد نظر می باشد نه سیستم عامل و به همین دلیل است که نرم افزارهایی که برای مدیریت سرورها ایجاد می شوند برای مانتیورینگ سخت افزاری آنها طراحی شده اند و نه مانیتورینگ نرم افزاری ، در اصل این نرم افزارهای سلامتی سخت افزار را بررسی می کنند اما مسئله به همین سادگی ها هم نیست و قطعا در ادامه بیشتر با کارکرد این نرم افزارها آشنا خواهید شد.
نرم افزارهای مدیریت سروری مانند System Center Operations Manager و امثال آنها محصولاتی هستند که یک نیازمندی بسیار مهم برای فعالیت دارند ، برای اینکه بتوانند به درستی کار کنند سیستم عامل موجود بر روی سرور بایستی به درستی کار کند . اینگونه نرم افزارهای معمولا نرم افزارهای کوچکتری به نام Agent دارند که بر روی سیستم عامل سرور نصب شده و تمامی فعالیت های سیستم عامل را به سرور گزارش می دهد و این یعنی سیستم عامل بایستی روشن باشد و همچنین در فرآیند Boot سیستم نبایستی مشکلی وجود داشته باشد در غیر اینصورت نرم افزار نمی تواند با سرور ارتباط برقرار کند.
زمانیکه در خصوص مدیریت سخت افزاری سرور صحبت می کنیم ، این نیازمندی که عنوان کردیم دیگر وجود نخواهید داشت . حتی برخی اوقات شیوه هایی از مدیریت سرور وجود دارد که به روشن بودن سرور هم نیازمند نیستند ! به محض اینکه سرور به یک منبع برق متصل شود این سیستم می تواند مدیریت سرور در سطح سخت افزار را بر عهده بگیرد. خوب قطعا این وضعیت سئوالات جالبی را در ذهن شما ایجاد خواهد کرد ، مهمترین سئوال این است که چگونه ممکن است بتوانیم سروری که خاموش است را مدیریت کنیم ؟ چه منابعی از سرور را در حالت مدیریت سخت افزاری می توانیم مدیریت کنیم ؟ به چه شکل این مسئله امکانپذیر است در حالی که ما حتی نیازمندی اساسی نرم افزار مدیریت سروری را هم در اختیار نداریم ! همانطور که قبلا هم اشاره کردیم ، چندین نوع نرم افزار مدیریتی وجود دارد ، نرم افزارهایی که مدیریت سخت افزار سرور را بر عهده دارند بایستی بتوانند بدون نیاز به سیستم عامل خاص به خودی خود بتوانند مستقیما با سخت افزار سرور در همان سطح ارتباط برقرار کنند.
برای مدیریت سخت افزارها دو استاندارد اصلی به نامهای IPMI و BMC وجود دارد . بیشتر سرورها از یکی از این استانداردها پشتیبانی می کنند و از طرفی ممکن است از هر دوی این استانداردها پشتیبانی کنند. با توجه به اینکه استاندارد IPMI از محبوبیت و استفاده بیشتری برخوردار است بیشتر بحث ما را به خود اختصاص می دهد . سرورهایی که از استاندارد IPMI استفاده می کنند معمولا دارای یک پورت اختصاصی هستند که برای همین استاندارد تعبیه شده است . تعجب نکنید ، این پورت آنقدر هم عجیب نیست ، این پورت شبیه یک پورت شبکه با پهنای باند پایینتر است . برای متصل شدن به سرور از طریق IPMI بعد از اینکه کابل ارتباطی با سرور ارتباط برقرار کرد ، از طریق سیستمی که نرم افزار مدیریتی منطبق با استاندارد IPMI بر روی آن نصب شده است می توان به سرور متصل شد. به محض اینکه ارتباط ما با سرور برقرار شد ، نرم افزار مدیریتی قادر خواهد بود سلامت سرور را با استفاده از کدهای وضعیت ( Status Code ) های مختلفی معین کند. جالب اینجاست که بدانید به دلیل اینکه استانداردهای IPMI و BMC برای محیط های صنعتی طراحی شده اند کدهای وضعیت آنها در تمام دنیا و در بسیاری از وسایل صنعتی یکسان است . نرم افزارهای مدیریتی IPMI بر روی تمامی سرورهایی که از استاندارد IPMI پستیبانی می کنند قابل اجرا می باشد .
خوب اگر مدیریت سخت افزاری خیلی خوب است ، پس چرا در مراکز داده به عنوان یکی از راهکارهای مدیریت سرورها کمتر مورد استفاده قرار می گیرد؟ پاسخ این سئوال در این است که همانطور که مدیریت سخت افزاری مهم است در عین حال قابلیت های این نوع مدیریت محدود است. IPMI به گونه ای طراحی شده است که صرفا وضعیت اجزای سرور را با استفاده از حسگرهایی که در آنها تعبیه شده است به شما گزارش می دهد. IPMI به شما گزارش هایی مانند درجه حرارت درون Case سرور ، سرعت Fan و اینکه آیا Case سرور تاکنون باز شده است یا خیر را به شما می دهد. به زبان دیگر IPMI برای تشخیص خطاها و مشکلات سطح پایین بکار می رود و امکانات چندان پیشرفته ای برای مدیریت سرور در اختیار شما قرار نمی دهد.
در این مقاله سعی کردیم به شما ضرورت وجود روش های متعدد برای مدیریت سرورها را نشان دهیم . ما در خصوص نرم افزارهای مدیریتی که در سطح سیستم عامل و نرم افزارهای کاربردی فعالیت می کردند صحبت کردیم و همچنین در خصوص مانیتورینگ سطح پایین سخت افزارها نیز صحبت کردیم . اما توجه کنید که هنوز روشهای دیگری هم برای مدیریت سرورها وجود دارد که بایستی به آنها نیز توجه شود.
بیشتر تولید کنندگان سرور شناخته شده در دنیا برای مدیریت سخت افزارهای سرورها خود ، نرم افزارهای مخصوص به خود را دارند. مثلا شرکت HP برای مدیریت سرورهای خود نرم افزاری به نام HP Systems Insight Manager دارد و همچنین شرکت Dell برای سرورهای خود نرم افزاری به نام OpenManage را ارائه داده است. برخلاف استاندارد IPMI ای که در موردش صحبت کردیم این نرم افزارها بر اساس نوع سخت افزار و سازنده سرور متفاوت هستند. هر ابزاری مدیریتی که بر اساس استاندارد IPMI کار کند می تواند با هر سروری که از استاندارد IPMI پشتیبانی می کند ارتباط برقرار کند اما نرم افزارهایی که ویژه یک سازنده سرور خاص مثلا HP تولید می شوند صرفا می توانند با سرورهای HP ارتباط برقرار کنند. برای درک بهتر باید توجه کنید که شما نمی توانید با استفاده از HP Systems Insight Manager یک سرور IBM را مدیریت کنید.
خوب این نرم افزارهای مدیریتی اختصاصی به چه دردی می خورند ؟ همانطور که قبلا هم اشاره کردیم ، ابزارهای IPMI فقط برای تشخیص مشکلات و یا خطاهای احتمالی بکار می روند. در مقابل این مورد ابزارهایی که شرکت های سازنده سرور ارائه می کنند توانایی انجام تنظیمات سطح پایین بر روی سخت افزار سرورها را نیز دارند ، مثال این ابزارهای می توانند تنظیمات مربوط به RAID سرورها و Array های آنها را انجام دهند. قابلیت های واقعی نرم افزارهای مدیریتی سرور اختصاصی بر اساس نوع شرکت تولید کننده محصول متفاوت است اما معمولا این ابزارها در هنگام راه اندازی اولیه سرور ، بررسی مشکلات اولیه سرور در هنگام پیاده سازی در محیط شبکه ، هشدار دادن به مدیر سیستم در خصوص وجود مشکلات و انجام اقدامات اصلاحی استفاده می شوند. برخی اوقات همین نرم افزارهای کار بروز رسانی درایورها و firmware های سرور را نیز انجام می دهند . برخی دیگر از این نرم افزارهای می توانند کمک های فنی را از شرکت سازنده در جهت برطرف کردن مشکلات سرور دریافت کنند . اینگونه ابزارها حتی ممکن است بتوانند قابلیت های مدیریت از راه دور ، نگهداری اطلاعات گارانتی و خدمات هر سرور را بصورت جداگانه را در خود داشته باشند.
نتیجه
برای اینکه یک مرکز داده بتواند به درستی به کار خود ادامه دهد بایستی بتواند مدیریت درستی بر روی سرورهای خود به ویژه بصورت سخت افزاری انجام دهد . در این خصوص سازندگان سرور در دنیا برای پشتیبانی از این موضوع یا بر روی Board های سخت افزاری خود قابلیت هایی برای مدیریت سخت افزار قرار می دهند و یا اینکه نرم افزارهایی ویژه برای مدیریت محصول سخت افزاری سرور خود در اختیار خریدار می گذارند تا بتوانند از طریق آن سخت افزار سرورها را مدیریت کنند. در قسمت چهارم از این سری مقالات بیشتر در خصوص حافظه سرور ها یا همان RAM سرورها صحبت خواهیم کرد ، در آنجا در خصوص قابلیت های خطاپذیری حافظه یا Memory Fault Tolerance و همچنین تفاوت های بین RAM سرور و PC بیشتر صحبت خواهیم کرد . امیدوارم که مورد توجه شما قرار گرفته باشد.
نویسنده : محمد نصیری