Boost your homelab VMware vCenter 6.x and 7.x save ressources

In guide will you show how to save resources by downsizing your VMware vCenter 6.7 in your homelab. The target is to save resources and get a better performance. I know in homelabs normally there are no unlimited resources. First of all, I would like to point out that this is not an official guide from VMware. This configuration should not be used in production. My vCenter is running on VMware Workstation. I think the biggest problem within a homelab is the RAM, so I will focus mainly on that in this articel.

If you want to check out the guide how to depoloy it in your environment, you can read this post. – Deploy VMware vCenter on VMware Workstation –

Explanation of the default requirements

If you deploy a vCenter Server appliance 6.7 the minimum deployment will be 2 vCPUs and 10GB of RAM. In my case I have done a tiny deployment, so it is necessary to not edit the ressources at the deployment time. Otherwise it may happen that the installation fails.

Here you can see the Hardware Requirements for a vCenter Server Appliance with an Embedded or External Platform Services Controller


Number of vCPUs
Memory
Tiny environment (up to 10 hosts or 100 virtual machines)210 GB
Small environment (up to 100 hosts or 1,000 virtual machines)416 GB
Medium environment (up to 400 hosts or 4,000 virtual machine)824 GB
Large environment (up to 1,000 hosts or 10,000 virtual machines)1632 GB
X-Large environment (up to 2,000 hosts or 35,000 virtual machines)2448 GB
https://docs.vmware.com/en/VMware-vSphere/6.7/com.vmware.vcenter.install.doc/GUID-88571D8A-46E1-464D-A349-4DC43DCAF320.html

Downsizing the services

To make the first steps in downsizing our vCenter appliance, we will check how the memory is allocated to the services. The easiest way to do this is to establish an SSH session on the vCenter appliance. To do this, I first enable SSH login on the appliance. To do this, log in to the vCenter appliance via the URL: https://YOURVCENTERAPPLIANCE:5480 with the root user. Go to “Access” and activate SSH Login.

vcenter appliance active the ssh login

Get an overview on vCenter memory

First, let us check the reservation of memory on your vCenter appliance. You can do that by logging in via ssh and enter “shell”. Now you will see, how the memory will be reservced to the single services. In this case 10GB. You can see it in the Total section.

If you want to know which services are required or running on vCenter you can check this link to get the well known names: https://kb.vmware.com/s/article/2109887





root@vcenter [ ~ ]# cloudvm-ram-size -l
 vmware-vpxd-svcs     =     1045
 vmware-stsd          =      538
 vmware-postgres-archiver =        5
 vmware-netdumper     =       20
 vmware-mbcs          =      128
 vmware-updatemgr     =      164
 vmware-analytics     =      192
 vmware-vapi-endpoint =      256
 vmware-certificatemanagement =       70
 vmware-cm            =      228
 vsphere-ui           =      853
 vmware-vmon          =        5
 vmdnsd               =       20
 vmware-rbd-watchdog  =      100
 vmware-cis-license   =      192
 vmware-sca           =      128
 vmware-imagebuilder  =       50
 vmcad                =      224
 vmware-vpostgres     =      699
 vmware-topologysvc   =      120
 vmonapi              =       15
 vmware-perfcharts    =      357
 vmware-vsm           =      160
 vmware-vsan-health   =      100
 vmware-sts-idmd      =      328
 vmware-content-library =      473
 vmware-vpxd          =     1024
 vmware-statsmonitor  =       10
 vmafdd               =       22
 vsphere-client       =      853
 vmware-trustmanagement =       70
 vmware-eam           =      168
 vmdird               =       22
 vmware-rhttpproxy    =       31
 OS                   =      220
 vmware-hvc           =       40
 vsan-dps             =      246
 vmware-pod           =      100
 vcha                 =       46
 vmware-sps           =      478
 applmgmt             =      200
 TOTAL(MB)            =    10000

Stopped services

If you take a look into your VMware vCenter 6.7 GUI, you will see a view services which are stopped by default after deployment. You can find this in the section “Serivces” in the Admin GUI of your appliance.

If you sum up this services. There are alredy 344 MB RAM for the following services:

  • Auto Deploy
  • ImageBuilder Service
  • VMware Message Bus Configuration Service
  • VMware vCenter High Availability
  • VMware vSphere ESXi Dump Collector

vCenter disabled or stopped services

Disable services

In my case I can disable the followin Services. Because I don´t use the features in my homelab. I will post a link with further information if one was available. And how to disable the service.

VMware vSAN Data Protection Service

Explanation: feature not used
More information: https://kb.vmware.com/s/article/2145308

Command to disalbe the service:

service vmware-vsan-health stop
chkconfig vmware-vsan-health off

VMware Performance Charts Service

Explanation: no need in my home lab

Command to disalbe the service:

service vmware-perfcharts stop
chkconfig vmware-perfcharts off

Content Library Service

Explanation: no need in my home lab
Command to disalbe the service:

service vmware-content-library stop
chkconfig vmware-content-library off

After disabling this service you will get an API Warning:

VMware vSphere Update Manager

Explanation: no need in my home lab, if I need it, I can activate it again

Command to disalbe the service:

service vmware-updatemgr stop
chkconfig vmware-updatemgr off

VMware vSphere Authentication Proxy

Explanation: no need in my home lab, if I need it, I can activate it again
More information: VMware Docs Link
Command to disalbe the service:

service service vmcam stop stop
chkconfig vmcam  off

Ohter recomandations

There are a lot of other services you can disalbe in a home lab. In my case for example want to use the HTML5 Client, so I leave it running. If you don´t need it, you can also disable the service für the UI.

Summary of vCenter downsizing

After that, we have 1682 MB saved for my home labe. My Appliace is running with 6 GB of ram without performance impacts on my lab. You can also try a smaller configuration, but in my case lower than 6 GB causes performance issues.

Sounds that not good? 4 GB less of memory. It´s one more server you can run 😉 ! Try it and let my know your feedback on this article in the comments.

Update! Disable services for vCenter 7.x

In vCenter 7.x you will have the problem, that the services are starting after a reboot of the applicane. Even if you have disabled the services as shown above.

Here you can find the guide to edit and disable your services as described above for VMware vCenter 7.x.

Disable vCenter 7.x Services

To disable the services on VMware vCenter 7.x you have to open a SSH session. If you have not activated the access to ssh yet, you should do that now over GUI or console of the appliance.

Thanks to Marcel Düssil from Pureflash.blog for the hint after testing the article with vCenter 7.0. Also check out his Blog, he is a very talented young guy.

To get an overview on the services running on your appliance you can use the following command.

shell
systemctl 
# for more details use this
systemctl status

Services are shown up as *.service

Now you can go to /etc/vmware/vmware-vmon/svcCfgfiles/ and edit the json for the service you want to disalbe. You can use the same services shown on the beginning of the article. Here is a list of the files:

Service NameService JSON
vSAN Data Protection Service/etc/vmware/vmware-vmon/svcCfgfiles/vsan-dps.json
Performance Charts Service/etc/vmware/vmware-vmon/svcCfgfiles/perfcharts.json
Update Manager/etc/vmware/vmware-vmon/svcCfgfiles/updatemgr.json
Authentication Proxy/etc/vmware/vmware-vmon/svcCfgfiles/vmcam.json
Content library/etc/vmware/vmware-vmon/svcCfgfiles/vdcs.json

Now open the json file with VI and go to the “StartupType” Section

Replace the “AUTOMATIC” Starttype with “DISABLED”.

Now you can restart your appliance and check out if the desired services are disabled persistently.

Check it out and try it yourself. Feel free to test it on your own and give me a feedback how it works for you. Also check out my other posts. Have fun. Feel free to share my site or post on social media. You can also follow me on Twitter @thomaspreischl

7 thoughts on “Boost your homelab VMware vCenter 6.x and 7.x save ressources”

  1. So how did you get your ram down to 6144 I see in Summary of vCenter downsizing that it’s down to that size which is what I want to I don’t need vCSA to be 10 to 12 gb.

    Thanks in Advance,
    Michael

    1. just power the vcenter down, go to the host it was running on and edit the settings. change the memory allocation. you will need to put it in MB instead of GB because vcenter wants it in increments of 4gb. but if you put it in as MB – 6144… it will be fine. then start the vcenter back up

  2. Editing the json files with heap resize (Xms, Xmx) will help down consumption a bit more. Current heap sizes can be obtained from process status (and it is in some of this files).

Leave a Comment

Your email address will not be published. Required fields are marked *