Academy and Foundation unixmens | Your skills, Your future
2.28K subscribers
6.64K photos
1.36K videos
1.23K files
5.96K links
@unixmens_support
@yashar_esm
[email protected]
یک کانال علمی تکنولوژی
فلسفه متن باز-گنو/لینوکس-امنیت - اقتصاد
دیجیتال
Technology-driven -بیزینس های مبتنی بر تکنولوژی
Enterprise open source
ارایه دهنده راهکارهای ارتقای سازمانی - فردی - تیمی
Download Telegram
Asseco SEE Turkey is looking for a Senior Linux System Administrator who will oversee operations and administration of company servers including Linux servers, VMware virtualization environments, load balancers, NetApp storage servers and related infrastructures.

Main accountabilities:

To operate, and maintain production, test and development servers, virtualization environments and associated storage systems
Design and implement monitoring systems and procedures for 7/24 uptime requirements of extremely critical systems
Ensure security levels across all servers through configuration and regular patch management of both the operating system and application.
Analyze and optimize performance of systems, eliminate bottlenecks, plan for capacity upgrades
Perform data integrity checks and harden security of systems along with audits and procedures


Desired Skills and Experience
Education: Bachelor degree in Computer Science, Engineering.

Language: English - Upper Intermediate level allowing communication, understanding technical statements and documents associated with duties

Required Skills, Knowledge and Experience:

5 years of experience in:
Linux System Administration experience with RedHat, CentOS.
Bash Scripting / Programming ability to write automation scripts from scratch as well as read/update/modify existing scripts
NetApp storage platforms
VMware virtualization environments
Managing web application software, server scripting modules, and related infrastructure components (e.g., Apache, http, tomcat, SSL)
Planning and designing for changes under change management procedures, foreseeing risks and mitigating them


Competencies:

Strong drive to achieve the best results in line with internal or external standards of excellenc
Good planning and organizing abilities
Ability and willingness to work as a part of team
Openness to continuous acquisition of new skills and competencies, as well as to improve existing
محل کار : ترکیه
https://tr.indeed.com/viewjob?jk=cb9e0e3f83f598d3&q=linux+system+administrator&tk=1c08g1s7993p3b3n&from=web
#job #linux @unixmens #oversea
Media is too big
VIEW IN TELEGRAM
چالش های نظام آموزشی
سالها پیش این کتاب را نوشته بودم // تقدیم به عزیزان https://www.dropbox.com/s/ldpqg4a9ycyip8e/squid.pdf?dl=0 #rman #linux #cache #proxy @unixmens #yashar_esmaildokht
خوشه بندی
کلاسترینگ
در واقع Cluster به گروهی از چند سیستم کامپیوتری گفته می‌شود که با هم کار می‌کنند و از خیلی جهات می‌توان آن‌ها را یک سیستم واحد در نظر گرفت. اجزا یک کلاستر معمولا به وسـیله شبکه‌ محـلی به یکدیگر متصل می‌شوند. این کلاستر‌ها با هدف افزایش قدرت پردازش و یا امنیت فیزیکی اطلاعات و سرویسها تشکیل میشود و معمولاً از این نظر نسبت به یک سرور انفرادی مقرون به صرفه تر و مطمئن تر است. خدمات کلاسترینگ به 4 بخش Storage Cluster و High Availability و Load Balancing و High Performance Computing دسته بندی می‌شوند.
یک خوشه بندی Beowulf یک دسته از کامپیوتر ها است که در حالت عادی همگی یکسان هستند. این کامپیوترها به وسیله یک شبکه محلی کوچک شبکه شده اند و بر اساس زیرساخت نرم افزاری منبع باز(مانند لینوکس) و یا به وسیله کتابخانه ها و برنامه هایی که نصب شده اند اجازه می دهند پردازش ها میان آنها به اشتراک گذارده شود.نتیجه این کار برابر است با پردازش موازی خوشه ای با کارایی بالا به وسیله سخت افزار کامپیوترهای شخصی ارزان.

نام Beowulf در اصل اشاره میکند به یک کامپیوتر بخصوص که در سال 1994 بوسیله Tomas sterling و Donald becker در سازمان NASA ساخته شد. این نام برگرفته از نام یک شخصیت اصلی در یک شعر حماسی انگلیسی است.Beowulf که یک بخشنده تمام عیار بود به او لقب قهرمان را دادند.شرح او چنین بود که به اندازه 30 مرد سنگین و بازوان او بسیار قدرتمند بودند.

در سطح عادی هنگامی که دو یا بیشتر از دو کامپیوتر با یکدیگر برای حل یک مشکل همکاری میکنند آن را به مثابه یک خوشه در نظر می گیریم. خوشه ها معمولا برای دسترسی پذیری بالا (High Availability) ،قابلیت اطمینان بیشترGreater Reliability)) ، محاسبلت با کارایی بالا (High Performance Computing) و برای ارائه قدرت محاسباتی بیشتر استفاده می شوند. خوشه ها را به دو کلاس تقسیم میکنیم:

خوشه های کلاس 1 : خوشه ها در این کلاس به طور کامل با استفاده از کالاهای سخت افزاری و نرم افزاری استاندارد ساخته میشوند، مانندSCSI،اترنت،وIDE.
خوشه های کلاس 2 : خوشه ها در این کلاس از کالاهای سخت افزاری و نرم افزاری تخصصی برای دستیابی به کارایی بالاتر استفاده میکنند.و معمولا نسبت به خوشه های کلاس 1 گرانتر هستند.

به طور معمول از خوشه های سنتی برای برنامه های فنی مانند شبیه سازی و بیوتکنولوژی استفاده میشود و از پتروخوشه ها (petro-clusters)برای مدلسازی بازار مالی،داده کاوی،پردازش جریان و سرورهای اینترنتی بازی و صدا استفاده میشود.

برنامه هایBeowulfمعمولابااستفاده اززبانهایی مانند Cوفرترن نوشته می شوند. که در آنها از روش انتقال پیام برای رسیدن به پردازش موازی استفاده میشود.

یک قطعه نرم افزاری مخصوص که خوشه را به شکل Beowulf تعریف کند وجود ندارد. خوشه بندی Beowulf به صورت عادی اجرا می شود و در یک سیستم عامل نظیر UNIX مانند BSD،LINUX،SOLARIS و در حالت عادی بوسیله نرم افزارهای متن باز صورت می گیرد. برای پردازش های موازی از کتابخانه های شامل رابط های انتقال پیام (MPI) وماشین مجازی(PVM) که هردوی اینها به برنامه نویس این امکان را میدهند که وظایف را میان گروهی از کامپیوترهای شبکه شده تقسیم و نتایج را از میان آنها جمع آوری کند،استفاده می شود. برای مثال می توان نرم افزار های OPENMPI و MPICH نام برد که این نرم افزارها پیاده سازی هایی از MPIهستند و براحتی قابل دسترس هستند.

سیستم Beowulf معمولا شامل یک گره Server هستند.این گره سرویس دهنده وظایف کنترل تمامی خوشه و سرویس دهی فایل ها به گره های سرویس گیرنده را بر عهده دارد و همچنین خط فرمان خوشه و دروازه ورودی به جهان خارج از خوشه را در دست دارد.ماشین های Beowulf بزرگ ممکن است بیشتر از یک گره سرویس دهنده داشته باشد و شاید دیگر گره های سرویس دهنده به وظایف خاصی مانند پایانه های فرمان یا ایستگاه های گذارش گیری اختصاص داشته باشند.

در بیشتر موارد گره ها فقط انجام دهنده هستند یعنی به صورتی شکل دهی می شوند که فقط میتوانند کاری را که از آنها خواسته شده است را انجام دهند. یکی از تفاوت های اصلی میان خوشه بندی Beowulf و یک ایستگاه کاری خوشه بندی شده (Cluster of Workstations) این است که Beowulf رفتاری به مانند یک ماشین جدا دارد که تا اندازه ای سریعتر چنین ایستگاه کاری است.در بسیاری از موارد گره ها هیچگونه صفحه کلید یا مونیتوری ندارند و تنها به وسیله ورود به سیستم از راه دور قابل دسترسی هستند.
#clustering #hp #hpc #linux @unixmens
Open mosix

کلاسترها چه هستند؟
به طور عمومی هنگامی که صحبت از کلاسترها می شود، مقصود فناوری هایی است که از طریق آن کامپیوترهای مختلف بتوانند با هم و با اشتراک قدرت پردازش هم، بتوانند امور پردازشی را که به آنها محول شده است، انجام دهند. این امور پردازشی همه چیز می تواند باشد. از پردازش های سنگین علمی تا تبدیل فایل های موسیقی و یا رندر کردن جلوه های ویژه فیلم های سینمایی. برای مثال، تمامی جلوه های ویژه فیلم های ارباب حلقه ها توسط کلاسترهای لینوکس رندر و پردازش شده اند.
انواع مختلفی از فناوری های کلاستر سازی برای سیستم عامل لینوکس وجود دارند. یکی از شناخته شده ترین آنها کلاستر Beowulf است. این کلاستر حاوی چندین ماشین است که توسط یک شبکه محلی پرسرعت به هم متصل شده اند. برای استفاده از این سیستم های کلاستر، برنامه های کاربردی باید مجددا برای استفاده از آن با استفاده از کتابخانه های کلاستر سازی نوشته شوند. عمومی ترین کتابخانه های کلاستر سازی عبارتند از PVM و MPI. هر دوی این کتابخانه ها بسیار عالی کار می کنند. با استفاده این کتابخانه ها، برنامه نویسان قادر به نوشتن برنامه هایی هستند که از منابع روی کلاستر همانند منابع روی یک کامپیوتر، بهره گیری نمایند.برای بسیاری از برنامه های کاربردی، PVM و MPI امکان افزایش خطی قدرت پردازش کلاسترها را با توجه به تعداد ماشین های روی آن فراهم می نمایند.

در واقع PVM و MPIمورد استفاده همگان قرار نمیگیرد !
با اینکه کلاسترهای Beowulf بسیار قدرتمند هستند ، بزرگترین اشکال آنها نیاز به نرم افزارهای خاص می باشد که با استفاده از PVM و MPI نوشته شده باشند تا بتوانند از مزایای کلاستر استفاده کنند. البته این برای مراکز علمی و تحقیقاتی که برنامه های کاربردی خاص خود را از ابتدا می نویسند، اشکال مهمی نیست. آنها به راحتی قادرند تا از MPI و PVM استفاده کنند.
حقیقتا درصد افراد و موسساتی که برنامه های کاربردی خود را از ابتدا می نویسند بسیار پایین است. برای کسانی که مایل هستند تا یک کلاستر بنا کرده و از مزایای آن در اجرای برنامه های کاربردی عادی استفاده کنند، این یک مسئله بزرگ است! برنامه های کاربردی این دسته از موسسات بدون استفاده از کتابخانه های کلاستر سازی نوشته شده اند، بنابراین ، این گونه موسسات قادر نیستند تا از مزایای کلاسترها بهره گیری نمایند.
آیا جالب نیست که یک فناوری وجود داشته باشد تا بتوانید با استفاده از آن از مزایای کلاسترهای لینوکس استفاده کنید، بدون آنکه نیاز داشته باشید تا برنامه های کاربردی خود را از ابتدا نوشته و یا حتی آنها را مجددا کامپایل نمایید؟ خوشبختانه چنین فناوری وجود دارد و نام آن OpenMosix است!

ورود به OpenMosix
در حقیقت OpenMosix قابلیت های کلاستر سازی را به هسته لینوکس اضافه می کند، بنابراین هر پروسه استاندارد لینوکس قادر خواهد بود تا از مزایای منابع کلاستر استفاده نماید. با استفاده از تکنیک های موازنه بار تطبیقی (Adaptive Load Balancing) پردازش های در حال اجرا بر روی یک گره (node) از کلاستر، قادرند تا بطور نامحسوس به یک گره دیگر از کلاستر مهاجرت کرده و بتوانند سریعتر اجرا شوند. بدلیل اینکه OpenMosix بطور کاملا نامحسوس (Transparent) عمل می کند، پردازش هایی که از یک گره به گره دیگر مهاجرت می کنند، حتی نمی دانند (لازم هم نیست بدانند) که در یک ماشین دیگر در حال اجرا هستند!
نامحسوس بودن OpenMosix به این معنی است که برای استفاده از مزایای موازنه بار تطبیقی آن، نیازی به برنامه نویسی خاصی نیست. در حقیقت، یک نصب پیش گزیده OpenMosix به طور خودکار پردازش ها را به بهترین گره منتقل خواهد کرد. این قابلیت OpenMosix را تبدیل به یک راه حل کلاستر سازی می کند که می تواند برای بخش عظیمی از برنامه ها مفید باشد.
#clustering #hp #hpc #linux #openmosix @unixmens
در واقع OpenMosix دقیقا چکاری انجام میدهد؟
بزرگترین کاری که OpenMosix انجام می دهد، تبدیل دسته ای از ماشین های لینوکس به یک سیستم بزرگ مجازی چند پردازنده ای متقارن (SMP=Symmetric MultiProcessor) است. هرچند نحوه عملکرد آن با سیستم های SMP واقعی مقداری تفاوت دارد. نخست اینکه سیستم های واقعی SMP که مبتنی بر ۲ یا چند پردازنده هستند، می توانند اطلاعات را با سرعت بسیار بالا تبادل نمایند، در صورتی که در OpenMosix سرعت ارتباط بین گره های کلاستر، محدود به سرعت شبکه محلی است که گره ها در آن قرار دارند. استفاده از ارتباطات اترنت گیگابیت و یا سایر انواع پر سرعت اترنت باعث خواهد شد تا تبادل داده ها با سرعت بالاتری صورت گرفته و کارایی کلاستر بالاتر باشد.
البته OpenMosix دارای مزایایی نسبت به سیستم های چند پردازنده ای سنتی داراست. با استفاده از OpenMosix شما قادر به ایجاد کلاسترهایی حاوی ده ها و حتی صدها کامپیوتر با سخت افزار ارزان هستید در حالی که سیستم های SMP که حاوی تعداد زیادی پردازنده باشند، می توانند بسیار گرانقیمت باشند. برای بسیاری از برنامه های کاربردی، OpenMosix نسبت به سیستم های SMP یا Mainframe، حرف بیشتری برای گفتن دارد. البته دلیلی وجود ندارد که شما نتوانید OpenMosix را بر روی سیستم های قدرتمند چند پردازنده ای اجرا نمایید. حتی این امکان وجود دارد تا OpenMosix را به همراه برنامه های کاربردی که با MPI یا PVM توسعه یافته اند، اجرا نمایید تا سرعت کلاستر خود را بهینه نمایید.
همانند سیستم های SMP سنتی، OpenMosix قادر نیست تا یک پروسه را روی چند پردازنده فیزیکی اجرا نماید. واضح تر اینکه نباید انتظار داشته باشید تا اجرای برنامه ای مانند مرورگر موزیلا روی یک کلاستر سریعتر از یک سیستم تک پردازنده ای باشد، مگر اینکه اجرا پروسه آنرا به یک گره سریعتر روی کلاستر منتقل نمایید. بعلاوه در حال حاضر OpenMosix امکان جداسازی رشته های متعدد به هم پیوسته را از یکدیگر فراهم نمی کند.
وOpenMosix قادر است تا پروسه های استاندارد لینوکس را بین گره های کلاستر بدون مشکل مهاجرت دهد. در صورتی که یک برنامه کاربردی تعداد زیادی زیر پروسه داشته باشد، آنگاه OpenMosix قادر است تا هر یک از آنها را به یک گره مناسب در کلاستر منتقل کند. شما می توانید از این قابلیت حتی در برنامه های کاربردی که دارای زیر پروسه نیستند نیز استفاده کنید. برای مثال، در صورتی که نیاز دارید تا تعدادی فایل موسیقی را از فرمت wav به mp3 تبدیل نمایید، تبدیل هر فایل یک پروسه خواهد بود. شما می توانید تمام این پروسه ها را یکجا اجرا نمایید. در آنصورت عمل پردازش بین کلاستر پخش خواهد شد (بجای اینکه عملیات تبدیل فایل ها را یک به یک انجام دهید). در صورتی که شما ۱۲ فایل موسیقی و ۱۲ گره همسان داشته باشید، عملیات تبدیل ۱۲ بار سریعتر انجام خواهد شد.
يMosix در برابر OpenMosix
پروژه OpenMosix جدیدترین شعبه پروژه Mosix می باشد که یکی از اهداف آن فراهم کردن کلاستر سازی نامحسوس روی لینوکس است. پس چرا ما از OpenMosix استفاده کنیم؟ دلایل خوبی برای این امر وجود دارد. در اواخر سال ۲۰۰۱ رهبری پروژه Mosix تصمیم به انتشار نسخه های جدیدی از Mosix تحت مجوزهای غیر GPL گرفت (کدهایی که قبلا GPL بودند). بنابراین نسخه های جدید Mosix دیگر نرم افزار آزاد نبودند و حقوق کاربران نیز در آنها نامشخص بود و هیچ مانعی برای نویسنده Mosix وجود نداشت تا از کاربران درخواست پرداخت وجه نماید.
این تغییر مجوز باعث ایجاد نگرانی هایی در میان کاربران Mosix شد و برداشته شدن کدهای منبع و حذف لیست های پستی Mosix بدون توضیح موجه، این نگرانی را تشدید نمود. خوشبختانه این کاربران تنها کسانی نبودند که در باره این تغییرات جدید نگران بودند. موشه بار (Moshe Bar) یکی از مدیران پروژه Mosix با این تغییر مجوز از GPL موافق نبود. بنابراین وی پروژه OpenMosix را شروع کرد تا این اطمبنان حاصل شود که ارائه نسخه آزاد و رایگان Mosix به عموم مردم ادامه پیدا خواهد کرد. سایت رسمی پروژه OpenMosix در آدرس https://openmosix.sf.net/ یا https://openmosix.org/ قرار دارد.
پس از آغاز این پروژه، تعداد زیادی از کاربران Mosix به OpenMosix روی آوردند. سیاست توسعه باز موشه باعث شد تا توسعه OpenMosix سرعت بیشتری بگیرد. در حال حاصر ۱۴ نفر بطور فعال روی پروژه OpenMosix کار می کنند در حالی که تعداد افراد پروژه Mosix تنها ۴ نفر است. در حال حاضر تعداد زیادی رفع اشکال، بهینه سازی سرعت و بهینه سازی در کدهای OpenMosix صورت گرفته است و تعدادی قابلیت جدید و بهینه سازی مجدد در سرعت نیز بزودی ارائه خواهند شد. در حقیت جدا شدن پروژه OpenMosix از Mosix باعث ارائه راه حل های بهتری برای کلاستر سازی تحت سیستم عامل لینوکس فراهم نموده است.
#clustering #hp #hpc #linux #openmosix @unixmens
جهت برپا سازی یک کلاستر، شما به حداقل دو دستگاه مبتنی بر لینوکس که به یک شبکه داخلی متصل بوده و قادر به کامپایل کردن و اجرای هسته های سری 2.4 باشند، نیاز دارید. همچنین شبکه شما باید دارای حداقل سرعت ۱۰۰ مگابیت باشد. این سرعت به شما سرعت بسیار خوبی را اعطا خواهد نمود. سرعت اترنت استاندارد یعنی ۱۰ مگابیت به شما سرعت چندان جالب توجهی نخواهد داد. البته در صورتی که شبکه شما از این نوع است و مایل هستید تا فقط OpenMosix را تجربه نمایید، پاسخ گو خواهد بود. استفاده از اترنت های گیگابیت مفید بوده ولی انتخابی است. البته ممکن است واقعا به آن نیاز نداشته باشید و اترنت ۱۰۰ مگابیت امور شما را به خوبی انجام دهد.
اتصال گره های کلاستر به یک سوئیچ پرسرعت سیستم های شما را قادر خواهد ساخت تا در حالت Full Duplex عمل نموده و پهنای باند شما دو برابر گردد. همچنین می توانید در یک کلاستر ۲ یا ۳ گره ای از سیم کشی مخصوص جهت اتصال مستقیم گره ها به هم استفاده نمایید.
داشتن فضای Swap کافی قویا توصیه می شود. به این صورت شما قادر خواهید بود تا گره ها را بصورت دینامیک از کلاستر خارج نمایید بدون اینکه با کمبود حافظه مواجه شوید. این موضوع نیز انتخابی بوده و ممکن است در شرایط خاصی که کلاستر تحت فشار کاری بالایی قرار دارد، به شما کمک کند.
در کنار مطالب بالا، باز هم اضافه می کنم که امکان ایجاد یک کلاستر مبتنی بر فقط دو دستگاه لینوکس و یک اترنت استاندارد نیز وجود دارد.
لازم نیست که تمام کامپیوترهایی که در یک کلاستر قرار می گیرند قوی باشند و یا مهم نیست که دارای سخت افزارهای متنوعی باشند. هر قدرت پردازشی می تواند به سرعت جمعی کمک کند!
#clustering #hp #hpc #linux #openmosix @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
دليل اصلي ايجاد و استفاده كامپيوترهاي موازي غلبه بر تنگناي سرعت كم پردازشگر واحد با استفاده از موازي‌سازي مي‌باشد. علاوه بر اين ، نسبت بها / عملكرد يك كامپيوتر موازي كوچك بر مبناي كلاستر در مقايسه با يك ميني كامپيوتر ، بسيار كوچكتر و در نتيجه از بهاي مناسب‌تري برخوردار خواهد بود. خلاصه اينكه ، توسعه و توليد سيستم‌هايي كه سرعت متوسطي داشته و از معماري‌هاي موازي استفاده مي‌كنند بسيار ارزانتر از ايجاد عملكرد معادل در يك سيستم ترتيبي مي‌باشد.
در بخش‌هاي باقيمانده ، گزينه‌هاي معماري براي ساختن كامپيوترهاي موازي ، محرك‌هاي تغيير در جهت محاسبه موازي كم‌هزينه ، مدل كلي يك كامپيوتر كلاستر شده ، اجزاي بكار گرفته شده در ساخت كلاستر، ميان‌افزار كلاستر ، مديريت و برنامه‌ريزي منابع ، ابزارها و محيط‌هاي برنامه‌نويسي و سيستم‌هاي نماينده كلاستر مورد بحث قرار خواهند گرفت. در نهايت تكنولوژي‌هايي كه در آينده در رابطه با كلاستر وجود خواهند داشت نيز توضيح داده مي‌شوند.

2 - معماري‌هاي مقياس‌پذير كامپيوتر موازي
در طول دهه‌هاي گذشته ، سيستم‌هاي كامپيوتري بسيار متفاوتي كه از عملكرد محاسباتي بالايي برخوردار بوده‌اند ، پديدار گشته‌اند. طبقه‌بندي آنها بر مبناي چگونگي پردازنده‌ها ، حافظه و اتصالات دروني بوده است. رايج‌ترين سيستم‌ها عبارتند از :
پردازنده‌هاي موازي گسترده ( MPP )
چندپردازنده‌هاي متقارن ( SMP )
دسترسي به حافظه غير همشكل و يكسان بودن كاشه ( CC-NUMA )
سيستم‌هاي توزيعي
كلاسترها ( Clusters )

جدول شماره 1 مقايسه ويژگي‌هاي معماري و عملياتي ماشين‌هاي بالا را نشان مي‌دهد.
در واقع MPP معمولاً يك سيستم پردازش موازي بزرگ است كه در معماري آن منبع مشترك وجود ندارد. اين سيستم شامل چند صد واحد پردازش ( گره ) مي‌باشد كه از طريق يك شبكه يا سوييچ ارتباطي با سرعت بالا به يكديگر متصل شده‌اند. هر گره ( Node ) مي‌تواند تنوعي از اجزاء سخت‌افزاري داشته باشد ، اما عموماً شامل يك يا چند پردازنده و يك حافظه اصلي است. بعلاوه ، گره‌هاي ويژه مي‌توانند وسايل جانبي نظير ديسك‌ها و يا سيستم‌هاي پشتيبان داشته باشند. هر گره يك نسخه جداگانه از سيستم‌عامل را اجرا مي‌كند.
#clustering #hp #hpc #linux #beowulf @unixmens
جدول شماره 1 : خصوصيات اصلي كامپيوترهاي موازي مقياس‌پذير
امروزه سيستم‌هاي SMP داراي 2 الي 64 پردازنده بوده و داراي معماري كاملاً اشتراكي مي‌باشند. در اين سيستم‌ها كليه پردازنده‌ها از تمامي منابع موجود ( bus ، حافظه ، سيستم ورودي / خروجي ) به صورت اشتراكي استفاده مي‌كنند. يك نسخه واحد از سيستم‌عامل بر روي اين سيستم‌ها اجرا مي‌شود.
در واقع CC-NUMA يك سيستم چندپردازنده‌اي مقياس‌پذير مي‌باشد كه داراي معماري دسترسي به حافظه غيرهمشكل بوده و كاشه در اين سيستم coherent مي‌باشد. دقيقاً همانند معماري SMP ، هر پردازنده به تمامي حافظه اشراف كامل خواهد داشت. اين نوع سيستم نام ( NUMA ) را به خاطر تعداد دفعات دسترسي غير همشكل به نزديك‌ترين و دورترين بخش‌هاي حافظه ، به خود گرفته است.
سيستم‌هاي توزيع شده را مي‌توان شبكه‌هاي قراردادي از كامپيوترهاي مستقل در نظر گرفت كه داراي image سيستم‌هاي مختلف مي‌باشند و هر گره سيستم‌عامل خود را اجرا مي‌كند. ماشين‌هاي مستقل در يك سيستم توزيعي به عنوان مثال مي‌توانند تركيبي از MPP ها ، SMP ها ، كلاسترها و كامپيوترهاي شخصي باشند.
در ابتدايي‌ترين سطح ، يك كلاستر مجموعه‌اي از ايستگاه‌هاي كاري يا كامپيوترهاي شخصي است كه با استفاده از يك نوع تكنولوژي شبكه به يكديگر متصل شده‌اند. عموماً يك كلاستر ، جهت اهداف پردازش موازي بايد از ايستگاه‌هاي كاري و يا كامپيوترهاي شخصي با سرعت و عملكرد بالا كه بوسيله يك شبكه سريع به يكديگر متصل شده‌اند تشكيل شده باشد. يك كلاستر به عنوان مجموعه يكپارچه‌اي از منابع عمل كرده و مي‌تواند داراي يك Image واحد از سيستم باشد كه كل گره‌ها را پوشش مي‌دهد.

3- به سوي محاسبات موازي كم‌هزينه و انگيزه‌ها
در دهه 1980 باور بر اين بود كه كارآيي كامپيوتر با بوجود آوردن پردازنده‌هاي سريعتر و موثرتر به بهترين نحو بهبود خواهد يافت. اين نظريه با نظريه پردازش موازي كه به معناي متصل نمودن دو يا چند كامپيوتر جهت حل يك مسئله محاسباتي است ، در رقابت بود. از اوايل دهه 1990 رويه روزافزوني در خصوص دوري از ابركامپيوترهاي موازي تخصصي و گران‌قيمت و حركت به سمت شبكه‌هاي ايستگاه‌هاي كاري به وجود آمده است. در بين محرك‌هاي اصلي كه اجازه چنين تفكري را داده‌اند ، رشد سريع قابليت دسترسي اجزاء با كارآيي بالا جهت ايستگاه‌هاي كاري و شبكه‌ها مهمترين عامل بوده است. اين فن‌آوري‌ها شبكه‌هاي كامپيوتري ( كامپيوترهاي شخصي و يا ايستگاه‌هاي كاري ) را به ابزاري مناسب جهت پردازش موازي تبديل كرده‌اند و اين امر در نهايت منجر به پايين آمدن هزينه توليد سيستم‌هاي ابرمحاسبه‌اي شده است.
تحقيقات وسيعي در ارتباط با كاربرد پردازش موازي به عنوان ابزاري جهت ارائه امكانات محاسبه‌اي با كارآيي بالا براي برنامه‌هاي كاربردي بزرگ و وسيع ، صورت گرفته است. با اين وجود تا اين اواخر ، منافع اين تحقيقات به اشخاصي محدود مي‌شد كه به اين نوع سيستم‌ها دسترسي داشتند. رويه محاسبه موازي ، حركت از سوي سكوهاي ابرمحاسبه‌اي سنتي ويژه مانند Cray/SGI T3E ، به سوي سيستم‌هاي ارزانتر چند منظوره مي‌باشد كه شامل اجزايي هستند كه loosely coupled بوده و از كامپيوتر‌هاي شخصي يا ايستگاه‌هاي كاري ساخته شده‌اند كه داراي يك يا چند پردازنده‌اند. اين ديدگاه داراي چندين مزيت است ، از جمله توانايي ساخت سكويي جهت يك بودجه فرضي كه براي گروه كثيري از برنامه‌هاي كاربردي و بارهاي كاري مناسب مي‌باشد.
استفاده از كلاسترها جهت نمونه‌سازي اوليه ، رفع خطا و اجراي برنامه‌هاي كاربردي موازي به جاي سكو‌هاي ( Platforms ) محاسبه موازي تخصصي و گران‌قيمت ، بطور روزافزوني عموميت يافته است. يكي از عوامل مهم كه استفاده از كلاسترها را به يك قضيه عملي تبديل كرده است ، استاندارد كردن بسياري از ابزارها و برنامه‌هاي سودمندي است كه بوسيله برنامه‌هاي كاربردي موازي استفاده مي‌شوند. نمونه اين استانداردها كتابخانه انتقال پيام ( MPI ) و زبان موازي داده‌اي (HPF ) مي‌باشند. در اين زمينه ، استاندارد كردن اين امكان را به برنامه‌هاي كاربردي مي‌دهد كه توسعه يافته، مورد آزمايش قرار گيرند و حتي بر روي شبكه‌اي از ايستگاه‌هاي كاري اجرا شوند. سپس در مرحله بعدي با تغييرات اندكي به سمت سكوهاي موازي اختصاصي ، جايي كه زمان CPU ثبت و محاسبه مي‌شود ، منتقل شوند.
دلايلي كه در ذيل آورده شده است نشان مي‌دهند كه چرا شبكه‌اي از ايستگاه‌هاي كاري به كامپيوترهاي موازي مخصوص ترجيح داده مي‌شوند:
ايستگاه‌هاي كاري شخصي روز به روز قدرتمندتر مي‌شوند. در واقع ، كارآيي ايستگاه كاري در چند سال اخير به مقدار زيادي افزايش پيدا كرده است و در هر 18 تا 24 ماه دو برابر مي‌شود. اين رشد براي سالهاي متمادي ادامه خواهد يافت زيرا پردازنده‌هاي سريعتر و ماشين‌هاي چندپردازنده‌اي موثرتر به بازار خواهند آمد.
بدليل تكنولوژي‌هاي جديد شبكه و همچنين پروتكل‌هايي جديد كه در يك شبكه محلي پياده‌سازي مي‌شوند ، پهناي باند ارتباطي مابين ايستگاه‌هاي كاري در حال افزايش و تاخير در حال كاهش مي‌باشد.
كلاسترهاي ايستگاه‌هاي كاري جهت عمل يكپارچه‌سازي نسبت به كامپيوتر‌هاي موازي خاص ساده‌تر مي‌باشند.
ايستگاه‌هاي كاري عموماً توسط كاربرانشان كمتر به كار گرفته مي‌شوند.
ابزارهاي توسعه براي ايستگاه‌هاي كاري در مقايسه با راه‌حل‌هاي اختصاصي جهت كامپيوتر‌هاي موازي كامل‌تر مي‌باشند. اين به جهت طبيعت غير استاندارد اكثر سيستم‌هاي موازي است.
كلاسترها به راحتي قابل رشد بوده و توانايي هر گره به راحتي با افزودن حافظه و يا نصب كردن پردازنده‌هاي اضافي قابل افزايش است.
كلاسترهاي ايستگاه‌هاي كاري ارزان بوده و به راحتي جهت سكوهاي محاسباتي با توان بالا در دسترس مي‌باشند.

از آنجايي كه يك شبكه محلي عموماً داراي پهناي باند كم بوده و در شروع كار تاخير پيام زيادي دارد ، بنابراين محيط ايستگاه كاري جهت برنامه‌هاي كاربردي كه نياز به ارتباط زياد ندارند مناسب‌تر مي‌باشد. اگر برنامه كاربردي نياز به قدرت ارتباط سريعتر داشته باشد ، معماري‌هاي شبكه‌هاي محلي موجود مانند اترنت جوابگوي آن نخواهند بود.
در گذشته ، در علوم و صنايع ، ايستگاه كاري به يك سكوي UNIX گفته مي‌شد و عمليات عمده ماشين‌هايي كه تحت كامپيوترهاي شخصي بنا شده بودند ، جهت كارهاي اجرايي و پردازش متن مورد استفاده قرار مي‌گرفتند. با اين وجود همگرايي سريعي در كارآيي پردازنده‌ها و عمليات در سطح kernel ايستگاه‌هاي كاري و كامپيوترهاي خانگي در سه سال اخير صورت پذيرفته است
( معرفي ماشين‌هاي سريعي كه پردازنده آنها Pentium مي‌باشد و سيستم‌عامل‌هاي Linux و Windows NT گواهي بر اين ادعا مي‌باشد ). اين همگرايي باعث شده است تا استفاده از سيستمهاي PC-based به عنوان يك منبع محاسباتي كم هزينه جهت محاسبات موازي مورد استفاده قرار گيرد. اين عامل بعلاوه هزينه نسبتاً پايين PC ها و گستردگي آنها از لحاظ قابليت دسترسي در صنعت و علوم باعث شده است تا ايجاد تعدادي پروژه نرم‌افزاري كه هدف اصلي آنها كنترل كردن اين منابع بصورت اشتراكي است ، شروع شود.
4- دريچه‌اي به سوي فرصت‌ها
منابع موجود در شبكه‌اي ميانه از ايستگاه‌هاي كاري نظير پردازنده‌ها ، رابط‌هاي شبكه ، حافظه و ديسك سخت ، فرصت‌هاي تحقيقاتي زيادي را بوجود مي‌آورند. بطور مثال:

پردازش موازي : از پردازنده‌هاي گوناگون جهت ايجاد سيستم‌هايي مشابه MPP/DSM كه براي محاسبات موازي مورد استفاده قرار مي‌گيرند ، سود مي‌جويد.

حافظه شبكه : از حافظه موجود در هر يك از ايستگاه‌هاي كاري مي‌توان به عنوان يك كاشه DRAM به هم پيوسته استفاده نمود. اين موضوع مي‌تواند بطور قابل ملاحظه‌اي حافظه مجازي و كارآيي سيستم فايل را بهبود ببخشد.

در RAID نرم‌افزاري ( آرايه‌اي از ديسك‌هاي كم‌هزينه ) : با استفاده از آرايه ديسك‌هاي ايستگاه‌هاي كاري مي‌توان فضاي ذخيره‌سازي مقياس‌پذير با قابليت دسترسي بالا و ارزان‌قيمت را ايجاد نمود. اين كار با استفاده از شبكه محلي به عنوان زيرساختار ورودي/خروجي براي آرايه‌اي از ديسك‌هاي ايستگاه‌هاي كاري ميسر مي‌باشد. بعلاوه مي‌توان جهت برنامه‌هاي كاربردي نظير MPI-IO كه در لايه ميان‌افزار قرار داند از ورودي / خروجي موازي نيز پشتيباني به عمل آورد.

ارتباطات چندمسيره : با استفاده از چندين شبكه مي‌توان انتقال اطلاعات بين گره‌ها را بصورت موازي انجام داد.
برنامه‌هاي كاربردي موازي و مقياس‌پذير نياز به عمليات مميز شناور با كارآيي بالا ، ارتباطات با تاخير كم و پهناي باند زياد ، پهناي باند قابل انعطاف و دسترسي سريع به فايل‌ها خواهند داشت. نرم‌افزار كلاستر مي‌تواند اين نيازمندي‌ها را با استفاده از منابعي كه جهت هر كلاستر وجود دارند ، مهيا كند. مي‌توان سيستم فايلي كه از ورودي و خروجي موازي پشتيباني به عمل مي‌آورد را با استفاده از ديسك‌هايي كه جهت هر ايستگاه كاري وجود دارد بجاي استفاده از RAID سخت‌افزاري گران‌قيمت ، بوجود آورد. مي‌توان كارآيي حافظه مجازي را با استفاده از حافظه شبكه به عنوان يك فضاي ذخيره‌سازي جبراني بجاي ديسك سخت ، بطور موثري بهبود بخشيد. سيستم‌هاي فايل موازي و حافظه شبكه به نوعي شكاف بزرگ كارآيي مابين پردازنده‌ها و ديسك‌ها را كوچكتر كرده و تقليل مي‌دهند.
متصل نمودن گره‌هاي موجود در يك كلاستر با استفاده از شبكه اترنت استاندارد و يا شبكه‌هاي مخصوص با كارآيي بالا نظير Myrinet امري متداول مي‌باشد. اين چند شبكه مي‌توانند جهت انتقال اطلاعات بين گره‌هاي موجود در كلاستر بصورت موازي مورد استفاده قرار گيرند. نرم‌افزار ارتباط چندمسيره در گره‌اي فرستنده اطلاعات عمل مالتي‌پلكسينگ داده‌ها را انجام داده و سپس آن را از طريق شبكه‌هاي چندگانه ارسال مي‌كند ، سپس در گره مقصد و يا گيرنده نيز عمل دي‌مالتي‌پلكسينگ داده‌ها را انجام مي‌دهد. به همين دليل تمامي شبكه‌هاي موجود مي‌توانند جهت انتقال اطلاعات سريع مابين گره‌هاي يك كلاستر مورد استفاده قرار گيرند.
#clustering #hp #hpc #linux #beowulf @unixmens