Tag: Scalability

Operating systems and vertical scaling

Scalability in general can be achieved through vertical or horizontal scaling. Vertical scaling also known as scaling up means adding more resources to the same machine. Horizontal scaling is also known as scaling out, which means creating more instances of the same machine. Scaling in IaaS Cloud is typically achieved through horizontal scaling. This can be done manually by users provisioning new virtual machines or automatically according to certain infrastructure metrics. Capacity provisioned this way can never exactly fit the software needs and that is why vertical scaling is a very desirable feature to be supported by IaaS Cloud. With automated vertical scaling, more memory and CPUs could be added to the virtual machines on the fly. Capacity provisioned this way would better fit the software needs.

Adding memory and CPU on the fly is often referred to as hot add. Windows operating systems supporting this feature are listed below. None of them supports hot removal of memory or CPUs. On the other hand hot adding and removing CPUs and memory is well supported in Linux operating systems – especially in newer versions of the Linux kernel.

Operating system Hot add memory Hot remove memory Hot add CPU Hot remove CPU
Linux OS with CPU hotplug and memory hotplug support (SLES 11, RHEL 6, and others) Yes Yes Yes Yes
Windows Server 2008 Datacenter Edition R2 x64 Yes No Yes No
Windows Server 2008 Enterprise Edition R2 x64 Yes No No No
Windows Server 2008 Datacenter Edition x64 Yes No Yes No
Windows Server 2008 Datacenter Edition x86 Yes No No No
Windows Server 2008 Enterprise Edition x64 Yes No No No
Windows Server 2008 Enterprise Edition x86 Yes No No No
Windows Server 2003 Enterprise Edition x64 Yes No No No
Windows Server 2003 Enterprise Edition x86 Yes No No No

, , Hide