You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cloudstack.apache.org by Qian Shaohua <wi...@foxmail.com> on 2015/10/15 10:01:18 UTC

CloudStack 4.5.2 with tomcat6 out of memory

Hi all,

 

Our CloudStack 4.5.2 with tomcat6 was constantly running out of memory in a
few days. 

We changed JAVA_OPS to "-Xmx4g" in tomcat6.conf. But it didn't help.

We used apache benchmark to send 100000 http requests to a fresh installed
CloudStack 4.5.2 with no zone setup.

   ab -n 100000 -c 1 http://localhost:8080/client/

The CS always run out of memory after 35,000 requests.

The same to a fresh CloudStack 4.3.0.

A clean tomcat6 on another CentOS host passed the ab test.

Finally, we installed tomcat7 and change CS to use tomcat7. Both CS 4.5.2
and CS 4.3.0 passed ab test.

We suppose it is a serious issue.

Is there any idea?

 

Our setup:

CS 4.5.2/Centos 6.5/Tomcat 6.0.24

Tomcat 7.0.33

 

--

Qian


Re: CloudStack 4.5.2 with tomcat6 out of memory

Posted by Laszlo Hornyak <la...@gmail.com>.
Hi,

I think the reason is that the cloudstack UI index.jsp creates a session
(which is the default behavior of a JSP page unfortunately) and if the
container keeps the session data wthout overflowing to disk then you can
use it to OOM the server very easily.


curl http://localhost:8080/client/ -v > /dev/null
  % Total    % Received % Xferd  Average Speed   Time    Time     Time
 Current
                                 Dload  Upload   Total   Spent    Left
 Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--
  0*   Trying ::1...
* Connected to localhost (::1) port 8080 (#0)
> GET /client/ HTTP/1.1
> User-Agent: curl/7.40.0
> Host: localhost:8080
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Type: text/html; charset=utf-8
< Expires: Thu, 01-Jan-1970 00:00:00 GMT
< Set-Cookie: JSESSIONID=vzv1rka5gdo2r607ujza192x;Path=/client
< Transfer-Encoding: chunked
< Server: Jetty(6.1.26)
<


I send a PR on this and will see what the guys think, but this might be
something to consider if you have a public cloudstack server.

Best regards,
Laszlo

On Thu, Oct 15, 2015 at 10:01 AM, Qian Shaohua <wi...@foxmail.com> wrote:

> Hi all,
>
>
>
> Our CloudStack 4.5.2 with tomcat6 was constantly running out of memory in a
> few days.
>
> We changed JAVA_OPS to "-Xmx4g" in tomcat6.conf. But it didn't help.
>
> We used apache benchmark to send 100000 http requests to a fresh installed
> CloudStack 4.5.2 with no zone setup.
>
>    ab -n 100000 -c 1 http://localhost:8080/client/
>
> The CS always run out of memory after 35,000 requests.
>
> The same to a fresh CloudStack 4.3.0.
>
> A clean tomcat6 on another CentOS host passed the ab test.
>
> Finally, we installed tomcat7 and change CS to use tomcat7. Both CS 4.5.2
> and CS 4.3.0 passed ab test.
>
> We suppose it is a serious issue.
>
> Is there any idea?
>
>
>
> Our setup:
>
> CS 4.5.2/Centos 6.5/Tomcat 6.0.24
>
> Tomcat 7.0.33
>
>
>
> --
>
> Qian
>
>


-- 

EOF

Re: CloudStack 4.5.2 with tomcat6 out of memory

Posted by Laszlo Hornyak <la...@gmail.com>.
Hi,

I think the reason is that the cloudstack UI index.jsp creates a session
(which is the default behavior of a JSP page unfortunately) and if the
container keeps the session data wthout overflowing to disk then you can
use it to OOM the server very easily.


curl http://localhost:8080/client/ -v > /dev/null
  % Total    % Received % Xferd  Average Speed   Time    Time     Time
 Current
                                 Dload  Upload   Total   Spent    Left
 Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--
  0*   Trying ::1...
* Connected to localhost (::1) port 8080 (#0)
> GET /client/ HTTP/1.1
> User-Agent: curl/7.40.0
> Host: localhost:8080
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Type: text/html; charset=utf-8
< Expires: Thu, 01-Jan-1970 00:00:00 GMT
< Set-Cookie: JSESSIONID=vzv1rka5gdo2r607ujza192x;Path=/client
< Transfer-Encoding: chunked
< Server: Jetty(6.1.26)
<


I send a PR on this and will see what the guys think, but this might be
something to consider if you have a public cloudstack server.

Best regards,
Laszlo

On Thu, Oct 15, 2015 at 10:01 AM, Qian Shaohua <wi...@foxmail.com> wrote:

> Hi all,
>
>
>
> Our CloudStack 4.5.2 with tomcat6 was constantly running out of memory in a
> few days.
>
> We changed JAVA_OPS to "-Xmx4g" in tomcat6.conf. But it didn't help.
>
> We used apache benchmark to send 100000 http requests to a fresh installed
> CloudStack 4.5.2 with no zone setup.
>
>    ab -n 100000 -c 1 http://localhost:8080/client/
>
> The CS always run out of memory after 35,000 requests.
>
> The same to a fresh CloudStack 4.3.0.
>
> A clean tomcat6 on another CentOS host passed the ab test.
>
> Finally, we installed tomcat7 and change CS to use tomcat7. Both CS 4.5.2
> and CS 4.3.0 passed ab test.
>
> We suppose it is a serious issue.
>
> Is there any idea?
>
>
>
> Our setup:
>
> CS 4.5.2/Centos 6.5/Tomcat 6.0.24
>
> Tomcat 7.0.33
>
>
>
> --
>
> Qian
>
>


-- 

EOF