Every software application has its own minimum set of requirements like CPU, storage, memory, networking, and power. These have to be integrated into a specific configuration to allow the smooth functioning of the software application. When data traffic becomes higher than expected, higher resources are required. There may not be enough time to provision new resources manually; in such cases, an auto-scaling system is required for managing these situations. Cloud computing means using data, programs, and other resources pooled in the data center and accessed through the internet instead of the user's computer. In the chapter, the authors discussed some aspects related to cloud computing like cloud workload, load balancing, load balancing algorithms, scaling techniques, and auto-scaling to fulfill cloud workload balancing requirements.