I have problem after update to 2.6.18-294.8.1.el5.lve0.7.32. I have lve with id 500, and user with id 500 (test). User have /bin/lve_bash as shell. With previouse version everyting works fine, but now when I try login i get this error:[br][root@centos1 ~]# cat /etc/passwd | grep test[br]test:x:500:500::/home/test:/bin/bash[br][root@centos1 ~]# su - test[br][test@centos1 ~]$ id[br]uid=500(test) gid=500(test) grupy=500(test)[br][test@centos1 ~]$ /bin/lve_bash[br]lve_bash: Unable to allocate memory for LVE -38[br][br][root@centos1 ~]# cat /proc/lve/list[br]veid enters cpu io cpu_usage[br]500 0 40 10 4880[br][br]# cat /etc/container/ve.cfg[br][br][br][br][br][br][br][br][br][br][br][br][br][br][br]And I have some questions: [br]-when memory limits become available? [br]-and in this output: [br][root@centos1 ~]# lveps -d[br] LVE REF PNO TNO USR GRP CPU MEM I/O[br] 27 0 2 11 N/A N/A 0% 14168 N/A[br]in what unit MEM is given? Mb, Kb ?[br]-Is it possible to make mod_passenger (ruby) / mod_wsgi (python) work in lve like suphp?[br]-When I create 5 lve with 30% CPU / 30% IO and this 5 lve take heavy load and want use 30% of CPU, how much everyone gets? 100%/5 ~ 20%? And when I create another lve for root with 5% CPU/IO under heavy load, how much of CPU I get? 100% - 5% (for root) / 5 users lve =~ 19% ?[br][br]This project is cool and improve performance on my servers[br]Sorry for my english
Announcement
Collapse
No announcement yet.
problem after update and some questions :)
Collapse
X
-
Try doing:
# yum update lve-wrappers
This should resolve it.
Memory limits: Hopefully -- September. We have seen 3 servers with OOM (which are still not clear why, something to do with PHP spawning processes uncontrollably), and I want to fix it asap.
Memory output is in bytes.
mod_passenger / mod_wsgi -- as long as it doesn have stand alone deamon -- sure, just add a handler to mod_hostinglimts -- it will start limiting it right away.
Regarding your last question -- yes, it is fair share scheduler, so each LVE (site) will get equal share (as long as it needs it).
If you have one site that needs 5% of CPU and 5 sites each asking for 30%, you will have one site using 5%, and the rest of them using another 19% each... well, a bit less, as system/other processes are counted as one big LVE as well, and they will get their cut also.
-
[root@centos1 ~]# yum upd ate lve-wrappers
Loaded plugins: fastestmirror, rhnplugin
Loading mirror speeds from cached hostfile
* rpmforge: ftp-stud.fht-esslingen.de
Se tting up Update Process
No Packages marked for Update
I try remove and install again, and problem still exists.
So If mod_passenger doesn provide se thandler options it can be used with mod_hostinglimnits? mod_wsgi should work, I try it ASAP http://code.google.com/p/modwsgi/wik...SGIScriptAlias
Comment
-
mod_wsgi also doesn work correctly .
<VirtualHost *:80>
ServerName py.centos1.zaszyfruj.pl
WSGIScriptAlias / /home/py/fib/start.wsgi
WSGIDaemonProcess py user=py group=py threads=3 display-name=%{GROUP}
WSGIProcessGroup py
<Directory /home/py/fib>
#LVEId 503
WSGIApplicationGroup %{GLOBAL}
SetHandler wsgi-script
Order deny,allow
Allow fr om all
</Directory>
</VirtualHost>
<IfModule mod_hostinglim its.c>
SkipErrors Off
AllowedHandlers wsgi-script x-httpd-php cgi-script php5-script php4-script php-script application/x-httpd-php5 application/x-httpd-php
</IfModule>
created lve with user id 503 (py). When I add LVEId 503 in <Directory> it working but:
[root@centos1 ~]# lveps -d
LVE REF PNO TNO USR GRP CPU MEM I/O
503 1 1 1 apache apache 0% 3016 N/A
user is apache not py, and CPU usage is 0, htop shows about 70%
Comment
-
Ignore user -- it is wrong indicator / meant for a different thing
Can you write a small python script that just sleeps for 5 minutes
Run it via browser,
And then do
lveps -d
and lveps -p
also get pid of that python process if you can.
Then I can say for sure if it works or not.
I think what is happening -- this module is working like mod_fcgid -- forking on startup, and then using the fork as a daemon, to run python scripts.
If that is the case -- we might still be able to handle it -- but it is a bit more complex.
Comment
-
this is pylons app and do this:
def fib(self, n2):
n = int(n2)
if n == 0:
return str(0)
elif n == 1:
return str(1)
else:
ret = int(self.fib(n-1)) + int(self.fib(n-2))
return str(ret)
in browser: http://host/main/fib/50 , this take long time and its very CPU intensive.
[root@centos1 ~]# lveps -d
LVE REF PNO TNO USR GRP CPU MEM I/O
503 1 1 1 apache apache 0% 3020 N/A
27 0 2 11 N/A N/A 0% 14264 N/A
[root@centos1 ~]# ps auxw | grep wsgi
py 6556 94.0 0.7 75564 15292 ? Sl 22:17 1:12 (wsgiy)
root 6585 0.0 0.0 4028 764 pts/0 S+ 22:18 0:00 grep wsgi
and yes, after apache startup I see wsgi process with 3 threads waiting for request, owned by user 503 (py)
==
lve_wrappers:
[root@centos1 ~]# uptime
22:25:03 up 11 min, 1 user, load average: 1.22, 0.97, 0.47
[root@centos1 ~]# uname -a
Linux centos1.zaszyfruj.pl 2.6.18-294.8.1.el5.lve0.7.32 #1 SMP Fri Jul 23 15:21:12 EEST 2010 i686 i686 i386 GNU/Linux
[root@centos1 ~]# su - test
[test@centos1 ~]$ /bin/lve_bash
lve_bash: Unable to allocate memory for LVE -38
I reboot server 5 or 6 times
Comment
Comment