📜 ⬆️ ⬇️

VMware vSphere 5.5 and 6.0 performance - settings, considerations. Performance best practices


After reviewing the Perfomance Best Practices for vSphere 5.5 and Perfomance Best Practices for vSphere 6.0 documents, he didn’t reveal any special differences in configuration, as well as something additionally specific to vSphere 6.0.

Most of the writing fits into the standard recommendations of the format “use compatible and certified equipment” and “when seizing a VM, allocate resources (vCPU, vRAM) in the amount not more than necessary”.

Nevertheless, the basic things decided to issue a separate post, slightly restructured, eliminating the "water" and some references and comments that are too specific and for most implementations are more harmful than useful. On the bottom line are the recommendations, tips and considerations, tested and tested in practice and applicable to 90% of VMware vSphere and standalone ESXi infrastructures. Diluted by general considerations and additions.
')

ESXi Host


General recommendations



Bios



Hypervisor

Here it should be borne in mind that both the processor and the memory for each virtual machine have a certain overhead - an additional amount of both, necessary for the work of the VM itself:

- for the vmx process (VM eXecutable);
- for the process of vmm (VM Monitoring) - monitoring the state of the virtual processor, mapping - virtual memory, etc .;
- for operation of virtual VM devices;
- for the operation of other subsystems - kernel, management agents.

The overhead of each machine most of all depends on the amount of its vCPU and the amount of memory. By itself, it is not big, but it is worth bearing in mind. For example, if the entire amount of host memory is occupied or reserved by virtual machines, the response time at the hypervisor level may increase, and there will be problems with the operation of, for example, technologies like DRS.

Virtual machines


The main recommendation is minimum sizing. In the sense of allocating to the virtual machine no more memory and processors than it really needs to work. For in a virtual environment, more resources often lead to worse performance than less. It is difficult to understand and accept immediately, but it is. Main reasons:

- the overhead projector described in the previous section;
- NUMA. If the number of vCPUs corresponds to the number of cores in the NUMA socket and the memory size does not exceed the limits of the NUMA node, then the hypervisor tries to localize the VM inside one NUMA node. This means that memory access will be faster;
- CPU Scheduler. If a host has a lot of VMs with a large number of vCPUs (more in total than the number of physical cores), then the likelihood of such a phenomenon as Co-Stop - slowing down some vCPUs due to the inability to ensure their synchronous operation within a single VM, because there are not enough physical cores for a simultaneous cycle;
- DRS. Machines with a small number of processors and memory transfer from host to host easier and faster. In case of a sudden load jump, it will be easier to rebalance the cluster if it consists of small VMs, and not multi-gigabyte monsters;
- Localization cache. Inside the VM, the guest OS can transfer single-threaded processes between different processors and lose the processor cache.

Conclusions and recommendations:



Guest OS





Storage and Storage


The main thing to consider is that your storage must support the vStorage API for Array Integration (VAAI). In this case, the following will be supported:

- Offload processes of copying, cloning and transferring VMs between LUNs of a single storage or between storages supporting the technology. That is, the process will be executed mostly by the storage itself, not by the host processor and the network.
- acceleration of the zeroing of the blocks when creating Thick Eager Zeroed disks and during the initial filling of Thick Lazy Zeroed and Thin disks.
- Atomic Test and Set (ATS) - blocking not the entire LUN, when changing metadata, but only one sector on the disk. Considering that metadata changes during such processes as switching on / off VM, migration, cloning and expansion of a thin disk, LUN with a large number of VMs on it may not get out of SCSI Lock.
- Unmap - “release” of thin LUN blocks when deleting / transferring data (applies only to LUNs, not vmdk).

Considerations and recommendations:



Virtualization infrastructure


DRS and clusters



vMotion and Storage vMotion

By default, for each active vMotion process, the hypervisor eats off 10% of one processor core. Both on the receiver and on the source. That is, if all the processor resources on the host are in a reservation, there may be problems with vMotion. (With DRS exactly will).

When Storage vMotion, the source datastore is actively reading, and the target is recording. In addition, both datastores are synchronized to record changes inside the VM. Hence the conclusion - if we move the VM from a slow datastor to a fast one, the effect will be noticeable only at the end of the migration. And if from fast to slow, then degradation of performance will come immediately.

vCenter Server

Source: https://habr.com/ru/post/263777/


All Articles