چهارشنبه, ۱۳ تیر, ۱۴۰۳ / 3 July, 2024
مجله ویستا

نسل جدید لینوکس رده حامل


نسل جدید لینوکس رده حامل

دنیای ارتباطات در حال تجربه یک تحول در جهت پاسخگویی به تقاضاهای تکنولوژی های جدید صوت و داده است این تکنولوژی ها شامل صوت بر روی پروتکل اینترنت VoIP , آلترناتیو راه گزینی بسته ای packet switching که جایگزین مدل قدیمی تلفن راه گزینی مداری circuit switching است می باشند

دنیای ارتباطات در حال تجربه یک تحول در جهت پاسخگویی به تقاضاهای تکنولوژی‌های جدید صوت و داده است. این تکنولوژی‌ها شامل صوت بر روی پروتکل اینترنت (VoIP)، آلترناتیو راه‌گزینی بسته‌ای (packet switching) که جایگزین مدل قدیمی تلفن راه‌گزینی مداری (circuit switching) است می‌باشند. برای راه‌اندازی ترافیک VoIP، سرورهای کاربردی باید قابلیت اطمینان رده حامل را فراهم سازند که دسترس‌پذیری بالای خدمات را تضمین نماید (۹۹.۹۹۹% uptime «پریود زمانی که در طول آن یک سیستم فعال است و صحیح عمل می‌کند» یا بهتر). این سیستم‌ها همچنین باید در سطحی باشند که توانایی اداره‌ی صدها هزار مکالمه را داشته باشند و کیفیت بالای گفتاری و کارآیی قابل پیش‌بینی را فراهم آورند. همچنان که فراهم‌کنندگان تجهیزات معماری‌های پلاتفرم اختصاصی به محیط‌های نرم‌افزاری باز و معماری‌های پلاتفرم محصولات تجاری با تولید انبوه (COTS) مهاجرت می‌نمایند صنعت ارتباطات دستخوش تحولات عظیمی می‌گردد. به نرم‌افزارهای باز و سخت‌افزارهای COTS به عنوان ابزارهایی برای گسترش سریع سرویس‌های جدید صوت و داده نگریسته می‌شود، آنها در حالی که هزینه‌های سرمایه‌ای و هزینه‌های عملیاتی را حذف می‌نمایند، فراهم‌کنندگان تجهیزات را قادر می‌سازند که رقابتی و سودآور باقی بمانند.

لینوکس رده حامل (CGL) در کانون حرکت به سوی معماری‌های باز قرار دارد. حدود سه سال پیش، گروهی از نمایندگان فروشنده‌های پلاتفرم، تامین‌کنندگان توزیع‌های لینوکس و فراهم‌کنندگان تجهیزات شبکه شروع به تعریف این مطلب نمودند که لینوکس رده حامل چگونه می‌تواند قابلیت اعتماد، سرویس‌پذیری و توسعه‌پذیری بالاتر را برای محیط‌های مختلف به ارمغان آورد، و این گونه بود که گروه کاری آزمایشگاه توسعه کدباز (OSDL) CGL شکل گرفت. از زمان شکل‌گیری، این گروه دو نسخه از یک مشخصه را برای تعریف این قابلیت‌ها تولید نموده است. در پاسخ، ارائه‌دهندگان توزیع لینوکس اکنون بیان می‌دارند که آنها توانایی پاسخگویی به نیازهای ارتباطی در حال ظهور را با اعلام عمومی نحوه مطابقت محصولات آنها با نیازمندی‌های تعریف شده در Carrier Grade Linux Requirements Definition نسخه ۲.۰ دارند. در حال حاضر، گروه کاری CGL به گونه‌ای رشد یافته است که دارای بیش از ۳۶ نماینده از فروشندگان پلاتفرم، تامین‌کنندگان توزیع لینوکس، فراهم‌کنندگان تجهیزات شبکه، حاملان (carrier ها) و اعضای انجمن توسعه در سراسر جهان است (تصویر ۱ را مشاهده نمایید). این گروه گسترش یافته در حال حاضر مشغول عرضه نسخه سوم از نیازمندی‌های CGL است. یک نسخه تکنولوژی از این سند در اوایل سال ۲۰۰۵ عرضه گردیده و یک نسخه قابل ثبت نیز در نیمه دوم ۲۰۰۵ عرضه خواهد شد.

برای روشنی و سادگی استفاده، مشخصه مزبور به هفت سند موضوعی مجزا تقسیم شده است:

▪ دسترس‌پذیری

▪ کلاسترها

▪ سرویس‌پذیری

▪ کارآیی

▪ استانداردها

▪ سخت‌افزار

▪ امنیت

پیش‌نویس این اسناد به مدت هشت ماه برای بررسی عموم در دسترس قرار داشت، از این رو بازخورد مزبور در تعریف لینوکس رده حامل لحاظ گردیده است.


نسل جدید لینوکس رده حامل
تصویر ۱- اکوسیستم CGL

نسل جدید لینوکس رده حامل
تصویر ۲- CGL در پشته برنامه‌های کاربردی

مشتریان مخابرات و ارتباطات انتظار دارند سرویس‌های صوت و داده‌ی آنها همیشه در دسترس باشد.دسترس‌پذیری سیستم به دسترس‌پذیری تک‌تک اجزای سیستم بستگی دارد. برای تضمین سرویس ۷/۲۴، باید این امکان وجود داشته باشد که نگهداری سیستم و گسترش سیستم در حال اجرای شبکه‌ها و سرورهای ارتباطی (مخابراتی) بدون مختل شدن سرویس‌هایی که از سوی آنها ارائه می‌گردد صورت گیرد.سیستم‌ها باید قادر به مقاومت در برابر خرابی اجزا باشند، امری که نسخه‌برداری و فراهم آوردن پشتیبان برای منابع تغذیه، فن‌ها، کارت‌های شبکه، منابع و مسیرهای ذخیره‌سازی را به موضوعی حیاتی تبدیل می‌نماید. خرابی‌های نرم‌افزاری نیز می‌تواند به میزان قابل توجهی دسترس‌پذیری یک گره‌ی محاسبه را تحت تاثیر قرار دهد، بنابراین برای دسترس‌پذیری تک‌-گره‌ نرم‌افزار کاربردی، middleware و سیستم‌عامل قدرتمند مورد نیاز است. تعریف نیازمندی‌های دسترس‌پذیری CGL (CGL Availability Requirements Definition) نسخه‌ی ۳.۰ مجموعه‌ای از نیازمندی‌هایی است که قدرتمندی یک گره‌ی محاسبه‌گر واحد را مد نظر قرار می‌دهند. دسترس‌پذیری با کلاستربندی گره‌های محاسبه‌گر مجزا بهبود یافته است و از همین رو یک گره یک نقطه‌ی واحد خرابی می‌باشد.

نیازمندی‌های تک-گره در قسمت دسترس‌پذیری می‌توانند به این صورت تقسیم‌بندی گردند:

▪ عملیات‌های آنلاین

▪ افزونگی

▪ مانیتورینگ

▪ نرم‌افزار قدرتمند

● عملیات آنلاین

عملیات آنلاین، یک سیستم را قادر می‌سازند در مواقعی که سخت‌افزار یا نرم‌افزار در حال جایگزینی یا ارتقا هستند یک سرویس را فراهم نماید. برای نمونه، هنگامی که یک فایل‌سیستم نیازمند اصلاح است، ممکن است اصلاح صورت گرفته به راه‌اندازی مجدد سیستم نیاز داشته باشد. در هر صورت، CGL امکان unmount شدن یک فایل‌سیستم را به شکلی قدرتمند و موثر ایجاب می‌نماید تا اصلاح و mount مجدد بدون راه‌اندازی مجدد (reboot) صورت گیرد. توانایی جایگزین نمودن یا ارتقای دیسک‌ها، پردازنده‌ها، حافظه، یا حتی کل blade های پردازنده/حافظه بدون از کار انداختن گره یا شبکه به میزان قابل توجهی به دسترس‌پذیری دائمی سرویس کمک می‌کند.

● افزونگی

یک سیستم با دسترس‌پذیری بالا باید دارای اجزای اضافی باشد و توانایی بهره‌گیری از سخت‌افزار اضافی را داشته باشد تا در هنگام خرابی یکی از اجزا بتواند همچنان به کار خود ادامه دهد. در حالت ایده‌آل، طرح‌ها می‌توانند تمامی نقاط منفرد از کار افتاده را از سیستم حذف نمایند. استفاده از مسیرهای ارتباطی اضافی، از قبیل پورت‌های اضافی شبکه و آداپتورهای اضافی میزبان، به همراه قابلیت‌های نرم‌افزارهای failover شبکه (نرم‌افزارهایی که کار سوییچ خودکار به منابع اضافی در هنگام بروز اشکال در منابع اصلی را انجام می‌دهند) همچون Ethernet bonding، دسترس‌پذیری شبکه را بهبود می‌بخشد. مسیرهای اضافی ذخیره‌سازی از قبیل پورت‌های اضافی کانال فیبر و آداپتورهای اضافی میزبان به کار برده شده با ورودی/خروجی چندمسیری، دسترس‌پذیری ذخیره‌سازی را بهبود می‌بخشد. استفاده از اجزای اضافی حافظه ممکن است امکان‌پذیر نباشد، اما کشف و تصحیح خطا می‌تواند برای ماسک کردن خطاهای خانه‌های حافظه مورد استفاده قرار گیرد؛ CGL پشتیبانی نرم‌افزاری کد تصحیح خطا (ECC) را ایجاب می‌نماید. خطاهای تک-بیت هنگامی که در سخت‌افزار یافت می‌گردند و توسط کرنل ثبت می‌شوند، گزارش می‌گردند. کرنل هر گاه که خطاهای غیر قابل تصحیح چند-بیت را شناسایی می‌نماید اقدام به فراخوانی یک روتین خاص می‌کند.

● مانیتورینگ

کشف سریع خرابی‌های سخت‌افزاری یا نرم‌افزاری نیازمند مانیتورینگ صحت (health monitoring) است.مانیتورینگ صحت همچنین برای کنترل سخت‌افزار یا نرم‌افزاری که شروع به خراب شدن کرده است مورد نیاز می‌باشد، مواردی همچون کنترل ECC حافظه، تجزیه و تحلیل پیش‌گویانه برای دیسک‌ها و پروسس‌هایی که به شیوه‌ای قابل پیش‌بینی‌ پاسخگو نیستند. از مانیتورینگ غیر نفوذی پروسس‌ها و کنش‌های غیرمعمول حافظه می‌توان به عنوان مثال‌هایی از نیازمندی‌های مانیتورینگ CGL نام برد. مانیتورینگ غیرنفوذی پروسس‌ها رفتار غیر عادی یک پروسس را شناسایی می‌نماید، رفتارهایی از قبیل مرگ پروسس، و یک اقدام را پایه‌ریزی می‌نماید، اقداماتی از قبیل ایجاد یک پروسس جدید. در مثال کنش‌های غیرمعمول حافظه، کارکرد حافظه‌ی سیستم مانیتور می‌گردد و هنگامی که استفاده از حافظه از حدود مشخص شده تجاوز کند فعالیت پروسس کنترل می‌شود.

● نرم‌افزار قدرتمند

نرم‌افزار قدرتمند نه تنها به سطوح بالای کیفیت برای نرم‌افزار سیستم‌عامل، middleware و برنامه‌های کاربردی اشاره دارد، بلکه با قابلیت‌های موجود برای نگهداری و ارتقای نرم‌افزار بدون متوقف ساختن سیستم نیز مرتبط است. در بسیاری از موارد، دسترس‌پذیری دائمی سرویس می‌تواند حفظ شود. Live Patching امکان اصلاح پروسس را بدون متوقف ساختن آن فراهم می‌آورد. Excessive CPU Cycle Detection رفتار غیر عادی پروسس را با تنظیم آستانه‌های استفاده از CPU در نقاط مختلف پروسس شناسایی می‌کند، و در نتیجه مشکلاتی از قبیل تولید موارد بی‌مصرف (thrashing) و حلقه‌های نامتناهی را مهار می‌کند، و اقداماتی از قبیل راه‌اندازی مجدد پروسس را پایه‌ریزی می‌نماید. برای به حداکثر رساندن uptime سیستم، به حداقل رساندن زمانی که سیستم در یک وضعیت آفلاین قرار دارد (مانند shutdown یا boot) از اهمیت بالایی برخوردار است. شرط آغاز به کار سریع سیستم (Fast System Startup)، زمان صرف شده برای راه‌اندازی مجدد یک سیستم با مد نظر قرار دادن توانایی چشم‌پوشی از برنامه‌ی بایوس را در بر می‌گیرد. شرط Boot Image Fallback ساز و کاری را تعریف می‌نماید که یک سیستم را قادر می‌سازد در مواقع بحرانی نارسایی بوت، به وضعیت مناسب قبلی بازگردد.

نیازمندی‌های تعریف شده در CGL Availability Requirements Definition نسخه‌ی ۳، کارکردهای معمول سیستم‌های اختصاصی رده‌ی حامل هستند و بیانگر فاصله‌ی میان لینوکس (که با متمرکز شدن بر دسک‌تاپ توسعه داده شده است) و سیستم‌های رده‌ی حامل (جایی که دسترس‌پذیری سرویس از اهمیت بسیار زیادی برخوردار است) می‌باشند.

نویسندگان: John Cherry, Takashi Ikebe, Terence Chen, Steven Dake

مترجم: امین ایزدپناه


شما در حال مطالعه صفحه 1 از یک مقاله 3 صفحه ای هستید. لطفا صفحات دیگر این مقاله را نیز مطالعه فرمایید.