?
Solved

ESX 5.1:  Apache is slow after P2V

Posted on 2013-11-08
12
Medium Priority
?
614 Views
Last Modified: 2013-12-30
Hi All,

I virtualised one of our Windows 2003 server last week and the OS and applications are really sluggish. e.g the start button isnt instant, there a fraction of a second delay.

This would normally be ok, however it's running Apache Tomcat.  The first apache.exe respons really quickly, but the second is really slow (2 seconds) at least double if not tripple it was before the P2V

Any suggestions on what I can check?
0
Comment
Question by:detox1978
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 8
  • 4
12 Comments
 
LVL 123
ID: 39634514
Have you completed ALL post P2V checks, e.g. remove physical server software, removed all device drivers and software which is hidden?

how many vCPUs are now assigned to this VM, 2 or 4?

What is the memory?

see my EE Article

HOW TO:  P2V, V2V for FREE - VMware vCenter Converter Standalone 5.5

Check Task Manager, is CPU at 100%, any rouge processes e.g. WMI?
0
 
LVL 2

Author Comment

by:detox1978
ID: 39634523
>> Have you completed ALL post P2V checks, e.g. remove physical server software, removed all device drivers and software which is hidden?

I think so, but will double check

>> how many vCPUs are now assigned to this VM, 2 or 4?
4

>>What is the memory?
4GB, with the PAE boot.ini switch
0
 
LVL 2

Author Comment

by:detox1978
ID: 39681783
I reduced the CPU count to 2, but that's not helped.

It looks like parent Apache.exe is running ok, but the sub apatch.exe is really slow (3 seconds), once it responds the page loads really fast.


Any ideas?
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
LVL 123
ID: 39681888
what are the overall CPU resources running like?
0
 
LVL 2

Author Comment

by:detox1978
ID: 39682112
It was running at 33% with 4 CPU's so I reduced it to 2 CPU's
0
 
LVL 123
ID: 39682252
Any processes running high?
0
 
LVL 2

Author Comment

by:detox1978
ID: 39682333
CPU load hasnt been too bad

Last 24 Hours
Last 7 days
0
 
LVL 2

Author Comment

by:detox1978
ID: 39682345
I dont know too much about Apache.exe, but there's two of them.  It looks like the first redirects to the second.  Thge first loads instantly, however the second seem to hang for 3 seconds, then loads instantly.

The website that's running on Apache connects to MySQL (also on the same VM.


The VM is running on local disk and read/write speeds seem ok.
0
 
LVL 2

Author Comment

by:detox1978
ID: 39682432
I found this post on another forum

After much research, I may have found the solution. If I'm correct, it was an apache config problem. Specifically, the "ThreadsPerChild" directive. See... http://httpd.apache.org/docs/2.2/platform/windows.html

Because Apache for Windows is multithreaded, it does not use a separate process for each request, as Apache can on Unix. Instead there are usually only two Apache processes running: a parent process, and a child which handles the requests. Within the child process each request is handled by a separate thread.

ThreadsPerChild: This directive is new. It tells the server how many threads it should use. This is the maximum number of connections the server can handle at once, so be sure to set this number high enough for your site if you get a lot of hits. The recommended default is ThreadsPerChild 150, but this must be adjusted to reflect the greatest anticipated number of simultaneous connections to accept.

Turns out, this directive was not set at all in my config and thus defaulted to 64. I confirmed this by viewing the number of threads for the second httpd.exe process in task manager. When the server was hitting more than 64 connections, the excess requests were simply having to wait for a thread to open up. I added ThreadsPerChild 150 in my httpd.conf.

Additionally, I enabled the apache status module http://httpd.apache.org/docs/2.2/mod/mod_status.html

...which, among other things, allows one[b] to see the total number of active request[/b] on the server at any given moment. Right away, I could see spikes of up to 80 active request. Time will tell, but I'm confident that this will resolve my issue. So far, 30 hours without a hiccup.

Open in new window


The ThreadsPerChild was set to 250, so i've reduced it to 150.

I dont know how to  see the total number of active request.  I uncommented the status module and restarted the server.

Any ideas?
0
 
LVL 2

Author Comment

by:detox1978
ID: 39682650
I've managed to get the server status page working.

I might be reading this wrong, but the status page suggests the web server is responding in half a second.

Current Time: Thursday, 28-Nov-2013 03:18:13 GMT Standard Time
Restart Time: Thursday, 28-Nov-2013 03:15:36 GMT Standard Time
Parent Server Generation: 0
Server uptime: 2 minutes 37 seconds
Total accesses: 70 - Total Traffic: 76 kB
.446 requests/sec - 495 B/second - 1111 B/request
4 requests currently being processed, 146 idle workers

Open in new window


Have I read this correct?


If so, what could be causing the delay?
0
 
LVL 2

Author Comment

by:detox1978
ID: 39682653
Is there a list of all the post P2V tasks I need to complete?

This server is around 7 years old, so there's a good chance it's good chance it's full of legacy drivers etc...
0
 
LVL 123

Accepted Solution

by:
Andrew Hancock (VMware vExpert / EE MVE^2) earned 2000 total points
ID: 39682948
if you follow my EE Article, and look at the Articles Linked...

but roughly this...

1. installing VMware Tools (reboot).
2. adding VMXNET3 interface
3. remove E1000 interface.
4. Adding IP Information, DNS, WINs, etc
5. Remove all Hidden Drivers and Devices - Device Management
6. Remove all physical related software if not already done
7. Reboot
8. Set Services to Automatic....final checks before go live...and reboot VM
9. Finally your Done.
0

Featured Post

On Demand Webinar: Networking for the Cloud Era

Did you know SD-WANs can improve network connectivity? Check out this webinar to learn how an SD-WAN simplified, one-click tool can help you migrate and manage data in the cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this article, I will show you HOW TO: Install VMware Tools for Windows on a VMware Windows virtual machine on a VMware vSphere Hypervisor 6.5 (ESXi 6.5) Host Server, using the VMware Host Client. The virtual machine has Windows Server 2016 instal…
When rebooting a vCenters 6.0 and try to connect using vSphere Client we get this issue "Invalid URL: The hostname could not parsed." When we get this error we need to do some changes in the vCenter advanced settings to fix the issue.
Teach the user how to use vSphere Update Manager to update the VMware Tools and virtual machine hardware version Open vSphere Client: Review manual processes for updating VMware Tools and virtual hardware versions: Create a new baseline group in vSp…
In this video tutorial I show you the main steps to install and configure  a VMware ESXi6.0 server. The video has my comments as text on the screen and you can pause anytime when needed. Hope this will be helpful. Verify that your hardware and BIO…
Suggested Courses

764 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question