المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : CPU Usage Limiter for Linux


MIDO-EGYPT
2009-12-04, 02:38 AM
CPU Usage Limiter for Linux

بسم الله الرحمن الرحيم و عليه توكلنا و به نستعين

بداية كدة لازم نفهم اي هو ال CPU Usage Limiter

هو التحكم التام في استهلاك الموارد للسيرفر

بمعنى

عندك سيرفر استضافة و عليه مواقع كتير و عاوز تحدد استخدام كل موقع مثلا 3% من موارد الخادم

اولا لازم نعرف لزمتها ايه عشان في ناس بتحب تفهم

مثلا لو عندك موقع مستهدف او بيعمل نشرات بريدية او او او مستهلك موارد سيرفرك

لو انت مدير سيرفر و السيرفر وقف منك بسبب موقع من المواقع اعزرني فأنت فاشل

متبصليش كدة ايوة هتبقى فاشل

مثلا صاحب موقع بيعمل سبام

لو انت مش محددله موارد او قيمة موقعة مايستهلكش اكتر منها هتلاقي سيرفرك وقف في لحظات

طيب احنا كدة فهمنا فايدة الدرس و اهميتة بالنسبه لأي صاحب سيرفر

نيجي بئه للدرس

طبعا الدرس دة بالفعل مش هتلاقيه غير هنا و اتحدى اي كائن فضائي او حتى ارضي يجيبلي حتة منه
و عشان كدة لو عاوز تنقله انقله مع ذكر حقوق الدعم العربي (http://www.support-ar.com/vb/showthread.php?t=13286)
(http://www.support-ar.com/vb/showthread.php?t=13286)
بسم الله نتوكل على الله

قوم اغسل ايدك كدة و اعمل كوبايه شاي و تعالى اقعد و فك ودانك و ركز كويس جدا

بئذن الله هناخد منهج جميل اوي في شروحتنا

المنهج دة ان الواحد مينفعش يطبق شئ و هو مش فاهمة و عشان كدة هنعرض الشرح بأكتر من صورة

توكلنا على الله
---------------------------------------------------------------------------------
اول شئ نحدد الموقع اللي عاوزين نحددله نسبه من استخدام الموارد

ولازم نعرف ان القصة دي ليها اكتر من طريقة

الأولى
هي للمحترفين

اما الثانيه هي برنامج و ليه موقع رسمي و حجات كدة

الطريقة الأولى

ندخل الشيل و محدش يقول يعني ايه شيل :p


pico /etc/security/limits.conf


ثم

user type item value


الاول تعرف ايه الحاجه

اليوزر : بتكتب تحته اليوزر اللى انت عايزه ولو عايز الكلام يطبق على كله تكتب *

النوع التاني Hard وده لو اليوزر وصل له هيوقف اليوزر
type : ده النوع واحد اسمه soft وده بيعلم زي تحذير لليوزر لما يوصل لللحد الموجود

Item : ودي الحاجه اللى انت عايز تعملها تجديد

مثلا

عدد العمليات اللى يقدر يقوم بيها اليوزر

وحاجات كتير دي تفاصيلها

* core - limits the core file size (KB)
* data - max data size (KB)
* fsize - maximum filesize (KB)
* memlock - max locked-in-memory address space (KB)
* nofile - max number of open files
* rss - max resident set size (KB)
* stack - max stack size (KB)
* cpu - max CPU time (MIN)
* nproc - max number of processes
* as - address space limit
* maxlogins - max number of logins for this user
* maxsyslogins - max number of logins on the system
* priority - the priority to run user process with
* locks - max number of file locks the user can hold
* sigpending - max number of pending signals
* msgqueue - max memory used by POSIX message queues (bytes)
* nice - max nice priority allowed to raise to
* rtprio - max realtime priority
* chroot - change root to directory (Debian-specific)

ده مثال لو عايز كل يوزر ميقدرش يفتح اكتر من 100 عمليه فى الوقت الواحد وده كويس


* hard nproc 100

عندك برضو لو عايز تحدده رقم معين من الرامات


* hard memlock 1024

دي هتحدد لكل يوزر انه يقدر يستخدم ميجا واحده من الرامات والارقام بالكليو بايت

* soft cpu 5

دي تسمح لكل يوزر بانه يستخدم من وقت المعالج 5 دقائق لانجار عمليات اليوزر


طبعا عندك حاجه اسمها PAM

انتهي الجزء الخاص بالمحترفين ,,

الجزء التاني ,,

الجزء دة طبعا هنستخدم فيه اداة ممكن اي حد مننا يستخدمها + متطورة عن الشرح السابق و اسهل كمان و الاجمل ليها موقع رسمي

http://cpulimit.sourceforge.net (http://cpulimit.sourceforge.net/)

اكيد في ناس تقدر تطبق الشرح من الموقع ونا كمان هشرحة هنا

نفتح الشيل و نستعيذ بالله من الشيطان الرجيم

الزق الامر دة في الشيل و متسئلش ليه


svn checkout https://cpulimit.svn.sourceforge.net/svnroot/cpulimit/trunk cpulimit

طبعا لازم نفك الضغط


tar zxf cpulimit-xxx.tar.gz

ناخد تاكسي و نروح على الفولدر ( محدش يدي للتاكسي اكتر من جنيه واحد)


cd cpulimit-xxx

ثم


make


و مبروك تم التركيب بنجاح

نيجي بئه لأمثلة الأستخدام

هنفترض ان في يوزر باسم

support-ar

و اليوزر دة ما شاء الله عليه واخد السيرفر لحسابة و لازم نوقفه عند حدة .<< بيحلم دة ال يوقفه ال :)


cpulimit --exe support-ar --limit 40
cpulimit --exe /usr/local/bin/support-ar --limit 40

طبعا واضح جدا من الأمر السابق ان اليوزر اتحددله 40% من استهلاك الموارد

و لو عندك ادمن شات مثلا او سيرفر راديو او اي برنامج على السيررفر زي الاباتشي و الماي سيكول و الشغل دة
ما عليك الا انك تجيب الرقم بتاع العمليه و دة طبعا ممكن تجيبه من خلال


Main >> System Health >> Show Current CPU Usage

ولنفترض ان البروسيس دة رقمة 2960


cpulimit --pid 2960 --limit 55

نحددله الكميه اللي يستهلكها من ال CPU و انتهي الدرس كدة

ان عجبك الشرح لا تنسى ++

انتهي

يمنع منعا باتا نقل الشرح دون ذكر المصر و الحقوق

المصدر
http://www.support-ar.com/vb/showthread.php?p=24513 (http://www.support-ar.com/vb/showthread.php?p=24513)

و الله ولي التوفيق ..,,