What is a noisy neighbor (cloud computing performance)?
Noisy neighbor is a phrase that describes a cloud computing infrastructure co-tenant that monopolizes bandwidth, disk I/O, CPU and other resources which can negatively affect other users' cloud performance. The noisy neighbor effect causes other VMs and applications that share the infrastructure with the noisy neighbor to suffer from uneven cloud network performance.
The cloud is a multi-tenant environment, which means that a single architecture hosts multiple customers' applications and data. The noisy neighbor effect occurs when an application or VM uses the majority of available resources and causes network performance issues for others on the shared infrastructure.
A lack of bandwidth is one cause of network performance issues. Bandwidth carries data throughout a network, so when one application or instance uses too much, other applications suffer from slow speeds or latency. Noisy neighbor can affect web hosting, databases, networks, storage and servers.
To help detect a noisy neighbor issue, keep an eye on a spike in resource usage, track resource consumption and pay attention to metrics such as server CPU and memory usage.
How to avoid noisy neighbors
One way to avoid the noisy neighbor effect is to use a bare-metal cloud. The bare-metal cloud runs one application at a time directly on the hardware. This creates a single-tenant environment and eliminates noisy neighbors. While single-tenant environments avoid the noisy neighbor effect, they do not solve the problem. Infrastructure over-commitment, or when an environment is shared by too many applications, limits overall cloud performance.
Another way to avoid noisy neighbors in the cloud is to ensure an application receives the necessary resources by moving workloads across physical servers. In addition, storage quality of service (QoS) controls a VM's input/output operations per second (IOPS), which can limit the noisy neighbor effect. Set IOPS limits can control the amount of resources each VM receives. Therefore, no single VM, application or instance monopolizes resources and hinders the performance of others.