PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : 0 شدن رم



1Mizban
December 2nd, 2009, 19:14
سلام

متاسفانه یه مشکلی پیدا کردم و اون اینه که رم سرور مجازی ( هایپر وی ام ) 0 میشه
از گزینه لیمیت هم که میرم میخوام افزایش یا کاهش بدم هیچ فرقی نمیکنه و به سختی ریبوت میشه
کلا میزان رم رو زده 0 و دون شده ، سرور اصلی رو هم ریبوت دادم درست نشد
1 گیگ رم در حال اسفاده است ، 3 گیگ خالیه سی پو که هیچ فشاری روش نیست
یکی از دوستان هم همین مشکل رو داشته طاهرا ولی به جایی نرسیده ....

Arashdn
December 2nd, 2009, 20:14
این مشکل تو اوپن وی زد منو دیونه کرد
کلی هم دنبالش گشتم
تقیبا هیچ راه حلی براش نبود

1Mizban
December 2nd, 2009, 21:51
vi /etc/vz/conf/110.conf

فکر کنم از اینجا بشه درستش کرد ؟

KamranOnline
December 2nd, 2009, 22:49
چند نوع حافظه داریم که یکی از اون ها حافظه فیزیکی هست !
در سرور های مجازی توجه به انواع مختلف حافظه مهم و ضروری هست !

1Mizban
December 2nd, 2009, 23:01
چند نوع حافظه داریم که یکی از اون ها حافظه فیزیکی هست !
در سرور های مجازی توجه به انواع مختلف حافظه مهم و ضروری هست !

سلام آقا کامران

خوب ؟ چی کار باید کرد ؟ برای این مشکل

Arashdn
December 3rd, 2009, 06:25
چند تا سوال؟
تا الان چقدر رم گارانتی و چقدر رم افزایشی دادی و مقدار رم سرور خودت چقدره؟
سی پی یو سرورت چیه و چند تا وی پی اس بالا داری؟
خروجی دستور top سرورت رو اینجا بزار یا بره من پیام خصوصی کن

1Mizban
December 3rd, 2009, 11:42
چند تا سوال؟
تا الان چقدر رم گارانتی و چقدر رم افزایشی دادی و مقدار رم سرور خودت چقدره؟
سی پی یو سرورت چیه و چند تا وی پی اس بالا داری؟
خروجی دستور top سرورت رو اینجا بزار یا بره من پیام خصوصی کن

سرور اصلی 4 گیگ رم داره
برای وی پی اس خودم که سایت های خودم روش بود نامحدود دادم خواستم کمش کنم که دیگه اصلا 0 شد و درستم نشد
دیگه مجبور شدم دادم دیتا سنتر
تو هیستوری رو هم که دیدم دیتا سنتر از طریق تون فایل درستش کرده همین کار فقط

Arashdn
December 3rd, 2009, 16:27
رم ور نا محدود داده بودی؟؟؟؟؟؟؟
هیچ وقت رم رو بیشتر از رم سرورت نفروش

1Mizban
December 3rd, 2009, 18:42
آره گفتم وی پی اس خودم مشکل نداره که اینم اصلا همه چیز به هم ریخت

KamranOnline
December 9th, 2009, 19:34
خوب قبلا در این مورد کامل توضیح داده بودم که Memory در سیستم مجازی سازی چجوری هست.

یه بار دیگه هم می گم به طور کامل :

ابتدا باید بدونیم UBC یا User BeanCounter چی هست.
تعریف : تنظیماتی برای محدود سازی یا گارانتی های کنترل شده برای هر Container در سیستم های مجازی و ...

پارامتر های UBC در 3 دسته تقسیم می شود. primary parameters, secondary parameters و auxiliary parameters

آدرس فایل به /proc/user_beancounters می باشد که با CAT کردن می تونید اطلاعات رو برای تک تک Container ها بخونید و تحلیل کنید.

برای خوندن هر Container می توانید به شکل زیر عمل کنید و VEID اون رو وارد کنید.
egrep -A23 '^[[:space:]]+${CTID}:' /proc/user_beancounters

تحلیل به این شکل به شما این امکان رو می دهد که به طور مثال با زبان Ruby کدی نوشته و توی کنترل پنل های VPS از اون استفاده کنید و یا برای مشتری هاتون هر شب ایمیل کنید.

Field ها به صورت زیر هستند :
held : مقدار فعلی مصرفی
Maxheld : بیشترین مقدار مصرف شده
( توجه داشته باشید دوره این مقدارین به صورت Lifte Time می باشد، یعنی تا زمانی که سرور شما ریبوت نشده است )

دو پارامتر دیگر هم داریم که به نام های barrier و limits می باشند که مقادیر گارانتی با محدودیت نام دارند. فرق این مقادیر به شرح زیر هستند.

* limits, : بیش ترین مقدار مصرفی توسط Container
* guarantees, : این مقدار هم مثل Limit هست ولی بستگی به بقیه Container ها هم دارد. اگه توجه کرده باشید guar مخفف این کلمه هست و در مقدار های Resource مقادیری به نام های vmguarpages و oomguarpages

بعضی از مقادیر مثل kmemsize در صورتی که مقدار barrier آن ها گذرانده شود هیچ گاه به مقدار limits نخواهند رسید و سریعا Crash می کنند.

حال هر کدوم از این مقادیر واحد های مختص خودشون رو دارند. به طور مثال pieces و bytes و pages

2 حالت اول که همه بلد هستند و خدارو شکر همه سرور های TByte دارند که اشنایی کامل هم به مقادیر و نحوه محاسبه دارند.

page به این گونه هست :
is a range of consecutive addresses in the virtual address space whose size is a power of two. Those virtual addresses are translated in a corresponding range of consecutive physical addresses. The memory referenced by such a range is called a page.

برای سیستم های x86 و x86_64 برابر 4KB می باشد و روی سیستم های Intel Itanium (IA64) برابر 16KB هست.

برای اینکه روی سرور خودتون چک کنید می تونید از دستور C زیر استفاده کنید :

#include <unistd.h>
#include <stdio.h>

int main(int argc, char* argv[])
{
long sz = sysconf(_SC_PAGESIZE);
printf("memory pagesize on this box : %i\n", sz);
return 0;
}


و این جوری کامپایل کنید : gcc -o getpagesize getpagesize.c

ولی مطمئن باشید 4KB هست روی سرور شما

https://www.webhostingtalk.ir/attachment.php?attachmentid=394&stc=1&d=1260374968

خوب برسیم به بقیه ماجرا که اصل کار این جاست که این پارامتر ها هر کدوم به چه درد می خورن !

Primary parameters

numproc : تعداد Task های روی سیستم عامل ( تعداد Process ها به طور کلی )
numtcpsock : تعداد Socket های TCP روی کانکشن شما
numothersock : تعداد Socket های دیگر روی کانکشن مثل UDP
vmguarpages : گارانتی Memory مصرفی

این مقدار کنترل مقدار موجود برای Virtual Environment ها هست. به طور کلی مقداری که Applications هی توسط malloc مصرف می کنند یا مقدار مصرفی سرویس های استاندارد لینوکس

Secondary parameters

kmemsize : مقدار Memory غیر قابل Swap که سیستم عامل استفاده می کند. این مقدار unswappable هست !
tcpsndbuf: مقدار کلی بافر مصرف شده برای ارسال داده از Protocolهای TCP

مقدار tcpsndbuf(limit) - tcpsndbuf(barrier) > 2.5KB * numtcpsock
حداقل مقدار برای ارسال 1 Packet

tcprcvbuf : مقدار کلی بافر مصرف شده برای دریافت داده از Protocolهای TCP
مقدار tcprcvbuf (limit) - tcprcvbuf (barrier) > 2.5KB * numtcpsock

dgramrcvbuf: مقدار بافر برای پکت های ورودی برای UDP و Protocols های دیگر
احتیاجی نیست این مقدار خیلی زیاد باشد !

oomguarpages : مقدار گارانتی شده Memory که به Over-Booked معروف می باشد. به طور کلی : out-of-memory kill guarantee

در صورتی که این مقدار کم باشد سیستم عامل به صورت اتوماتیک برای خالی کردن Memory یک سری از Process هارو Kill می کند.

privvmpages: کنترل مقدار Memory مصرفی برای Applications ها ( Memory اصلی برای کار هاستینگ )

Auxiliary parameters

lockedpages : به طور کلی Processهایی که قابل ذخیره و دسترسی به Swap رو ندارند.

shmpages : فضای Memory مشترک و Shared Memory

physpages : مقدار RAM مصرفی توسط Process ها در Container

numfile : تعداد open files

numflock: . تعدادfile locks.

numpty: من درست نمی دونم کارش چی هست !

numsiginfo: تعداد siginfo که توضیح خاصی براش ندارم و مربوط به Kmem و سیستم عامل هست.

dcachesize: مقدار Inodes های قفل شده در Memory

numiptent : تعداد NETFILTER (IP packet filtering) که در Iptables ها مورد استفاده قرار می گیرد.

swappages : مقدار SWAP در یک Container

برای آشنایی کلی پیشنهاد می کنم به این آدرس هم یه نگاه بندازید : maxgarrick.com Understanding OpenVZ resource limits (http://maxgarrick.com/understanding-openvz-resource-limits/)

این جارو به فوت بزرگ می نویسم که برای همه خیلی جالب هست که یه مثال کلی می زنم که این اطلاعاتی که دادم چقدر مهم هست و چجوری می شه 400 VPS رو روی یه سرور به 2 گیگابایت رم راه اندازی کرد.

حالت A
یه VPS داریم به 2 گیگابایت رم و 4 گیگابایت Swap هم چنین 400 VPS که این گونه هستند :
یک HTTPD سرور سبک با 40 کانکشن به همراه FTP و دارای 15 Task باز !

یعنی به طور کلی 16000 تا Connection روی این سرور هست و حدود 6000 Task قابل Process

قابل توجه سایت های دانلود ! 16000 تا کانکشن باز کنید و به هیچ وجه دان نمی شوید.

حالت B
به مقدار های رم و SWAP قبلی این بار 120 VPS که هر کدام Web server, mail, FTP و DNS دارند و حدود 40 Task باز و 80 کانکشن باز روی این سرویس ها

باز هم دان نمی شوید

حالت C
با مقدار رم و SWAP قبلی این بار 8 VPS که هر کدوم از VPS ها از طریق FTP و Mail به 200 کاربر همزمان دیتا ارسال می کنند و دارای DATABASE ها سنگین هستند و هر کدام 200 Process دارند و بیش تز 500 کانکشن باز روی هر کدام هست !

جالب این جاست که خیلی از بچه هایی که کار هاستینگ می کنن روی یه سرور اختصاصی هم این قدر Task باز ندارند ولی همیشه Load سرور شون بالا هست.

باز هم دان نمی شوید !

حالت D
پدر یه سرور در بیاریم و روش فقط یه VPS اجرا کنیم !
سوال : آیا این حالت قوی تر از حالتی هست که از سرور Dedicated داریم استفاده می کنیم ؟
جواب : در بسیاری حالات تا 3 برابر قدرت شما بیشتر می شود !

سوال : خوب چرا این کار رو کسی نمی کنه ؟
جواب : VPS یه چیزه , Dedicated یه چیز دیگه ( تحقیقش رو یکی بکنه به همه اطلاع بده چه فرقی داره - ضمنا جناب آقای میرزاخانی می دونن که چرا ! ولی از ایشون سوال نکنید و خودتون تحقیق کنید )

جدول تنظیمات این حالات رو براتون گذاشتم یه چک کنید به دردتون می خوره !


https://www.webhostingtalk.ir/attachment.php?attachmentid=395&stc=1&d=1260380623

سوال اساسی بعدی اینه که چه سروری بخریم و از کجا بخریم !
پیشنهاد من از کسی بخرید که اطلاعات کافی در مورد سیستم مجازی سازی داشته باشه.
من خودم با کسانی که صحبت کردم بدون اغراق می گم که حرف های آقای میرزاخانی برام جالب بود و پیشنهاداتی که روی CPU های سرور ایشون می دادن و اطلاعات کامل از سخت افزار داشتند. این بدین معنی نیست من تبلیغ ایشون رو می کنم ولی می تونید از ایشون اطلاعات خودتون رو بگیرید و برید از دیتاسنتر دیگری خرید کنید !

کلیه اطلاعات در سایت OpenVZ قابل مشاهده می باشد و یک سری از این اطلاعات رو هم گروه OpenVZ به contributor هاش داده بود که توی سیستم OpenVZ گروه ما Donate کرده بود برخی اطلاعات رو در اختیار ما قرار دادند.

اگه کسی می خواد باز به من بد و بی راه بگه لطفا در پیغام خصوصی مسائل شخصی تون رو ارسال کنید و آمادگی شو دارم.

با تشکر از دوستان

1eng.ir
December 9th, 2009, 21:31
ای ول کارت 20 ـه :)

این یه مطلب علمی بود که جای تحسین داره.

حالا همچین مشکلی پیش اومده (صفر شدن ناگهانی رم وی پی اس)
راه حلش چیه ؟ یعنی چی کار کنیم که رمو شناسایی کنه ؟

+

اگه کسی می خواد باز به من بد و بی راه بگه لطفا در پیغام خصوصی مسائل شخصی تون رو ارسال کنید و آمادگی شو دارم.
قضیه این چیه ؟ :))

KamranOnline
December 9th, 2009, 21:40
اول دفترچه بیمه خدمات سرور بیار، البته قبلش باید سربازی رفته باشی تا تمدید بشه یا اشتغال به تحصیل.

به فرض اینکه داری !

خوب حالا رم صفر شد ! این همه گفتم 500 نوع پارامتر داره ! رم که صفر نمی شه !

باید ببینی کدوم پارامتر صفر شده ( البته به تعبیر غلط ) چون صفر در Memory معنی نداره ! به طور کلی یعنی به سقف خوردی !

شنیدی می گن به زمین گرم بخوری ! حالا این برعکسش هست.

فرض کن Barrier لوستر هست و Limit سقف وقتی زیاد بالا پایین بپری اول می خوری به لوستر و بعد سقف.

حالابرای این که بفهمی به کدوم خوردی خیلی راحت از دستور :

cat /proc/user*

استفاده می کنی و لیست همه Container ها می آد. بعدش باید چک کنی ببینی کدوم یکی مقدار Fault ش غیر از صفر هست. به طور مثال KMem مقدار Fault 262 داره پس باید اون رو افزایش بدی .

1Mizban
December 9th, 2009, 21:40
ممنون اقا کامران
من اگه بخوام مقدار رم و کلا این موارد رو تغیر بدم از کدوم فایل باید انجام بدم ؟ etc/vz/conf/110.conf؟

KamranOnline
December 9th, 2009, 22:20
ممنون اقا کامران
من اگه بخوام مقدار رم و کلا این موارد رو تغیر بدم از کدوم فایل باید انجام بدم ؟ etc/vz/conf/110.conf؟

درسته ولی بعضی وقتی ها یک سری پارامتر ها توی این لیست نیست و می بایست اضافه کنی به طور مثال Iptable به صورت پیش فرض در این تنظیمات نیست.

می تونی خیلی راحت Config فایل هم بسازی و موقع ساخت VPS از اون استفاده کنی که نخوای برای تک تک VPS ها تنظیمات رو انجام بدی.

البته این به درد اونی می خوره که قرار 400 تا VPS داشته باشه !

هم چنین می تونی از VZCTL SET {VEID} --PARAMETER VAL1:VAL2 --save

اگه درست نوشته باشم هم استفاده کنی

---------- Post added at 06:18 PM ---------- Previous post was at 06:14 PM ----------


ای ول کارت 20 ـه :)

این یه مطلب علمی بود که جای تحسین داره.

حالا همچین مشکلی پیش اومده (صفر شدن ناگهانی رم وی پی اس)
راه حلش چیه ؟ یعنی چی کار کنیم که رمو شناسایی کنه ؟

+

قضیه این چیه ؟ :))

قضیه این هم اینه که دوستان خیلی لطف دارن نسبت به ما ! من هرچی می گم همه می گن تو نمی فهمی و بلد نیستی و چرت و پرت می گی !

البته دمشون گرم می دونم این کارو می کنن که من برم یاد بگیرم.

---------- Post added at 06:50 PM ---------- Previous post was at 06:18 PM ----------

این تنظیماتی که حالات A B C D نوشتم رو می شه تعمیم داد و حالات جدید پیدا کرد.

برای این کار خیلی راحت از این فرمول می تونید چندین بار حساب کنید و اون مقداری که می خواین رو بدست بیارین.

یکم حوصله می خواد ولی ارزشش رو داره !

Config(new) = @ * config1 + ( 1 - @ ) * config2

0<@<1

این فرمول تا اونجایی که یادم هست برای محاسبه ضریب گرمایشی اجسام هم استفاده می شد.

به طور معمول @ روی 0.5 حساب کنید.

Roka
December 9th, 2009, 23:48
چیکار به فایل کانفیگ دارید:d

تو تنظیمات limite وی پی اس که برید یه گذینه هست به اسم : Number Of Processes(openvz Only)
این گذینه رو تیک unlimite رو بزنید
احتمال 99.9% مشکل حله

سرور 1eng که اینجوری مشکلش حل شد ، برای شما هم چه حل شد و چه نشد نتیجه رو بگید !!!

موفق باشید

1eng.ir
December 9th, 2009, 23:55
چیکار به فایل کانفیگ دارید:d

تو تنظیمات limite وی پی اس که برید یه گذینه هست به اسم : Number Of Processes(openvz Only)
این گذینه رو تیک unlimite رو بزنید
احتمال 99.9% مشکل حله

سرور 1eng که اینجوری مشکلش حل شد ، برای شما هم چه حل شد و چه نشد نتیجه رو بگید !!!

موفق باشید
تایپک به خاطر مشکل من اورده شد بالا :d

مطمئنین که از تعداد سی پی یو ها بود ؟ آخه نمیشه سی پی رو زیاد داد به یوزر (پررو میشه) :d

به نوع سی پی یو اصلی هم ربط داره ؟

Roka
December 9th, 2009, 23:58
تایپک به خاطر مشکل من اورده شد بالا :d

مطمئنین که از تعداد سی پی یو ها بود ؟ آخه نمیشه سی پی رو زیاد داد به یوزر (پررو میشه) :d

به نوع سی پی یو اصلی هم ربط داره ؟
تو سرور ، هیچ وقت نمیشه گفت مشکل دقیقاً از فلانجا هست

از هر چیزی ممکنه باشه !!

1Mizban
December 10th, 2009, 11:45
چیکار به فایل کانفیگ دارید:d

تو تنظیمات limite وی پی اس که برید یه گذینه هست به اسم : Number Of Processes(openvz Only)
این گذینه رو تیک unlimite رو بزنید
احتمال 99.9% مشکل حله

سرور 1eng که اینجوری مشکلش حل شد ، برای شما هم چه حل شد و چه نشد نتیجه رو بگید !!!

موفق باشید

سلام
نه گذاشتم رو 70 % اخر هم نفهمیدم چی شد
من مشکلم این بود که از گزینه لیمیت که میرفتم رم رو تغیر میدادم فرقی نمیکرد
نگفتم از فایل کانفینگ برم دستی نغیر بدم که اینم نفهمیدم کجاست اخر coning یا اینهاا که کامران نوشت
البته مشکلم رو حل کردند

KamranOnline
December 11th, 2009, 12:39
سلام
نه گذاشتم رو 70 % اخر هم نفهمیدم چی شد
من مشکلم این بود که از گزینه لیمیت که میرفتم رم رو تغیر میدادم فرقی نمیکرد
نگفتم از فایل کانفینگ برم دستی نغیر بدم که اینم نفهمیدم کجاست اخر coning یا اینهاا که کامران نوشت
البته مشکلم رو حل کردند

مشکل اصلی ایشون به خاطر کم بودن Kernel Memory بود و با تغییر اون مقدار مشکل به طور 90% برطرف شد.

Arashdn
December 11th, 2009, 12:46
مشکل اصلی ایشون به خاطر کم بودن kernel memory بود و با تغییر اون مقدار مشکل به طور 90% برطرف شد.
ممکنه دقیق توضیح بدید چیکار کنیم؟

KamranOnline
December 11th, 2009, 13:09
ممکنه دقیق توضیح بدید چیکار کنیم؟

حتما، من تو توضیحات قبلی گفتم :

kmemsize : مقدار Memory غیر قابل Swap که سیستم عامل استفاده می کند. این مقدار unswappable هست !

دقیق ترش :

به طور کلی KMEM شامل تمام دیتاهای داخلی Kernel می شه که توسط یک Container قرار Process بشه و سیستم های I/O مثل Network و ... شامل این اطلاعات نیستند.

KMEM و numproc که در چند پست قبل توضیح دادم مقادیر متناسب دارند و با فرمول پست قبلی می شه این مقادیر رو در آورد. به طور معمول برای هر Process مقدار KMem رو 27 کیلوبایت در نظر میگیرند و حداقل مقدار هر Process برابر 24 کیلوبایت می باشد و حداکثر برابر 30 - 60 کیلو بایت ولی Process های خیلی سنگین ممکنه بیشتر هم مصرف کنند ولی این مقدار نرمال برای کار هاستینگ هست.

ببین در مدیریت حرفه ای VPS ها برای مقدار های Limit و Barrier حدود 10% تلورانس در نظر می گیریم. همان طور که در تنظیمات پست های قبلی این مقدار رعایت شده !

این بخاطراین هست که سیستم عامل فرصت کنه در زمانی که می خواد Process یک App رو Kill کنه اون Container بتونه Process های دیگر هم انجام بده و Crash کنه !

مهم این مقدار UNSWAPPABLE هست ! این خیلی مهمه و در انتخاب مقدار Memory خیلی مهم هست و خیلی راحت VPS شما دان می شه !

RezaFH
January 8th, 2010, 14:10
سلام
این مشکل برای VPS من هم پیش اومده :(

http://www.webhostingtalk.ir/attachment.php?attachmentid=480&stc=1&d=1262947036

چیکار کنم ؟

راستی من فکر کنم 10-15 نفر اد لیست تو کار هاستینگ دارم
هیشکی امروز آنلاین نیست ! :(
خبریه ؟ یا جمعه همه خوابن ؟

Arashdn
January 8th, 2010, 15:20
این یه مشکل تقریبا حل نشدنی تو اوپن وی زد هست

RezaFH
January 8th, 2010, 15:29
حالا من چیکار باید بکنم ؟
با rebuild درست میشه ؟
یا دست من نیست ؟

Arashdn
January 8th, 2010, 16:52
حالا من چیکار باید بکنم ؟
با rebuild درست میشه ؟
یا دست من نیست ؟
من هر کاری که میشد کردم
به هیچ عنوان درست بشو نبود

tmfar
January 18th, 2010, 13:31
منم مجازی سازی یکی از وی پی اس هام open vz هست اصلاً می تونم به این مجازی ساز دسترسی داشته باشم و وی پی اس رو خاموش کنم یا باید سرور اجازه چنین کاری رو بده ؟

Arashdn
January 18th, 2010, 17:20
الان شما مشکلت دقیقا چیه؟