برپا سازی کلاسترهای OpenMosix
S h a b g a r d . O R G
.::Security Group::.

*Nix *Nix *Nix *Nix *Nix *Nix *Nix مبتدی مبتدی مبتدی

    Search for in  

  خانه

  *Nix

      مبتدی

      متوسط

      تخصصی

  Windows

      مبتدی

      متوسط

      تخصصی

  network

  Programming

      PHP

  Security

  Hacking

  Program

      MS-Word

      Graphic

  Cisco

  Hardware

*Nix > متوسط


برپا سازی کلاسترهای OpenMosix
Posted by on Dec 31, 2004, 16:45

برپا سازی کلاسترهای OpenMosix
جهت برپا سازی یک کلاستر، شما به حداقل دو دستگاه مبتنی بر لینوکس که به یک شبکه داخلی متصل بوده و قادر به کامپایل کردن و اجرای هسته‌های سری 2.4 باشند، نیاز دارید. همچنین شبکه شما باید دارای حداقل سرعت ۱۰۰ مگابیت باشد. این سرعت به شما سرعت بسیار خوبی را اعطا خواهد نمود. سرعت اترنت استاندارد یعنی ۱۰ مگابیت به شما سرعت چندان جالب توجهی نخواهد داد. البته در صورتی که شبکه شما از این نوع است و مایل هستید تا فقط OpenMosix را تجربه نمایید، پاسخ‌گو خواهد بود. استفاده از اترنت‌های گیگابیت مفید بوده ولی انتخابی است. البته ممکن است واقعا به آن نیاز نداشته باشید و اترنت ۱۰۰ مگابیت امور شما را به خوبی انجام دهد.
اتصال گره‌های کلاستر به یک سوئیچ پرسرعت سیستم‌های شما را قادر خواهد ساخت تا در حالت Full Duplex عمل نموده و پهنای باند شما دو برابر گردد. همچنین می‌توانید در یک کلاستر ۲ یا ۳ گره‌ای از سیم کشی مخصوص جهت اتصال مستقیم گره‌ها به هم استفاده نمایید.
داشتن فضای Swap کافی قویا توصیه می‌شود. به این صورت شما قادر خواهید بود تا گره‌ها را بصورت دینامیک از کلاستر خارج نمایید بدون اینکه با کمبود حافظه مواجه شوید. این موضوع نیز انتخابی بوده و ممکن است در شرایط خاصی که کلاستر تحت فشار کاری بالایی قرار دارد، به شما کمک کند.
در کنار مطالب بالا، باز هم اضافه می‌کنم که امکان ایجاد یک کلاستر مبتنی بر فقط دو دستگاه لینوکس و یک اترنت استاندارد نیز وجود دارد.
لازم نیست که تمام کامپیوترهایی که در یک کلاستر قرار می‌گیرند قوی باشند و یا مهم نیست که دارای سخت‌افزارهای متنوعی باشند. هر قدرت پردازشی می‌تواند به سرعت جمعی کمک کند!

شروع کار
فرایند برپاسازی کلاسترهای لینوکس بسیار ساده می‌باشد. ابتدا باید هسته‌هایی که OpenMosix روی آنها فعال شده‌اند را روی گره‌های کلاسترها نصب کرده و سپس ابزارهای کاربری را روی همه آنها نصب کرده و یک تنظیم کوچک در یک فایل پیکربندی انجام دهیم.
به عنوان نخستین مرحله از کار، باید ابزارهای نرم‌افزاری لازم را فراهم آورید. نخستین چیزی که به آن نیاز دارید، کد منبع هسته‌ای است که مایلید روی آن کار کنید. کد منبع هسته خود را می‌توانید از http://kernel.org دریافت نمایید. من برای اجرای پروژه، از هسته 2.4.23 استفاده کرده‌ام. در قدم بعدی باید وصله‌های هسته OpenMosix و سپس ابزارهای نرم‌افزاری OpenMosix را دریافت نمایید. برای دانلود وصله‌های هسته OpenMosix می‌توانید به سایت رسمی آن در آدرس http://openmosix.sf.net یا http://openmosix.org مراجعه کنید و یا از لینک‌های زیر برای هسته‌های مورد نظرتان استفاده کنید:

هسته 2.4.21:http://tab.tuxfamily.org/download/openmosix/releases/patch-2.4.21-om-20030825.bz2
هسته 2.4.22:http://tab.tuxfamily.org/download/openmosix/releases/patch-2.4.22-om-20031215.bz2
هسته 2.4.23:http://tab.tuxfamily.org/download/openmosix/stable/patch-2.4.23-om-20031215.bz2
هسته 2.6.0 (آزمایشی):http://tab.tuxfamily.org/download/openmosix/unstable/patch-2.6.0-om-0.20031202.1.bz2
ابزارهای نرم‌افزاری:http://umn.dl.sourceforge.net/sourceforge/openmosix/openmosix-tools-0.3.5.tar.bz2

فراموش نکنید که همیشه می‌توانید جدیدترین نسخه‌های وصله هسته و ابزارهای نرم‌افزاری OpenMosix را از سایت رسمی آن دریافت نمایید. پس از اتمام دریافت تمامی اقلام مورد نیاز (تنها کد منبع هسته دارای حجم زیادی است و بقیه ابزارها همگی بین ۲۰۰ تا ۳۰۰ کیلوبایت ظرفیت دارند!) باید تجهیز گره‌‌های کلاستر را شروع کنید. ابتدا لازم است در شبکه محلی خود کامپیوترهایی را که مایلید به عنوان گره‌های کلاستر استفاده کنید، تعیین نمایید. من در دفتر کار خود دو دستگاه را برای این منظور انتخاب کردم. (تصویر زیر)




همانطوری که قبلا اشاره کردم، لازم نیست که گره‌های کلاستر حتما قویترین ایستگاه‌های کاری روی شبکه باشند. دستگاه‌های انتخابی من دارای مشخصات زیر هستند:

Node No.1 : Debian (LAN SERVER)
CPU : P-III 800 MHz
RAM: 128 MB SD-RAM
NIC : SIS 100 Mbps
HDD: 2x40GB
Distro : Debian GNU/Linux 3.0 (woody)
Kernel: 2.4.23 (will be 2.4.23-om)

Node No.2 : Cyber (Workstation)
CPU : Celeron 333 MHz
RAM: 160 MB SD-RAM
NIC : D-Link 100 Mbps
HDD: 1x6.4GB
Distro : Libranet GNU/Linux 2.8.1
Kernel: 2.4.21 (will be 2.4.23-om)


پس از تعیین گره‌های کلاستر، شروع به نصب نرم‌افزارهای لازم برای این کار می‌کنیم. این عملیات را برای تمام گره‌ها باید تکرار کرد. برای شروع هسته OpenMosix را نصب می‌کنیم. ابتدا کد منبع هسته را در آدرس usr/src کپی کرده و آنرا با استفاده از دستورهای زیر باز می‌کنیم:

# cd /usr/src
# bzip2 -d linux-2.4.23.tar.bz2
# tar -xf linux-2.4.23.tar
# mv linux linux.old
# ln -s linux-2.4.23 linux

سپس وصله هسته را در کد منبع خود اعمال می‌کنیم:

# cd linux
# cat /home/alan/patch-2.4.23-om-20031215.bz2 | bzip2 -d | patch -p1 -l

کد منبع هسته در چند ثانیه وصله خواهد شد. اکنون می‌توانید طبق روال‌های گذشته هسته را پیکربندی و کامپایل نمایید. فقط اطمینان حاصل کنید که گزینه‌های زیر را در بخش OpenMosix پیکربندی هسته انتخاب کنید:

[*] openMOSIX process migration support
[*] Stricter security on openMOSIX ports
[*] openMOSIX File-System
[*] Poll/Select exceptions on pipes

برای شروع پیکربندی هسته، دستور زیر را وارد نمایید:

# cd /usr/src/linux
# make menuconfig

پس از اتمام پیکربندی و ذخیره تغییرات، برای کامپایل شدن هسته دستورات زیر را وارد نمایید:

# make-kpkg clean
# make-kpkg --revision=8:MOSIX01 kernel_image

و یا خیلی ساده‌تر:

# make-kpkg clean
# make-kpkg kernel_image

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

# dpkg -i kernel_image-2.4.23-om_MOSIX01_i386.deb

هنگام نصب این بسته، مدیر بوت Lilo به طور خودکار پیکربندی خواهد شد. در صورتی که از گراب استفاده می‌کنید، باید تغییرات را بطور دستی در فایل پیکربندی آن اعمال نمایید. برای این منظور باید فایل boot/grub/menu.lst را ویرایش کرده و خطوط زیر را اضافه نمایید. البته مقادیری مانند پارتیشن‌های قابل بوت و سایر آدرس‌ها ممکن است روی سیستم‌های شما متفاوت باشد که آنها را باید تغییر دهید:

title Libranet GNU/Linux, kernel 2.4.23 OpenMosix
root (hd0,1)
kernel /vmlinuz-2.4.23-om root=/dev/hda3 ro hdb=scsi
savedefault
boot

پس از اتمام نصب هسته‌ها، اکنون باید ابزارهای نرم‌افزاری OpenMosix را نصب نماییم. برای این منظور، فایلی را که دانلود کرده بودیم، باز کرده و کامپایل و نصب می‌کنیم:

# bzip2 -d openmosix-tools-0.3.5.tar.bz2
# tar -xf openmosix-tools-0.3.5.tar
# cd openmosix-tools-0.3.5
# ./configure --with-kerneldir=/usr/src/linux-2.4.23/
# make
# make install

کامپایل و نصب ابزارهای نرم‌افزاری مدت زیادی طول نمی‌کشد (۱-۲ دقیقه یا کمتر روی پردازنده‌های قویتر). پس از اتمام آن، باید در یکی از فایل‌های پیکربندی مربوطه لیست گره‌های کلاستر را تعریف کرده و سپس سرویس OpenMosix را طوری تعریف کنیم تا هر بار بصورت خودکار اجرا شود. به این منظور ابتدا دستور:

# vi /etc/openmosix.map

اجرا کرده و باید مشخصات گره‌ها را بصورت <شماره گره> <آدرس IP گره> <تعداد> وارد نماییم:

<Node No.> <Node IP Address> <Node QTY>
1 192.168.0.1 1
1 192.168.0.7 1

آرگومان شماره هنگامی مفید است که بخواهیم چند آدرس IP پشت سرهم را تعریف نماییم. مثلا در صورتی که ۱۰ گره داشته باشیم که آدرس آنها از ۲۵ شروع می‌شود، وارد خواهیم کرد:

1 192.168.0.25 10

و عملیات تایپ ما را بسیار کمتر خواهد کرد. این فایل پیکربندی روی تمام گره‌ها یکسان است. بنابراین می‌توانید آنر روی تمام گره‌ها کپی کنید. پس از انجام این کار به راه‌اندازی خودکار OpenMosix می‌پردازیم. ابتدا باید تعیین کنید که سطح اجرایی پیش‌گزیده هر یک از گره‌ها کدام است. به این منظور دستور زیر را وارد نمایید:

# runlevel
N 2

خوب سطح اجرایی پیش‌گزیده ما ۲ است (سیستم‌های مبتنی بر دبیان). بنابراین وارد دایرکتوری etc/rc2.d می‌شویم. در صورتی که سطح اجرایی شما متفاوت شد، این عملیات را با دایرکتوری مربوط به آن که می‌تواند rc3.d، rc4.d و... باشد انجام دهید:

# cd /etc/rc2.d
# ln -s ../init.d/openmosix S20openmosix

در اینجا نمی‌خواهم فلسفه دستورات بالا را توضیح دهم زیرا از مسیر اصلی دور خواهیم شد. پس از اتمام عملیات بالا و بوت سیستم‌ها، سیستم‌هایی داریم که مبتنی بر OpenMosix بوده و سرویس آن نیز بطور خودکار اجرا می‌شود. برای بکار افتادن کلاستر، گره‌ها را بوت می‌کنیم. گره شماره ۱ با موفقیت OpenMosix را اجرا می‌کند، ولی گره شماره ۲ با پیغام Invalid Map File قادر به اتصال به کلاستر نیست. پس مقداری جستجو و بررسی فایل پیکربندی، متوجه می‌شوم که در فایل etc/hosts یک ورودی به صورت زیر موجود است:

127.0.0.1 cyber

آنرا تبدیل به ورودی زیر می‌کنم:

192.168.0.7 cyber

مجددا سرویس OpenMosix را با دستور etc/init.d/openmosix restart اجرا می‌کنم. اکنون بدون مشکل اجرا می‌شود. برای حصول اطمینان از شناخته شدن تمام گره‌های کلاستر، با دستور زیر آنها را آزمایش می‌کنم:

# mosctl status 1
up.
# mosctl status 2
up.

بسیار عالی! هر دو گره کلاستر در حال اجرا هستند. اکنون کلاستر ما آماده است. با استفاده از دستور mosmon می‌توانید وضعیت کلی کلاستر را بررسی نمایید. اینکه کدام سیستم‌ها دارای چه مقدار بار فعال هستند و با گذاشتن بار روی یکی از آنها چه اتفاقی خواهد افتاد و ...






---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
Latest Headlines

 *Nix
 نصب سيستم عامل لينوكس وفارسي نويسي در محيط
kavoshgar.blogsky.com
 نصب سيستم عامل لینوکس مندریک 9.2 Mandrake linux
 راهنماي كاربران جديد لينوكس
 راهنماي كاربران جديد لينوكس
 تعاريف پايه و نكات كاربردي در لينوكس و يونيكس
 تنظیماتIP و شبکه در گنو / لینوکس
 تعیین سطوح دسترسی کاربران در لینوکس
 تاریخچه لینوکس
 ظاهر پوسته فرمان
 استفاده از پوسته فرمان در لینوکس
 Windows
 بازگرداندن ویندوز خراب شده به حالت قبل از بروز مشکل
 چگونه میتوان در ويندوز 98 و ME به درايو NTFS دسترسي داشت
 با افزودن پسورد دوم براي ورود به ویندوز XP امنیت خود را تا حد زیادی افزایش دهید
 برنامه های تحت داس و قدیمی را چگونه در XP اجرا کنیم
 نصب ويندوز 98 يا ME در محیط ويندوز NT يا XP فقط در یک دقیقه و نیم
 مقدمات و نيازهاي شما براي يادگيري TCP/IP
 امكانات شبكه اي ويندوز
 SSL چيست ؟
 آموزش HyperTerminal
 آموزش كرك فايل هاي SAM
 network
 كارت شبكه يا LAN Card
 شبكه سرى يا BNC
 شبكه Hub
 تنظيم و كنترل برنامه Network Neighborhood
 استفاده از شبكه و عمل Sharing
 نصب و تنظيم برنامه Wingate جهت اتصال شبكه به سرور و اينترنت
 AAA (Authentication, Authorization and Accounting)
 مقدمه ای بر شبکه خصوصی مجازی (VPN)
 ip و port
  RFC چيست؟
 Programming
 زبان برنامه نویسی D قسمت اول
 زبان برنامه سازی D تحت لینوکس قسمت دوم
 زبان برنامه‌نويسی D بخش سوم
 زبان برنامه نویسی D بخش چهارم
 زبان برنامه نویسی D بخش پنجم
 زبان برنامه‌نویسی D بخش ششم
 نرم‌افزار آزاد یا باز‌متن چیست؟
 مقدمه ای بر برنامه نويسی شی گراء در دات نت
 آموزش رتينا
 ايجاد فايل XML با استفاده از يک بانک اطلاعاتی
 Security
 بررسی نحوه عملکرد فایروال Firewallیا ديواره آتش
 مقايسه سرورهای لينوکس و ويندوز
 چه فایلهائی میتوانند برای کاربران مخاطره آمیز باشند !
 امنيت برنامه های وب ( بخش اول )
 امنيت برنامه های وب ( بخش دوم )
 امنيت برنامه های وب ( بخش سوم )
 امنيت برنامه های وب ( بخش چهارم )
 امنيت برنامه های وب ( بخش پنچم )
 امنيت نامه های الکترونيکی ( بخش اول )
 مفاهيم اوليه پروتکل TCP/IP ( بخش اول )
 Hacking
 چگونه هکر شویم؟ بخش اول
 چگونه هکر شویم؟ بخش دوم
 هنر هشتم : كرك كردن
 مقدمات قبل از شروع يادگيری هک
 Port Scanning
 Port Scanning
  کاربرد نرم‌افزار nmap
 IP Scanning
 پورت ۷۹
 پورت ۸۰ چيست؟
 Program
  آموزشهاي افكتهاي فتوشاپ
 Shocking Text
 مبانی آشنايی با Word
  آموزش ساخت متن یخی
 نصب تم در موزیلا فایرفاکس
 کلید های میانبر در فایرفاکس
 Cisco
 آشنايي با مدارک سيسکو
 Cisco Systems
 Hardware
 آشنايي با پورت USB
 نحوه انتخاب يك كارت صدا