Tuesday, May 28, 2013

Trick to get huge audio book discounts


Okay, this is a little off topic for this blog, but I think it is good information.  I'm a reader and also SciFi author and I’ve just recently found that I love audio books.  I figured they were for the hearing impaired or for workers with long commutes.  My commute is only about 15 minutes to work.  However, when working to produce the audio book for The Curse of Europa, I figured I should listen to an audio book or two.  Now I’m hooked!!  Even though my commute is only 15 minutes, that is still a good 30 minutes a day.  If I go to lunch I may listen again in my car, or take headphones and listen while I eat.  It’s great because it’s hard to find time to read and it is easy now to plug reading into time that is otherwise “wasted”, such as driving a car.

On our trip to Florida (driving from Michigan), it was great.  It kept me awake better than the radio.  Even laying in the sun.  Sure, you can easily read, but it sure is more relaxing to just lay back and listen (especially if the audio book production is top notch.)  Many narrators will do certain voices for the various characters.  Depending on the narrator, sometimes this can be great, sometimes a bit weird.  If you’ve got a good narrator if adds a whole new level to the enjoyment of the book.

So what is this “trick?”  


It’s not really a trick I guess.  There’s nothing devious or deceitful about it. It’s taking advantage of special pricing if you do things in the correct order.

Read entire article on my Author Blog: http://bpkayser.wordpress.com/2013/05/24/audio-book-disc

Thursday, April 11, 2013

VMware VirtualCenter Server - high memory utilization in Java

This applies to vSphere vCenter Server version 5.1.x but may pertain to other versions.

I didn't find much info out there when Goggling so I'm adding what I found here.  I searched for:
vCenter server high memory utilization
VMware vCenter java high memory
VirtualCenter Server out of memory
VMWare vCenter Inventory Service memory

We upgraded our vCenter server to  5.1.0-947939, after which the server (with 4GB of RAM) was starving for memory.  There were 5 instances of JAVA.EXE, each eating up a lot of RAM.  The worst single instance of JAVA was using 1.5GB of RAM, the next one was nearly at 1GB.

In my searches I eventually found someone that was able to tweak the Java Heap Size default.  There are many vCenter Server services that use Tomcat and Java, when you add them all up... ouch, it consumes all the RAM and brings the server to a grind.

What I found:
The main culprit was the "VMWare vCenter Inventory Service."  This had the 1.5GB Java process.  I found you could actually shut it down and the vSphere Client would still work.  I won't pretend to know exactly what this service is for; but it seems to store the client INVENTORY data in a memory cache.  I have only about 30 VMs and 3 hosts, hardly needing 1.5GB of cached info I would guess.

In addition to the Inventory Service, I found you could shut down the "VMware VirtualCenter Managment Webservices" also; however, this will cause an IE type error message in the vSphere Client if you try to look at OVERVIEW on the PERFORMANCE tab.

If you don't want to use the web-client, you can shut down "VMware vSphere Web Client" for a big chunk of memory also.  Then if you do that, you also don't need "VMwareVCMSDS" which provides LDAP services (but it doesn't use much memory.)  If you want to use the Web Client, you do need the LDAP service running though.

The other services are as such:
  • VMware Log Browser: not needed if you're not using the web client.  Not a huge hog though.
  • VMware USB Arbitration Service: not a huge hog.  
  • VMware vCenter Orchestrator Configuration:  I don't use this, I have it disabled so I don't know what memory impact it has. 
  • VMware VirtualCenter Server:  The main service - you need this! 
  • vCenter Single Sign On - does eat up some memory, but is nice to have.
  • VMware vSphere Profile-Driven Storage Service - I'm not really sure what this does to be honest.  I turned it off to no noticable issues.  
THE FIX
If you want the vCenter Inventory Service, and the Web Client running, there is a way to trim down the memory that JAVA uses.  You can tweak config files (wrapper.conf) on the vCenter Server.   Again, the biggest hog is the Inventory Service.  Here is how to reduce the memory requirements. 
  1. Go to: C:\Program Files\VMware\Infrastructure\Inventory Service\conf
  2. Save a backup copy of WRAPPER.CONF
  3. Edit WRAPPER.CONF with a text editor
  4. Look for the section: # Maximum Java Heap Size (in MB)
  5. Modify "wrapper.java.maxmemory"  Mine was set to 3072, I changed mine to 384.  
  6. Save the file.
  7. Open Task Manager if you wish, and look for the JAVA process using the most RAM.
  8. Shutdown / Restart the service: VMware vCenter Inventory Service.
  9. Observe the memory difference.  
It didn't comply 100% to the setting for me, but it did keep it to around 500MB in my case.  

You can also tweak the other services the same way.
  • Webclient - Edit: C:\Program Files\VMware\Infrastructure\vSphereWebClient\server\bin\service\conf\wrapper.conf
  • Management Webservices - Edit: C:\Program Files\VMware\Infrastructure\tomcat\conf\wrapper.conf
  • Log Browser - Edit: C:\Program Files\VMware\Infrastructure\vSphereWebClient\logbrowser\conf\wrapper.conf
If the MAXMEMORY value isn't there you can add it.

I kept all the services running and just tweaked the wrapper.conf files.  My server went from 3.95GB of ram used (and running like crap) to 2.8GB used and running pretty good. 

If you don't have many hosts and VMs you could have it running lean and mean (under 1GB of RAM) by just running the services below.  This may be at the expense of vSphere Client performance and not seeing overview performance charts. 
  • vCenter Single Sign On
  • VMware USB Arbitration Service
  • VMware VirtualCenter Server
  • I also SQL on this box.  

Tuesday, March 12, 2013

Does the AMD 2356 processor support EVC


Mr. Google couldn't directly answer this question for me so I figured I'd throw it out here just in case someone else wanted the direct answer.  

I had three HP Proliant DL365 G5 servers, with dual Quad-Code AMD Opteron 2356 Processors as my VMware hosts.  They went into production in 2008 and served us well.  I added a new server into the mix, an HP Proliant DL165 G7, with dual AMD Opteron 6220 Processors. 

They did not seem to play well with VMware’s vMotion so I figured I needed to enable the Enhanced vMotion Compatibility (EVC) mode.  Well, the older host didn’t seem compatible with that either.  In vSphere Client, when you look at the SUMMARY of the host, there is a heading “VMware EVC Mode:”  It will say “Disabled”, of course, if it isn’t enabled, but next to it there is a info box.  When you click that it says: “Supported EVC Modes:  EVC Not Supported”.  Drab! 

Not to be discouraged I Googled around but couldn’t find anything that specifically said anything about my older hosts processors supporting EVC or not.  But I did find a VMware tool (and ISO) that creates a boot CD that will tell you for sure what the deal is. 

So, with fingers crossed, I booted-up the old and reliable host with the newly burned bootable CD.  Ah, look at all those YESes!!  


But SNAP – the final nail! “Supported EVC Modes: None

I guess I’m going server shopping… 

About Me

My photo
Science Fiction Author / Vice President of Technology for The Christman Company