دانشمندان موفق شدهاند با الهام گرفتن از يك روايت كهن ، شيوه كارآمد و در عين حال ارزاني را براي دستيابي به توانهاي محاسباتي بسيار بالا ، تكميل كنند. به نوشته ماهنامه علمي
" ساينتيفيك آمريكن " اين شيوه هماكنون در بسياري از مراكز علمي و آزمايشگاههاي تحقيقاتي ، مورد استفاده قرار گرفته است.
در افسانههاي قديمي آمده است كه روزي گذار كهنه سربازي گرسنه و بيپول به دهي فقرزده افتاد و براي رفع گرسنگي ابتكاري به خرج داد. او به مردم دهكده گفت كه ميتواند با استفاده از يك ديگ بزرگ آب جوش و يك تكه سنگ آش خوشمزهاي بپزد. مردم ده ابتدا با ناباوري به او كه ديگ را بار گزارده بود نگريستند ، اما بعد هر يك براي آنكه سهمي از آش داشته باشند ، با اهدا يك تكه كوچك گوشت يا يك دسته سبزي ، يا يكي دو تا هويج ، يا مشتي برنج ، در كار پختن و تهيه آش مشاركت كردند. دست آخر درون ديگ آنقدر ماده خوردني جاي گرفته بود كه محصول نهايي را به اندازه كافي خوشمزه و مغذي ميكرد. به نوشته اين ماهنامه ، محققان آزمايشگاه ملي
" اوك ريج " با استفاده از همين تمثيل ابر كامپيوتر تازهاي موسوم به " سنگ " را تكميل كردهاند كه متشكل از 130 كامپيوتر معمولي است كه به صورت كلاستري عمل ميكنند. يكي از اين 130 دستگاه به عنوان ورودي كل سيستم عمل ميكند كه از يك سو با شبكهها و سيستمهاي ديگر در تماس است و از سويي ديگر با بقيه اعضا شبكه خود ارتباط برقرار ميكند. اين شبكه مسائلي را كه بدان محول ميشود ، با استفاده از شيوه محاسبه موازي و با تقسيم كار ميان اعضاء شبكه به انجام ميرساند.
يكي از بزرگترين طرحهايي كه اين ابر كامپيوتر مونتاژ شده از عهده آن برآمده ، تهيه نقشه جامعي از ايالات متحده است كه در آن كل مساحت امريكا به 8/7 ميليون قطعه ، هر يك به مساحت يك كيلومتر مربع ، تقسيم شده و 25 مولفه آب و هوايي مختلف براي نقاط گوناگون آن در نظر گرفته شده و در مجموع 1000 ناحيه آب و هوايي متفاوت در آن منظور شده است.
هرچند انديشه به هم پيوستن كامپيوترهاي معمولي و يا قديمي براي دستيابي به توان عملياتي بالاتر ، انديشه تازهاي نيست و سابقه آن به دهه 1950 باز ميگردد ، اما تنها در چند سال اخير است كه ظهور نرمافزارهاي جديد امكان بهرهگيري كلاستري از كامپيوترهاي ديجيتالي را فراهم آورده است. به عنوان نمونه ، هماكنون در موزه تاريخ طبيعي آمريكا ، 560 كامپيوتر پنتيوم 3 موجود است كه محققان با به هم پيوستن آنها ، ابر كامپيوتر قدرتمندي را بوجود آوردهاند كه از آن براي بررسي در نحوه تطور اختران و ستارگان بهره گرفته ميشود.
نكته حائز اهميت در رهيافت تازه آن است كه ميتوان از كامپيوترهاي موجود در اوقاتي كه كاربران اصلي آنها از آنها استفاده نميكنند ، بهره گرفت. به عنوان مثال ، پروژه " ستي " كه به وسيله دانشگاه كاليفرنيا و براي بررسي امكان وجود موجودات هوشمند در كيهان در حال اجراست ، فعاليت خود را از طريق اينترنت و به كمك 3 ميليون كامپيوتر شخصي متعلق به شهروندان ، و در ساعات آخر شب كه كامپيوترها مورد استفاده صاحبان آنها نيستند ، دنبال ميكند.
#clustering #hp #hpc #linux #beowulf @unixmens
" ساينتيفيك آمريكن " اين شيوه هماكنون در بسياري از مراكز علمي و آزمايشگاههاي تحقيقاتي ، مورد استفاده قرار گرفته است.
در افسانههاي قديمي آمده است كه روزي گذار كهنه سربازي گرسنه و بيپول به دهي فقرزده افتاد و براي رفع گرسنگي ابتكاري به خرج داد. او به مردم دهكده گفت كه ميتواند با استفاده از يك ديگ بزرگ آب جوش و يك تكه سنگ آش خوشمزهاي بپزد. مردم ده ابتدا با ناباوري به او كه ديگ را بار گزارده بود نگريستند ، اما بعد هر يك براي آنكه سهمي از آش داشته باشند ، با اهدا يك تكه كوچك گوشت يا يك دسته سبزي ، يا يكي دو تا هويج ، يا مشتي برنج ، در كار پختن و تهيه آش مشاركت كردند. دست آخر درون ديگ آنقدر ماده خوردني جاي گرفته بود كه محصول نهايي را به اندازه كافي خوشمزه و مغذي ميكرد. به نوشته اين ماهنامه ، محققان آزمايشگاه ملي
" اوك ريج " با استفاده از همين تمثيل ابر كامپيوتر تازهاي موسوم به " سنگ " را تكميل كردهاند كه متشكل از 130 كامپيوتر معمولي است كه به صورت كلاستري عمل ميكنند. يكي از اين 130 دستگاه به عنوان ورودي كل سيستم عمل ميكند كه از يك سو با شبكهها و سيستمهاي ديگر در تماس است و از سويي ديگر با بقيه اعضا شبكه خود ارتباط برقرار ميكند. اين شبكه مسائلي را كه بدان محول ميشود ، با استفاده از شيوه محاسبه موازي و با تقسيم كار ميان اعضاء شبكه به انجام ميرساند.
يكي از بزرگترين طرحهايي كه اين ابر كامپيوتر مونتاژ شده از عهده آن برآمده ، تهيه نقشه جامعي از ايالات متحده است كه در آن كل مساحت امريكا به 8/7 ميليون قطعه ، هر يك به مساحت يك كيلومتر مربع ، تقسيم شده و 25 مولفه آب و هوايي مختلف براي نقاط گوناگون آن در نظر گرفته شده و در مجموع 1000 ناحيه آب و هوايي متفاوت در آن منظور شده است.
هرچند انديشه به هم پيوستن كامپيوترهاي معمولي و يا قديمي براي دستيابي به توان عملياتي بالاتر ، انديشه تازهاي نيست و سابقه آن به دهه 1950 باز ميگردد ، اما تنها در چند سال اخير است كه ظهور نرمافزارهاي جديد امكان بهرهگيري كلاستري از كامپيوترهاي ديجيتالي را فراهم آورده است. به عنوان نمونه ، هماكنون در موزه تاريخ طبيعي آمريكا ، 560 كامپيوتر پنتيوم 3 موجود است كه محققان با به هم پيوستن آنها ، ابر كامپيوتر قدرتمندي را بوجود آوردهاند كه از آن براي بررسي در نحوه تطور اختران و ستارگان بهره گرفته ميشود.
نكته حائز اهميت در رهيافت تازه آن است كه ميتوان از كامپيوترهاي موجود در اوقاتي كه كاربران اصلي آنها از آنها استفاده نميكنند ، بهره گرفت. به عنوان مثال ، پروژه " ستي " كه به وسيله دانشگاه كاليفرنيا و براي بررسي امكان وجود موجودات هوشمند در كيهان در حال اجراست ، فعاليت خود را از طريق اينترنت و به كمك 3 ميليون كامپيوتر شخصي متعلق به شهروندان ، و در ساعات آخر شب كه كامپيوترها مورد استفاده صاحبان آنها نيستند ، دنبال ميكند.
#clustering #hp #hpc #linux #beowulf @unixmens
بيشتر اوقات برنامههاي كاربردي به توان محاسباتي بالاتري نسبت به آنچه كه يك كامپيوتر ترتيبي ميتواند ارائه دهد ، نياز دارند. يكي از راههاي غلبه بر اين محدوديت بهبود بخشيدن سرعت عملياتي پردازندهها و ساير اجزا ميباشد ، بطوريكه آنها بتوانند توان مورد نياز برنامههاي كاربردي كه داراي محاسبات وسيع و گسترده هستند را فراهم نمايند. اگر چه در سالهاي اخير اين امكان تا اندازهاي مهيا شده است ، ليكن سرعت نور ، قوانين ترموديناميك و هزينههاي سنگين ساخت پردازنده موانعي در جهت پيشرفتهاي آتي ايجاد كردهاند. يكي از راهحلهاي موثر و كمهزينه اتصال چندين پردازنده به يكديگر و هماهنگ نمودن عمليات و توان محاسباتي آنها ميباشد. سيستمهاي بوجود آمده تحت عنوان " كامپيوترهاي موازي " شهرت دارند و اجازه تقسيم يك كار محاسباتي بين چند پردازشگر را ميدهند.
همانگونه كه فيستر اشاره ميكند ، جهت بهبود عملكرد يك سيستم سه راه وجود دارد :
كار و تلاش بيشتر
كاركرد موثر و كارآمد
كمك گرفتن
در اصطلاح تكنولوژيهاي محاسباتي ، كار و تلاش بيشتر به مثابه استفاده از سختافزار سريعتر
( پردازندهها و دستگاههاي جانبي با كارآيي و سرعت بالا ) ميباشد. كاركرد موثر و كارآمد به مثابه انجام كارها بصورت كارا بوده و در رابطه با الگوريتمها و تكنيكهايي كه جهت حل مسائل و كارهاي محاسباتي استفاده ميشوند ، صحبت به عمل ميآورد. و در نهايت كمك گرفتن به بكارگيري چندين كامپيوتر جهت حل يك مسئله خاص اشاره دارد.
1 – 1 دورههاي محاسبات
صنعت محاسبه يكي از صنايعي است كه سريعترين رشد را داشته و از دستاوردهاي فني پرشتاب در حوزههاي سختافزار و نرمافزار بهره جسته است. پيشرفتهاي تكنولوژي در عرصه سختافزار ، رشد و توسعه تراشهها ، فنآوريهاي ساخت تراشه ، ريزپردازندههاي سريع و ارزان و همچنين پهناي باند بالا و شبكههاي ارتباطي با تاخير كم ميباشند. در بين اين موارد پيشرفتهاي اخير در فنآوري VLSI ( تجمع در مقياس بسيار وسيع ) نقش مهمي در رشد كامپيوترهاي ترتيبي و موازي ايفا كرده است. فنآوري نرمافزار نيز به سرعت در حال رشد ميباشد. نرمافزارهاي پيشرفتهاي چون سيستمعاملها ، زبانهاي برنامهنويسي ، متدهاي توسعه و ابزارها ، همگي در دسترس ميباشند. اينها باعث رشد و ساماندهي برنامههاي كاربردي در جهت خدمت به نيازهاي علمي ، مهندسي و تجاري شدهاند. همچنين بايد خاطر نشان كرد كه برنامههاي بزرگ و قدرتمند نظير پيشبيني وضع هوا و تحليل و بررسي زلزله ، عامل اصلي رشد و توسعه كامپيوترهاي موازي قدرتمند بودهاند.
يكي از راههاي مشاهده محاسبه تقسيم آن به دو عصر ميباشد :
عصر محاسبه ترتيبي
عصر محاسبه موازي
شكل شماره 2 تغييراتي كه در عصرهاي محاسبات بوجود آمده است را نشان ميدهد. هر عصر محاسبه با يك توسعه در معماريهاي سختافزاري و به دنبال آن نرمافزار سيستم ( به ويژه در حوزه كامپايلرها و سيستمعاملها ) و برنامههاي كاربردي شروع شده و در نهايت با رشد در PSE ها
( محيطهاي حل مسئله ) به اوج خود رسيده است. هر جزء از سيستم محاسباتي داراي سه فاز R&D ( تحقيق و توسعه ) ، تجاريسازي و توليد جنس ميباشد. فنآوري كه در وراي توسعه اجزاي سيستم محاسبه در عصر ترتيبي وجود دارد به تكامل رسيده است و رشدهاي مشابهاي هنوز بايد در عصر موازي رخ دهند. يعني ، فنآوري محاسبه موازي هنوز جاي رشد و توسعه دارد ، زيرا به اندازه كافي پيشرفت نكرده است تا به عنوان يك تكنولوژي توليد كالا مطرح شود.
#clustering #hp #hpc #linux #beowulf @unixmens
همانگونه كه فيستر اشاره ميكند ، جهت بهبود عملكرد يك سيستم سه راه وجود دارد :
كار و تلاش بيشتر
كاركرد موثر و كارآمد
كمك گرفتن
در اصطلاح تكنولوژيهاي محاسباتي ، كار و تلاش بيشتر به مثابه استفاده از سختافزار سريعتر
( پردازندهها و دستگاههاي جانبي با كارآيي و سرعت بالا ) ميباشد. كاركرد موثر و كارآمد به مثابه انجام كارها بصورت كارا بوده و در رابطه با الگوريتمها و تكنيكهايي كه جهت حل مسائل و كارهاي محاسباتي استفاده ميشوند ، صحبت به عمل ميآورد. و در نهايت كمك گرفتن به بكارگيري چندين كامپيوتر جهت حل يك مسئله خاص اشاره دارد.
1 – 1 دورههاي محاسبات
صنعت محاسبه يكي از صنايعي است كه سريعترين رشد را داشته و از دستاوردهاي فني پرشتاب در حوزههاي سختافزار و نرمافزار بهره جسته است. پيشرفتهاي تكنولوژي در عرصه سختافزار ، رشد و توسعه تراشهها ، فنآوريهاي ساخت تراشه ، ريزپردازندههاي سريع و ارزان و همچنين پهناي باند بالا و شبكههاي ارتباطي با تاخير كم ميباشند. در بين اين موارد پيشرفتهاي اخير در فنآوري VLSI ( تجمع در مقياس بسيار وسيع ) نقش مهمي در رشد كامپيوترهاي ترتيبي و موازي ايفا كرده است. فنآوري نرمافزار نيز به سرعت در حال رشد ميباشد. نرمافزارهاي پيشرفتهاي چون سيستمعاملها ، زبانهاي برنامهنويسي ، متدهاي توسعه و ابزارها ، همگي در دسترس ميباشند. اينها باعث رشد و ساماندهي برنامههاي كاربردي در جهت خدمت به نيازهاي علمي ، مهندسي و تجاري شدهاند. همچنين بايد خاطر نشان كرد كه برنامههاي بزرگ و قدرتمند نظير پيشبيني وضع هوا و تحليل و بررسي زلزله ، عامل اصلي رشد و توسعه كامپيوترهاي موازي قدرتمند بودهاند.
يكي از راههاي مشاهده محاسبه تقسيم آن به دو عصر ميباشد :
عصر محاسبه ترتيبي
عصر محاسبه موازي
شكل شماره 2 تغييراتي كه در عصرهاي محاسبات بوجود آمده است را نشان ميدهد. هر عصر محاسبه با يك توسعه در معماريهاي سختافزاري و به دنبال آن نرمافزار سيستم ( به ويژه در حوزه كامپايلرها و سيستمعاملها ) و برنامههاي كاربردي شروع شده و در نهايت با رشد در PSE ها
( محيطهاي حل مسئله ) به اوج خود رسيده است. هر جزء از سيستم محاسباتي داراي سه فاز R&D ( تحقيق و توسعه ) ، تجاريسازي و توليد جنس ميباشد. فنآوري كه در وراي توسعه اجزاي سيستم محاسبه در عصر ترتيبي وجود دارد به تكامل رسيده است و رشدهاي مشابهاي هنوز بايد در عصر موازي رخ دهند. يعني ، فنآوري محاسبه موازي هنوز جاي رشد و توسعه دارد ، زيرا به اندازه كافي پيشرفت نكرده است تا به عنوان يك تكنولوژي توليد كالا مطرح شود.
#clustering #hp #hpc #linux #beowulf @unixmens
دليل اصلي ايجاد و استفاده كامپيوترهاي موازي غلبه بر تنگناي سرعت كم پردازشگر واحد با استفاده از موازيسازي ميباشد. علاوه بر اين ، نسبت بها / عملكرد يك كامپيوتر موازي كوچك بر مبناي كلاستر در مقايسه با يك ميني كامپيوتر ، بسيار كوچكتر و در نتيجه از بهاي مناسبتري برخوردار خواهد بود. خلاصه اينكه ، توسعه و توليد سيستمهايي كه سرعت متوسطي داشته و از معماريهاي موازي استفاده ميكنند بسيار ارزانتر از ايجاد عملكرد معادل در يك سيستم ترتيبي ميباشد.
در بخشهاي باقيمانده ، گزينههاي معماري براي ساختن كامپيوترهاي موازي ، محركهاي تغيير در جهت محاسبه موازي كمهزينه ، مدل كلي يك كامپيوتر كلاستر شده ، اجزاي بكار گرفته شده در ساخت كلاستر، ميانافزار كلاستر ، مديريت و برنامهريزي منابع ، ابزارها و محيطهاي برنامهنويسي و سيستمهاي نماينده كلاستر مورد بحث قرار خواهند گرفت. در نهايت تكنولوژيهايي كه در آينده در رابطه با كلاستر وجود خواهند داشت نيز توضيح داده ميشوند.
2 - معماريهاي مقياسپذير كامپيوتر موازي
در طول دهههاي گذشته ، سيستمهاي كامپيوتري بسيار متفاوتي كه از عملكرد محاسباتي بالايي برخوردار بودهاند ، پديدار گشتهاند. طبقهبندي آنها بر مبناي چگونگي پردازندهها ، حافظه و اتصالات دروني بوده است. رايجترين سيستمها عبارتند از :
پردازندههاي موازي گسترده ( MPP )
چندپردازندههاي متقارن ( SMP )
دسترسي به حافظه غير همشكل و يكسان بودن كاشه ( CC-NUMA )
سيستمهاي توزيعي
كلاسترها ( Clusters )
جدول شماره 1 مقايسه ويژگيهاي معماري و عملياتي ماشينهاي بالا را نشان ميدهد.
در واقع MPP معمولاً يك سيستم پردازش موازي بزرگ است كه در معماري آن منبع مشترك وجود ندارد. اين سيستم شامل چند صد واحد پردازش ( گره ) ميباشد كه از طريق يك شبكه يا سوييچ ارتباطي با سرعت بالا به يكديگر متصل شدهاند. هر گره ( Node ) ميتواند تنوعي از اجزاء سختافزاري داشته باشد ، اما عموماً شامل يك يا چند پردازنده و يك حافظه اصلي است. بعلاوه ، گرههاي ويژه ميتوانند وسايل جانبي نظير ديسكها و يا سيستمهاي پشتيبان داشته باشند. هر گره يك نسخه جداگانه از سيستمعامل را اجرا ميكند.
#clustering #hp #hpc #linux #beowulf @unixmens
در بخشهاي باقيمانده ، گزينههاي معماري براي ساختن كامپيوترهاي موازي ، محركهاي تغيير در جهت محاسبه موازي كمهزينه ، مدل كلي يك كامپيوتر كلاستر شده ، اجزاي بكار گرفته شده در ساخت كلاستر، ميانافزار كلاستر ، مديريت و برنامهريزي منابع ، ابزارها و محيطهاي برنامهنويسي و سيستمهاي نماينده كلاستر مورد بحث قرار خواهند گرفت. در نهايت تكنولوژيهايي كه در آينده در رابطه با كلاستر وجود خواهند داشت نيز توضيح داده ميشوند.
2 - معماريهاي مقياسپذير كامپيوتر موازي
در طول دهههاي گذشته ، سيستمهاي كامپيوتري بسيار متفاوتي كه از عملكرد محاسباتي بالايي برخوردار بودهاند ، پديدار گشتهاند. طبقهبندي آنها بر مبناي چگونگي پردازندهها ، حافظه و اتصالات دروني بوده است. رايجترين سيستمها عبارتند از :
پردازندههاي موازي گسترده ( MPP )
چندپردازندههاي متقارن ( SMP )
دسترسي به حافظه غير همشكل و يكسان بودن كاشه ( CC-NUMA )
سيستمهاي توزيعي
كلاسترها ( Clusters )
جدول شماره 1 مقايسه ويژگيهاي معماري و عملياتي ماشينهاي بالا را نشان ميدهد.
در واقع MPP معمولاً يك سيستم پردازش موازي بزرگ است كه در معماري آن منبع مشترك وجود ندارد. اين سيستم شامل چند صد واحد پردازش ( گره ) ميباشد كه از طريق يك شبكه يا سوييچ ارتباطي با سرعت بالا به يكديگر متصل شدهاند. هر گره ( Node ) ميتواند تنوعي از اجزاء سختافزاري داشته باشد ، اما عموماً شامل يك يا چند پردازنده و يك حافظه اصلي است. بعلاوه ، گرههاي ويژه ميتوانند وسايل جانبي نظير ديسكها و يا سيستمهاي پشتيبان داشته باشند. هر گره يك نسخه جداگانه از سيستمعامل را اجرا ميكند.
#clustering #hp #hpc #linux #beowulf @unixmens
برنامههاي كاربردي موازي و مقياسپذير نياز به عمليات مميز شناور با كارآيي بالا ، ارتباطات با تاخير كم و پهناي باند زياد ، پهناي باند قابل انعطاف و دسترسي سريع به فايلها خواهند داشت. نرمافزار كلاستر ميتواند اين نيازمنديها را با استفاده از منابعي كه جهت هر كلاستر وجود دارند ، مهيا كند. ميتوان سيستم فايلي كه از ورودي و خروجي موازي پشتيباني به عمل ميآورد را با استفاده از ديسكهايي كه جهت هر ايستگاه كاري وجود دارد بجاي استفاده از RAID سختافزاري گرانقيمت ، بوجود آورد. ميتوان كارآيي حافظه مجازي را با استفاده از حافظه شبكه به عنوان يك فضاي ذخيرهسازي جبراني بجاي ديسك سخت ، بطور موثري بهبود بخشيد. سيستمهاي فايل موازي و حافظه شبكه به نوعي شكاف بزرگ كارآيي مابين پردازندهها و ديسكها را كوچكتر كرده و تقليل ميدهند.
متصل نمودن گرههاي موجود در يك كلاستر با استفاده از شبكه اترنت استاندارد و يا شبكههاي مخصوص با كارآيي بالا نظير Myrinet امري متداول ميباشد. اين چند شبكه ميتوانند جهت انتقال اطلاعات بين گرههاي موجود در كلاستر بصورت موازي مورد استفاده قرار گيرند. نرمافزار ارتباط چندمسيره در گرهاي فرستنده اطلاعات عمل مالتيپلكسينگ دادهها را انجام داده و سپس آن را از طريق شبكههاي چندگانه ارسال ميكند ، سپس در گره مقصد و يا گيرنده نيز عمل ديمالتيپلكسينگ دادهها را انجام ميدهد. به همين دليل تمامي شبكههاي موجود ميتوانند جهت انتقال اطلاعات سريع مابين گرههاي يك كلاستر مورد استفاده قرار گيرند.
#clustering #hp #hpc #linux #beowulf @unixmens
متصل نمودن گرههاي موجود در يك كلاستر با استفاده از شبكه اترنت استاندارد و يا شبكههاي مخصوص با كارآيي بالا نظير Myrinet امري متداول ميباشد. اين چند شبكه ميتوانند جهت انتقال اطلاعات بين گرههاي موجود در كلاستر بصورت موازي مورد استفاده قرار گيرند. نرمافزار ارتباط چندمسيره در گرهاي فرستنده اطلاعات عمل مالتيپلكسينگ دادهها را انجام داده و سپس آن را از طريق شبكههاي چندگانه ارسال ميكند ، سپس در گره مقصد و يا گيرنده نيز عمل ديمالتيپلكسينگ دادهها را انجام ميدهد. به همين دليل تمامي شبكههاي موجود ميتوانند جهت انتقال اطلاعات سريع مابين گرههاي يك كلاستر مورد استفاده قرار گيرند.
#clustering #hp #hpc #linux #beowulf @unixmens
در صورت علاقه مندی مطالعه شود
https://www.suse.com/documentation/sle_ha/book_sleha/data/sec_ha_clvm_config.html
#clvm #lvm #clustering @unixmens
https://www.suse.com/documentation/sle_ha/book_sleha/data/sec_ha_clvm_config.html
#clvm #lvm #clustering @unixmens
در مبحث storage و کلاسترینگ ما مباحث زیر را داریم :
کلاستر (Cluster) : در حقیقت مجموعه سرورهایی هستند که هر کدام میتواند نقش اصلی را بازی کند و این سرورها به گونه ای تنظیم و تعریف میشوند تا در مواقع اضطراری بتوانند نقش یکدیگر را ایفا کنند و در حقیقت در دسترس بودن منابع را به میزان حداکثر ممکن میرسانند. بدین گونه که در مواقع بروز هر گونه مشکلی در سرور اصلی (خاموش شدن و ...) بدون هیچ گونه packet lost از سرور اصلی، سرور بک آپ به سرعت جایگزین شود و در این میان هیچ گونه دیتایی از بین نرود، در حقیقت میتوان گفت در لحظه sync کامل بین سرورها صورت پذیرد.
نکته :ما مفاهیم کلاسترینگ را در ساختار های زیر داریم :
storage
HA
load balancing
hpc
—---------------------------------------------
GFS یا Global File System
این فایل سیستم به طور ویژه برای محیط کلاستری طراحی شده است. با استفاده از این فایل سیستم چندین سیستم قادر خواهند بود تا به طور همزمان به عمل read/write بر روی یک Storage مشترک داشته باشند.
CLVM یا Cluster Logical Volume Management
همان LVM معمولی است با این تفاوت که برای محیط کلاستر قابلیتهایی در دستورات اضافه شده است بدان صورت که اگر بر روی یکی از سیستمها LVMها بر روی استوریج مشترک تغییر کنند، اطلاعات در تمام نودها به هنگام خواهد شد.
DLM یا distributed Lock Management
که یک قفل توزیع شده در محیط کلاستر میباشد که بقیه اجزای کلاستر از آن برای مدیریت دسترسی ها به منابع مشترک استفاده میکنند. GFS از آن برای هماهنگی دسترسیها به FileSystem Metadata بر روی استوریج مشترک استفاده میکند و CLVM برای هماهنگی بهروزرسانیها اطلاعات LVM Volumes و volume groups بین نودهای کلاستر استفاده میکند.
CMAN یا Cluster MANagement
که وظیفه مدیریت کلاستر را بر عهده دارد. Cman یک مدیریت توزیع شده است و با مانیتور کردن تعداد نودهای فعال از مقدار quorum (حد نصاب) محافظت میکند. کنترل عضویت (join) با مانیتور کردن پیامهای نودهای کلاستربر عهده cman است. در صورت عضویت و یا خروج هر یک از نودها، cman موضوع را به دیگر سیستمها جهت انجام کارهای مربوطه اطلاع میدهد. به عنوان مثال وقتی که نود A به کلاستری که نودهای b و c د رآن هستند ملحق میشود و بخواد فایل سیستمی را مونت کند که توسط دوتای دیگر در حال استفاده میباشد نیاز به یک Journla و Lock دارد، همچنین چنانکه نود در محدوده مشخصی به پیامها پاسخ ندهد CMAN آنرا از کلاستر حذف میکند و بقیه اجزا ترک نود را اطلاع میدهد که هر قسمت وظیفه محوله را انجام خواهد داد. مثلا قسمت fence نود مورد نظر را دور خواهد انداخت. همچنین زیرسیستم GFS تمام دسترسیها به استوریج مشترک را متوقف میکند و بعد از اطمینان از انجام موفقیت آمیز عمل fence عمل recovery را انجام میدهد.
CCS یا Cluster Configuration System
مدیریت تنظیمات کلاستر را برعهده دارد. این سیستم کنترل میکند که فایل کانفیگ (/etc/cluster/cluster.conf/) در تمام نودها به روز باشد و در صورت به روزرسانی در تمامی نودها اعمال میکند. CMAN از طریق CCS به فایل تنظیمات دسترسی دارد.
drbd :
در واقع drbd مخفف : distrubution replicate block device می باشد . به block device هایی گفته میشود که به عنوان یک building block برای تشکیل high availability (HA) cluster طراحی شده اند. و برای انجام آن از Mirror کردن کل یک block device از طریق یک شبکه اختصاص یافته صورت میگیرد . (در پست های قبلی مطالبی در مورد آن نوشته ام )
ceph
—------
Fencing
عبارت است از قطع اتصال نود از استوریج مشترک در کلاستر.fence عمل IO را از استوریج مشترک قطع میکند که نتیجه ان اطمینان از صحت اطلاعات است.
مدیریت HA در کلاستر
در کلاستر یک سرویس در صورت fail شدن به نود دیگری منتقل میشود و یا اینکه در صورتیکه یکی از نودهای کلاستر fail شد تمامی سرویسهای موجود در آن به سیستم دیگری منتقل میشوند. این عمل توسط سرویس rgmanager در کلاستر انجام میشود. در redhat کلاستر، یک سرویس مجموعهای از چند resource است که به صورت جداگانه تعریف و در قالب سرویسها سازماندهی میشوند. مکان قرارگیری تمامی این موارد فایل تنظیمات کلاستر /etc/cluster.cluster.conf/ میباشد. جهت فراهم آوردن امکان انتقال سرویس در نودها در صورت fail شدن میبایست سرویس را به یک failover Domain منتسب کرد. یک Failover Domain زیرمجموعهای از نودهای کلاستر است که برای اجرای سرویس یا مجموعه مشخصی از سرویسها در نظر گرفته شود. در درون Failover Domain امکان اولویت دهی به نودها وجود دارد که مشخص کننده اولویت سیستمها در انتقال سرویسها میباشد. در مدیریت HA یک سرویس در آن واحد فقط میتواند بر روی یک نود در حال اجرا باشد.
#linux #clustering @unixmens
کلاستر (Cluster) : در حقیقت مجموعه سرورهایی هستند که هر کدام میتواند نقش اصلی را بازی کند و این سرورها به گونه ای تنظیم و تعریف میشوند تا در مواقع اضطراری بتوانند نقش یکدیگر را ایفا کنند و در حقیقت در دسترس بودن منابع را به میزان حداکثر ممکن میرسانند. بدین گونه که در مواقع بروز هر گونه مشکلی در سرور اصلی (خاموش شدن و ...) بدون هیچ گونه packet lost از سرور اصلی، سرور بک آپ به سرعت جایگزین شود و در این میان هیچ گونه دیتایی از بین نرود، در حقیقت میتوان گفت در لحظه sync کامل بین سرورها صورت پذیرد.
نکته :ما مفاهیم کلاسترینگ را در ساختار های زیر داریم :
storage
HA
load balancing
hpc
—---------------------------------------------
GFS یا Global File System
این فایل سیستم به طور ویژه برای محیط کلاستری طراحی شده است. با استفاده از این فایل سیستم چندین سیستم قادر خواهند بود تا به طور همزمان به عمل read/write بر روی یک Storage مشترک داشته باشند.
CLVM یا Cluster Logical Volume Management
همان LVM معمولی است با این تفاوت که برای محیط کلاستر قابلیتهایی در دستورات اضافه شده است بدان صورت که اگر بر روی یکی از سیستمها LVMها بر روی استوریج مشترک تغییر کنند، اطلاعات در تمام نودها به هنگام خواهد شد.
DLM یا distributed Lock Management
که یک قفل توزیع شده در محیط کلاستر میباشد که بقیه اجزای کلاستر از آن برای مدیریت دسترسی ها به منابع مشترک استفاده میکنند. GFS از آن برای هماهنگی دسترسیها به FileSystem Metadata بر روی استوریج مشترک استفاده میکند و CLVM برای هماهنگی بهروزرسانیها اطلاعات LVM Volumes و volume groups بین نودهای کلاستر استفاده میکند.
CMAN یا Cluster MANagement
که وظیفه مدیریت کلاستر را بر عهده دارد. Cman یک مدیریت توزیع شده است و با مانیتور کردن تعداد نودهای فعال از مقدار quorum (حد نصاب) محافظت میکند. کنترل عضویت (join) با مانیتور کردن پیامهای نودهای کلاستربر عهده cman است. در صورت عضویت و یا خروج هر یک از نودها، cman موضوع را به دیگر سیستمها جهت انجام کارهای مربوطه اطلاع میدهد. به عنوان مثال وقتی که نود A به کلاستری که نودهای b و c د رآن هستند ملحق میشود و بخواد فایل سیستمی را مونت کند که توسط دوتای دیگر در حال استفاده میباشد نیاز به یک Journla و Lock دارد، همچنین چنانکه نود در محدوده مشخصی به پیامها پاسخ ندهد CMAN آنرا از کلاستر حذف میکند و بقیه اجزا ترک نود را اطلاع میدهد که هر قسمت وظیفه محوله را انجام خواهد داد. مثلا قسمت fence نود مورد نظر را دور خواهد انداخت. همچنین زیرسیستم GFS تمام دسترسیها به استوریج مشترک را متوقف میکند و بعد از اطمینان از انجام موفقیت آمیز عمل fence عمل recovery را انجام میدهد.
CCS یا Cluster Configuration System
مدیریت تنظیمات کلاستر را برعهده دارد. این سیستم کنترل میکند که فایل کانفیگ (/etc/cluster/cluster.conf/) در تمام نودها به روز باشد و در صورت به روزرسانی در تمامی نودها اعمال میکند. CMAN از طریق CCS به فایل تنظیمات دسترسی دارد.
drbd :
در واقع drbd مخفف : distrubution replicate block device می باشد . به block device هایی گفته میشود که به عنوان یک building block برای تشکیل high availability (HA) cluster طراحی شده اند. و برای انجام آن از Mirror کردن کل یک block device از طریق یک شبکه اختصاص یافته صورت میگیرد . (در پست های قبلی مطالبی در مورد آن نوشته ام )
ceph
—------
Fencing
عبارت است از قطع اتصال نود از استوریج مشترک در کلاستر.fence عمل IO را از استوریج مشترک قطع میکند که نتیجه ان اطمینان از صحت اطلاعات است.
مدیریت HA در کلاستر
در کلاستر یک سرویس در صورت fail شدن به نود دیگری منتقل میشود و یا اینکه در صورتیکه یکی از نودهای کلاستر fail شد تمامی سرویسهای موجود در آن به سیستم دیگری منتقل میشوند. این عمل توسط سرویس rgmanager در کلاستر انجام میشود. در redhat کلاستر، یک سرویس مجموعهای از چند resource است که به صورت جداگانه تعریف و در قالب سرویسها سازماندهی میشوند. مکان قرارگیری تمامی این موارد فایل تنظیمات کلاستر /etc/cluster.cluster.conf/ میباشد. جهت فراهم آوردن امکان انتقال سرویس در نودها در صورت fail شدن میبایست سرویس را به یک failover Domain منتسب کرد. یک Failover Domain زیرمجموعهای از نودهای کلاستر است که برای اجرای سرویس یا مجموعه مشخصی از سرویسها در نظر گرفته شود. در درون Failover Domain امکان اولویت دهی به نودها وجود دارد که مشخص کننده اولویت سیستمها در انتقال سرویسها میباشد. در مدیریت HA یک سرویس در آن واحد فقط میتواند بر روی یک نود در حال اجرا باشد.
#linux #clustering @unixmens
Forwarded from Academy and Foundation unixmens | Your skills, Your future (yashar esmaildokht 🐧)
MySQL Cluster Quick Start Guide
https://www.dropbox.com/s/l4bom2gesiws9lu/mysql_wp_cluster_quickstart.pdf?dl=0
#mysql #linux #clustering @unixmens
https://www.dropbox.com/s/l4bom2gesiws9lu/mysql_wp_cluster_quickstart.pdf?dl=0
#mysql #linux #clustering @unixmens
Dropbox
mysql_wp_cluster_quickstart.pdf
Shared with Dropbox
محتوای دوره #redhat #clustering
در مورد Zen Discovery باید گفت که یک ماژول هماهنگسازی کلاستر (Cluster Coordination Module) است که سه وظیفه اصلی دارد:
کشف نودها (Node Discovery)
پیدا کردن سایر نودها و ساختن یک View کامل از کلاستر.
انتخاب Master (Master Election)
تضمین اینکه در هر لحظه فقط یک Master فعال وجود دارد.
انتشار وضعیت کلاستر (Cluster State Publishing)
همگامسازی وضعیت بین همه نودها.
ا Zen چیست؟
در Elasticsearch، Zen Discovery مکانیزم اصلی برای:
پیدا کردن نودها (Node Discovery)
هماهنگی بین آنها
انتخاب Master Node
حفظ سازگاری کلاستر
در نسخههای قدیمی (تا ۶.x) این مکانیزم Zen1 نام داشت. از Elasticsearch 7.x به بعد، Zen2 معرفی شد.
2. چرا Zen2 ایجاد شد؟
مشکل Zen1:
فرآیند انتخاب Master طولانی و پرخطا بود.
در شرایطی که بخشی از کلاستر قطع میشد، Split-Brain (دو Master همزمان) رخ میداد.
مدیریت Quorum (اکثریت نودها) سخت و مستعد مشکل بود.
بهبودهای Zen2:
پروتکل هماهنگسازی جدید برای انتخاب سریعتر و امنتر Master.
جلوگیری قطعی از Split-Brain با استفاده از Voting Configuration.
ا Bootstrap Process شفاف و امن برای شروع کلاستر.
3. معماری Zen2
ا Zen2 در سه بخش اصلی کار میکند:
Discovery
پیدا کردن نودها با مکانیزمهایی مثل unicast, cloud, یا file-based.
همه نودها یکدیگر را میشناسند و وضعیت را بهروز میکنند.
Master Election
ا استفاده از Voting Configuration (مجموعه نودهایی که حق رأی دارند).
ا برای انتخاب Master نیاز به Quorum (اکثریت) است.
مثلا اگر ۳ نود Master-eligible داشته باشیم → حداقل ۲ نود باید توافق کنند.
Cluster State Publishing
ا Master انتخابشده تغییرات Cluster State را به همه نودها ارسال میکند.
ا State شامل اطلاعات شاردها، ایندکسها، تنظیمات و وضعیت نودهاست.
مزایای Zen2
ایمنی در برابر Split-Brain
چون هیچ Master جدیدی بدون Quorum شکل نمیگیرد.
سرعت بالاتر انتخاب Master
حتی در شرایط قطعی شبکه.
Bootstrap امن
باید لیستی از نودهای Master-eligible اولیه مشخص شود تا کلاستر بهدرستی شروع کند:
cluster.initial_master_nodes:
- node1
- node2
- node3
ا Voting Configuration خودکار
وقتی نود اضافه یا حذف میشود، سیستم Voting بهروزرسانی میشود.
ا Zen2 در OpenSearch
ا چون OpenSearch از Elasticsearch 7.10 فورک شده، Zen2 همان ساختار را حفظ کرده.
ا در نسخههای جدید OpenSearch، Zen2 با بهبودهای جزئی و ثبات بیشتر نگهداری میشود، ولی اساس کار یکسان است.
نکته مهم طراحی
همیشه تعداد نودهای Master-eligible را فرد (Odd Number) انتخاب کنید تا Quorum بهینه باشد.
برای تحمل خرابی، حداقل ۳ نود Master-eligible نیاز دارید.
در محیطهای Multi-DC باید مراقب Latency و Quorum باشید.
نسخههای Zen
ا Zen1 (تا ES 6.x): مکانیزم قدیمی با مشکلات Split-brain و انتخاب Master کند.
ا Zen2 (از ES 7.x و OpenSearch): بازطراحی کامل برای سرعت، پایداری، و جلوگیری کامل از Split-brain.
معماری Zen Discovery (Zen2)
مراحل بوتاسترپ (Bootstrap Process)
وقتی کلاستر برای اولین بار راهاندازی میشود:
باید مشخص کنید کدام نودها Master-eligible هستند:
cluster.initial_master_nodes:
- node1
- node2
- node3
این لیست فقط اولین بار استفاده میشود تا Voting Configuration اولیه ساخته شود.
3.2. Node Discovery
Zen از Transport Layer (TCP) استفاده میکند تا نودها را پیدا کند.
متدهای رایج:
unicast → با لیست IP/hostname مشخص
Cloud plugins (AWS, Azure, GCP)
File-based seed hosts
پارامتر اصلی:
discovery.seed_hosts:
- node1:9300
- node2:9300
Master Election
الگوریتم انتخاب Master در Zen2 بر اساس Voting Quorum است:
فقط نودهای Master-eligible حق رأی دارند.
یک Master جدید فقط وقتی انتخاب میشود که اکثریت (Quorum) در دسترس باشد.
جلوگیری از Split-brain:
اگر Quorum برقرار نباشد، هیچ Master جدیدی انتخاب نمیشود.
پارامترهای مهم:
discovery.type: zen
node.master: true
node.data: false
3.4. Cluster State Publishing
وقتی Master انتخاب شد:
تغییرات (مثل اضافه شدن ایندکس یا شارد) در Cluster State ثبت میشود.
Cluster State به صورت atomic و versioned به همه نودها ارسال میشود.
هر نود فقط آخرین Cluster State معتبر را نگه میدارد.
#elasticsearch #log #linux #zen #clustering #elk
@unixmens
کشف نودها (Node Discovery)
پیدا کردن سایر نودها و ساختن یک View کامل از کلاستر.
انتخاب Master (Master Election)
تضمین اینکه در هر لحظه فقط یک Master فعال وجود دارد.
انتشار وضعیت کلاستر (Cluster State Publishing)
همگامسازی وضعیت بین همه نودها.
ا Zen چیست؟
در Elasticsearch، Zen Discovery مکانیزم اصلی برای:
پیدا کردن نودها (Node Discovery)
هماهنگی بین آنها
انتخاب Master Node
حفظ سازگاری کلاستر
در نسخههای قدیمی (تا ۶.x) این مکانیزم Zen1 نام داشت. از Elasticsearch 7.x به بعد، Zen2 معرفی شد.
2. چرا Zen2 ایجاد شد؟
مشکل Zen1:
فرآیند انتخاب Master طولانی و پرخطا بود.
در شرایطی که بخشی از کلاستر قطع میشد، Split-Brain (دو Master همزمان) رخ میداد.
مدیریت Quorum (اکثریت نودها) سخت و مستعد مشکل بود.
بهبودهای Zen2:
پروتکل هماهنگسازی جدید برای انتخاب سریعتر و امنتر Master.
جلوگیری قطعی از Split-Brain با استفاده از Voting Configuration.
ا Bootstrap Process شفاف و امن برای شروع کلاستر.
3. معماری Zen2
ا Zen2 در سه بخش اصلی کار میکند:
Discovery
پیدا کردن نودها با مکانیزمهایی مثل unicast, cloud, یا file-based.
همه نودها یکدیگر را میشناسند و وضعیت را بهروز میکنند.
Master Election
ا استفاده از Voting Configuration (مجموعه نودهایی که حق رأی دارند).
ا برای انتخاب Master نیاز به Quorum (اکثریت) است.
مثلا اگر ۳ نود Master-eligible داشته باشیم → حداقل ۲ نود باید توافق کنند.
Cluster State Publishing
ا Master انتخابشده تغییرات Cluster State را به همه نودها ارسال میکند.
ا State شامل اطلاعات شاردها، ایندکسها، تنظیمات و وضعیت نودهاست.
مزایای Zen2
ایمنی در برابر Split-Brain
چون هیچ Master جدیدی بدون Quorum شکل نمیگیرد.
سرعت بالاتر انتخاب Master
حتی در شرایط قطعی شبکه.
Bootstrap امن
باید لیستی از نودهای Master-eligible اولیه مشخص شود تا کلاستر بهدرستی شروع کند:
cluster.initial_master_nodes:
- node1
- node2
- node3
ا Voting Configuration خودکار
وقتی نود اضافه یا حذف میشود، سیستم Voting بهروزرسانی میشود.
ا Zen2 در OpenSearch
ا چون OpenSearch از Elasticsearch 7.10 فورک شده، Zen2 همان ساختار را حفظ کرده.
ا در نسخههای جدید OpenSearch، Zen2 با بهبودهای جزئی و ثبات بیشتر نگهداری میشود، ولی اساس کار یکسان است.
نکته مهم طراحی
همیشه تعداد نودهای Master-eligible را فرد (Odd Number) انتخاب کنید تا Quorum بهینه باشد.
برای تحمل خرابی، حداقل ۳ نود Master-eligible نیاز دارید.
در محیطهای Multi-DC باید مراقب Latency و Quorum باشید.
نسخههای Zen
ا Zen1 (تا ES 6.x): مکانیزم قدیمی با مشکلات Split-brain و انتخاب Master کند.
ا Zen2 (از ES 7.x و OpenSearch): بازطراحی کامل برای سرعت، پایداری، و جلوگیری کامل از Split-brain.
معماری Zen Discovery (Zen2)
مراحل بوتاسترپ (Bootstrap Process)
وقتی کلاستر برای اولین بار راهاندازی میشود:
باید مشخص کنید کدام نودها Master-eligible هستند:
cluster.initial_master_nodes:
- node1
- node2
- node3
این لیست فقط اولین بار استفاده میشود تا Voting Configuration اولیه ساخته شود.
3.2. Node Discovery
Zen از Transport Layer (TCP) استفاده میکند تا نودها را پیدا کند.
متدهای رایج:
unicast → با لیست IP/hostname مشخص
Cloud plugins (AWS, Azure, GCP)
File-based seed hosts
پارامتر اصلی:
discovery.seed_hosts:
- node1:9300
- node2:9300
Master Election
الگوریتم انتخاب Master در Zen2 بر اساس Voting Quorum است:
فقط نودهای Master-eligible حق رأی دارند.
یک Master جدید فقط وقتی انتخاب میشود که اکثریت (Quorum) در دسترس باشد.
جلوگیری از Split-brain:
اگر Quorum برقرار نباشد، هیچ Master جدیدی انتخاب نمیشود.
پارامترهای مهم:
discovery.type: zen
node.master: true
node.data: false
3.4. Cluster State Publishing
وقتی Master انتخاب شد:
تغییرات (مثل اضافه شدن ایندکس یا شارد) در Cluster State ثبت میشود.
Cluster State به صورت atomic و versioned به همه نودها ارسال میشود.
هر نود فقط آخرین Cluster State معتبر را نگه میدارد.
#elasticsearch #log #linux #zen #clustering #elk
@unixmens
Academy and Foundation unixmens | Your skills, Your future
Photo
When we say Linux knowledge is very important, the reasons are both technical and strategic. This importance can be explained in a few layers:
The basic infrastructure of the IT and Cloud world :
More than 90% of large Internet services (from Google and Facebook to Amazon and Netflix) run on Linux.
The dominant operating system is in public schools such as AWS, GCP and Azure Linux.
Most important databases (MySQL, postgresql, mongodb, oracle DB works better on Linux)
Security and control :
Linux is the open source (Open Source); That is, it has transparency in the code and the security audit capability.
Low -level security tools and hardness (such as Selinux, Apparmor, iPTables, Nftables ,cgroup , namespace) are more powerful in Linux.
A specialist who knows Linux can take full control of the system, not just superficial use.
Devops and Automation :
Almost all Devops (ANSIBLE, TERRAFORM, KUBERNETES, DOCKER, JENKINS) tools are born on Linux and have the best performance on Linux.
Scripting with Bash and combining it with Linux tools (Sed, AWK, GREP, etc.) is the main part of automation.
Network infrastructure and internet :
Vital Internet services (DNS, Web, Mail, Proxy, VPN) have been developed on the Linux platform.
For a network or security specialist, Linux knowledge means direct management of infrastructure service
Stability and scalability :
Linux is a scalable and stable operating system; From mobile (Android) to supercamapiers.
The world's top 5 superpowers work on Linux.
Engineering :
Linux teaches the user how the system works, not just how to use it.
This makes the person upgraded from the "simple user" to the "engineer and architect"
🔑 :
Linux knowledge is important because the cornerstone of the modern digital world, security, and organizational transformation is based on Linux.
#linux #devops #k8s #clustering #kernel
The basic infrastructure of the IT and Cloud world :
More than 90% of large Internet services (from Google and Facebook to Amazon and Netflix) run on Linux.
The dominant operating system is in public schools such as AWS, GCP and Azure Linux.
Most important databases (MySQL, postgresql, mongodb, oracle DB works better on Linux)
Security and control :
Linux is the open source (Open Source); That is, it has transparency in the code and the security audit capability.
Low -level security tools and hardness (such as Selinux, Apparmor, iPTables, Nftables ,cgroup , namespace) are more powerful in Linux.
A specialist who knows Linux can take full control of the system, not just superficial use.
Devops and Automation :
Almost all Devops (ANSIBLE, TERRAFORM, KUBERNETES, DOCKER, JENKINS) tools are born on Linux and have the best performance on Linux.
Scripting with Bash and combining it with Linux tools (Sed, AWK, GREP, etc.) is the main part of automation.
Network infrastructure and internet :
Vital Internet services (DNS, Web, Mail, Proxy, VPN) have been developed on the Linux platform.
For a network or security specialist, Linux knowledge means direct management of infrastructure service
Stability and scalability :
Linux is a scalable and stable operating system; From mobile (Android) to supercamapiers.
The world's top 5 superpowers work on Linux.
Engineering :
Linux teaches the user how the system works, not just how to use it.
This makes the person upgraded from the "simple user" to the "engineer and architect"
🔑 :
Linux knowledge is important because the cornerstone of the modern digital world, security, and organizational transformation is based on Linux.
#linux #devops #k8s #clustering #kernel
👍2
Academy and Foundation unixmens | Your skills, Your future
https://www.linkedin.com/posts/yashar-esmaildokht_google-borg-kubernetes-ugcPost-7238515381378666496-IuDf?utm_source=share&utm_medium=member_android
ابزار Kubernetes و چالشهای آن: چرا ترکیب OpenShift/KubeSphere با KubeVirt بهترین گزینه برای سازمانهاست؟
مقدمه
بسیاری تصور میکنند گوگل از Kubernetes در زیرساخت داخلی خود استفاده میکند. در حالی که واقعیت این است که گوگل همچنان از سیستمهای پیشرفتهتر خود یعنی Borg و Omega بهره میبرد؛ زیرا این سیستمها برای مدیریت دیتاسنترهای عظیم گوگل طراحی شدهاند و در مقیاسهای فراتر از Kubernetes کارایی بالاتری دارند. Kubernetes در واقع بر اساس تجربیات همان پروژهها ساخته شد و به صورت متنباز ارائه گردید تا جامعه جهانی از آن استفاده کند.
اما نکته مهم اینجاست: Kubernetes در دنیای سازمانی امروز، با وجود قدرت و انعطافپذیری بالا، همچنان چالشبرانگیز است.
چرا Kubernetes چالشبرانگیز است؟
پیچیدگی عملیاتی: نصب، مدیریت و نگهداری Kubernetes حتی برای تیمهای حرفهای آسان نیست.
نیاز به مهارت بالا: تیمها باید دانش عمیق در مفاهیم Networking، Storage، Security و CI/CD داشته باشند.
چالشهای امنیتی: بهصورت پیشفرض امنیت Kubernetes در سطح Enterprise کافی نیست.
مدیریت چندخوشهای (Multi-Cluster): برای سازمانهای بزرگ به یک کابوس مدیریتی تبدیل میشود.
هزینه آموزش و یادگیری: ورود تیمهای جدید زمانبر و پرهزینه است
چرا گوگل هنوز Borg و Omega را ترجیح میدهد؟
مقیاسپذیری فراتر از Kubernetes: در دیتاسنترهای گوگل که میلیونها کانتینر اجرا میشود، Borg و Omega بهینهتر هستند.
ثبات و تجربه عملیاتی: گوگل بیش از یک دهه این سیستمها را بهبود داده و آنها را در بالاترین سطح تولیدی استفاده میکند.
کاستومایز اختصاصی: Borg و Omega کاملاً بر اساس نیازهای خاص گوگل طراحی شدهاند، در حالی که Kubernetes یک پلتفرم عمومی برای جامعه جهانی است.
راهحل سازمانها: OpenShift و KubeSphere
برای بیشتر سازمانها، استفاده مستقیم از Kubernetes بدون ابزارهای تکمیلی منجر به مشکلات جدی میشود. اینجا است که OpenShift و KubeSphere وارد میدان میشوند:
OpenShift (Red Hat):
امنیت سازمانی قوی (SELinux، RBAC پیشرفته).
تجربه توسعهدهنده کامل (داشبورد، CI/CD داخلی).
پشتیبانی رسمی و Enterprise از سوی Red Hat/IBM.
KubeSphere:
نصب ساده و رابط کاربری کاربرپسند.
مدیریت چند خوشهای (Multi-Cluster) با قابلیتهای گسترده.
ماژولهای آماده برای DevOps، نظارت، و Service Mesh.
انتخاب مناسب برای سازمانهایی که به سادگی و انعطاف نیاز دارند.
نقش KubeVirt: اتصال VMها و Containerها
یکی از مشکلات رایج سازمانها این است که هنوز بارهای کاری Legacy (روی VMها) دارند.
با KubeVirt:
میتوان ماشینهای مجازی و کانتینرها را در یک بستر مشترک مدیریت کرد.
مهاجرت تدریجی از VM به Container بدون نیاز به دو پلتفرم جداگانه امکانپذیر میشود.
هزینه زیرساخت کاهش پیدا میکند و تیمها فقط یک ابزار مدیریت نیاز دارند.
در حالی که گوگل همچنان برای دیتاسنترهای داخلی خود از Borg و Omega استفاده میکند، Kubernetes به عنوان استاندارد جهانی معرفی شده است. با این وجود، Kubernetes بهتنهایی برای سازمانها بسیار چالشبرانگیز است.
راهحل درست برای ورود به دنیای Cloud-Native در سطح سازمانی، استفاده از پلتفرمهای تکمیلی مثل OpenShift یا KubeSphere و ترکیب آنها با KubeVirt است. این ترکیب نهتنها مشکلات پیچیدگی و امنیت را کاهش میدهد، بلکه امکان همگرایی کامل میان بارهای کاری سنتی (VM) و مدرن (Container) را فراهم میکند.
#kubernetes #devops #clustering #k8s #linux #security #google #borg #omega
https://t.iss.one/unixmens
مقدمه
بسیاری تصور میکنند گوگل از Kubernetes در زیرساخت داخلی خود استفاده میکند. در حالی که واقعیت این است که گوگل همچنان از سیستمهای پیشرفتهتر خود یعنی Borg و Omega بهره میبرد؛ زیرا این سیستمها برای مدیریت دیتاسنترهای عظیم گوگل طراحی شدهاند و در مقیاسهای فراتر از Kubernetes کارایی بالاتری دارند. Kubernetes در واقع بر اساس تجربیات همان پروژهها ساخته شد و به صورت متنباز ارائه گردید تا جامعه جهانی از آن استفاده کند.
اما نکته مهم اینجاست: Kubernetes در دنیای سازمانی امروز، با وجود قدرت و انعطافپذیری بالا، همچنان چالشبرانگیز است.
چرا Kubernetes چالشبرانگیز است؟
پیچیدگی عملیاتی: نصب، مدیریت و نگهداری Kubernetes حتی برای تیمهای حرفهای آسان نیست.
نیاز به مهارت بالا: تیمها باید دانش عمیق در مفاهیم Networking، Storage، Security و CI/CD داشته باشند.
چالشهای امنیتی: بهصورت پیشفرض امنیت Kubernetes در سطح Enterprise کافی نیست.
مدیریت چندخوشهای (Multi-Cluster): برای سازمانهای بزرگ به یک کابوس مدیریتی تبدیل میشود.
هزینه آموزش و یادگیری: ورود تیمهای جدید زمانبر و پرهزینه است
چرا گوگل هنوز Borg و Omega را ترجیح میدهد؟
مقیاسپذیری فراتر از Kubernetes: در دیتاسنترهای گوگل که میلیونها کانتینر اجرا میشود، Borg و Omega بهینهتر هستند.
ثبات و تجربه عملیاتی: گوگل بیش از یک دهه این سیستمها را بهبود داده و آنها را در بالاترین سطح تولیدی استفاده میکند.
کاستومایز اختصاصی: Borg و Omega کاملاً بر اساس نیازهای خاص گوگل طراحی شدهاند، در حالی که Kubernetes یک پلتفرم عمومی برای جامعه جهانی است.
راهحل سازمانها: OpenShift و KubeSphere
برای بیشتر سازمانها، استفاده مستقیم از Kubernetes بدون ابزارهای تکمیلی منجر به مشکلات جدی میشود. اینجا است که OpenShift و KubeSphere وارد میدان میشوند:
OpenShift (Red Hat):
امنیت سازمانی قوی (SELinux، RBAC پیشرفته).
تجربه توسعهدهنده کامل (داشبورد، CI/CD داخلی).
پشتیبانی رسمی و Enterprise از سوی Red Hat/IBM.
KubeSphere:
نصب ساده و رابط کاربری کاربرپسند.
مدیریت چند خوشهای (Multi-Cluster) با قابلیتهای گسترده.
ماژولهای آماده برای DevOps، نظارت، و Service Mesh.
انتخاب مناسب برای سازمانهایی که به سادگی و انعطاف نیاز دارند.
نقش KubeVirt: اتصال VMها و Containerها
یکی از مشکلات رایج سازمانها این است که هنوز بارهای کاری Legacy (روی VMها) دارند.
با KubeVirt:
میتوان ماشینهای مجازی و کانتینرها را در یک بستر مشترک مدیریت کرد.
مهاجرت تدریجی از VM به Container بدون نیاز به دو پلتفرم جداگانه امکانپذیر میشود.
هزینه زیرساخت کاهش پیدا میکند و تیمها فقط یک ابزار مدیریت نیاز دارند.
در حالی که گوگل همچنان برای دیتاسنترهای داخلی خود از Borg و Omega استفاده میکند، Kubernetes به عنوان استاندارد جهانی معرفی شده است. با این وجود، Kubernetes بهتنهایی برای سازمانها بسیار چالشبرانگیز است.
راهحل درست برای ورود به دنیای Cloud-Native در سطح سازمانی، استفاده از پلتفرمهای تکمیلی مثل OpenShift یا KubeSphere و ترکیب آنها با KubeVirt است. این ترکیب نهتنها مشکلات پیچیدگی و امنیت را کاهش میدهد، بلکه امکان همگرایی کامل میان بارهای کاری سنتی (VM) و مدرن (Container) را فراهم میکند.
#kubernetes #devops #clustering #k8s #linux #security #google #borg #omega
https://t.iss.one/unixmens
Telegram
Academy and Foundation unixmens | Your skills, Your future
@unixmens_support
@yashar_esm
[email protected]
یک کانال علمی تکنولوژی
فلسفه متن باز-گنو/لینوکس-امنیت - اقتصاد
دیجیتال
Technology-driven -بیزینس های مبتنی بر تکنولوژی
Enterprise open source
ارایه دهنده راهکارهای ارتقای سازمانی - فردی - تیمی
@yashar_esm
[email protected]
یک کانال علمی تکنولوژی
فلسفه متن باز-گنو/لینوکس-امنیت - اقتصاد
دیجیتال
Technology-driven -بیزینس های مبتنی بر تکنولوژی
Enterprise open source
ارایه دهنده راهکارهای ارتقای سازمانی - فردی - تیمی
👍2