COVID-19 has disrupted all businesses irrespective of their scale and size, forcing many organizations to re-strategize and realign their business objectives. Enterprises need to constantly learn, adapt, and change. Recently, one of our customers, a popular brewing retailer, discussed their business vision and roadmap with us. Their brewery business saw a sudden surge in demand as their brewpub business moved completely online during the pandemic. Their mid-size business which used to get 500 orders a week rose to a massive 10,000 orders in a month. Although the footfall has reduced, they have reinvented their business to deliver everything online and launched various online promotional campaigns to lure customers. They have already moved their app on the cloud to leverage flexibility to scale on demand.
Apart from various cloud benefits which they can leverage (faster collaboration, reliability, performance, and simplified operations), including auto scaling, one of their prime concerns was around managing the promotional online campaigns, as it was observed that the volume of data upload increased significantly in this duration.
As the workload demand fluctuates due to any of the seasonal or business cyclical factors like festivities, customer demand, multiple channels, or even mega sales, it’s important for the resources to auto-scale effectively with minimum overheads. By having the flexibility to scale, IT engineers can enable the growth of backend infrastructure as per business demands.
Achieving scaling is easier said than done. Presumed to be just a matter of a few clicks or to make a call to the service or cloud provider, it isn’t quite as easy for the IT team. Few of the challenges that organizations face for application and corresponding infrastructure scaling are as follows:
Application footprint– The number of applications within the ecosystem are growing, with not all apps being governed and owned by central IT. Low-code, no-code power apps can be published in a matter of seconds now. While the current scenario is looked at as a new era for apps, the moment the application is slow, IT is roped in. Keeping a tab on how many apps are there in the ecosystem is vital to avoid the network blame game later.
Availability and Performance of applications– Businesses these days can’t afford to have a longer downtime of applications, the bearable duration expected being nearly zero or minimal. Besides the annual or bi-annual downtime windows, apps are technically available 24 X 7, 365 days. The primary concern now is their responsiveness. Enterprise employees are tired of slower applications, which can lead to a negative perception as they become less reliable and lack good performance levels.
Identity Access Management – It’s easy to manage IAM if you have deployed around 100 employees spanning 2 locations. But as an organization increases its employee strength close to 5000 employees across multiple locations, it becomes mandatory to deploy solutions on the cloud to enable applications as per the scalability needs.
Hybrid/ Multi Cloud Management – Currently, organizations require a hybrid combination of legacy on-premises infrastructure and cloud environment. It could either be on-premises solutions-heavy or cloud-heavy infrastructure but mostly, it becomes a cloud-heavy one as the cloud providers own the foundation infrastructure. Organizations need to build a scalable infrastructure but at the same time looking at developing solutions to monitor the performance of their applications, networks and servers in hybrid cloud environments without sacrificing the control and visibility of their in-house devices. Converged teams with site reliability engineering (SRE) and platform reliability engineering (PRE) capabilities are becoming the need of the hour to keep a tight control over infrastructure management.
Cost Efficiency – Enterprises should have a cost-effective IT expenditure and at the same time, should be able to bolster their performance and infrastructure reliability. As the market evolves, organizations should have a scalable IT ecosystem in place. This would allow them to add new SaaS products/ features to match market requirements in an economic manner.
As we are already aware, the most utilized ways of scaling are horizontal and vertical. To understand how diagonal scaling works, its crucial to revisit these and understand the unique benefits it has.
Horizontal scaling (Scaling out)
Assume you have a system with 16 GB RAM and 1 TB hard disk space. Now if you want to upgrade your system to 64 GB RAM and 4 TB disk space, adding three more servers with similar configuration will enable you to achieve the desired capacity on demand. Some of the key advantages of horizontal scaling are as follows:
- Low cost in comparison to vertical scaling
- Easier to run fault tolerance
- Ability to scale out as per requirement
- High availability
- Able to retain existing infrastructure
Figure 1: Horizontal Scaling
Vertical scaling (Scaling up)
Vertical scaling is not about adding more instances but rather about increasing the power of existing compute/servers e.g., installing extra RAM, storage, increasing CPU cores, or processing power of the system to bolster the computing power of a single server. However, there is a limit to how much capacity can be added to a single server in case of virtual machines. Moreover, beyond a point, increasing power of a single component might not increase its overall output. Also, it’s quicker to increase the power of resources with a single machine without losing on the existing investment on infrastructure.
Figure 2: Vertical Scaling
Diagonal scaling: Combining the best of both vertical and horizontal scaling
Diagonal scaling comes to the rescue when the workload is observed to be increasing in spurts (from 2,000 to 10,000 orders a month) to scale as per demand. When CPU utilization is in control, a load balancer can increase or decrease the capacity with the same configuration without any challenges. When more time is being taken to process heavy videos and files uploaded during the campaign, one of the processes may need more compute power, but the rest can run using the existing compute configuration. Then, this increased workload starts throttling the instance.
In this scenario, diagonal scaling comes to help. Through automation scripts, the AMI (Amazon Machine Images) parameters of the image file can be changed. Without manual intervention, which at times can lead to induced errors, the scripts would change the compute size (8 GB RAM, 1 TB storage) before spinning up instances via custom pipelines to have higher compute (16 GB RAM, 2 TB storage). Thus, some instances can have a lesser compute and others can have more to accommodate certain processes which require more computational power.
Figure 3: Diagonal Scaling
Benefits of diagonal scaling
Diagonal scaling helps you combine the horizontal and vertical scaling in cloud computing. With diagonal scaling, customers get the flexibility of adding up more resources according to the needs of specific business scenarios. When there is a surge in traffic, the requirements are met. When traffic decreases, the configuration goes back to normal. It gives the flexibility to increase compute of certain workloads (which need additional resources to battle the spurt) as well as adding new compute as per demand simultaneously.
This type of scaling introduces enhanced budgeting and cost effectiveness for environments and businesses dealing with variable workload volumes.
HCLTech: A one-stop shop for all your scaling needs
The entire automation scaling mechanism along with many others for landing zone creation with standardized cloud-native architecture is incorporated within HCLTech’s key IPs and accelerators, which has helped many reputed clients with wide global presence as well, in addition to our popular brewery customer.
HCLTech’s Cloud Smart approach helps its customers adopt services which provide Day 0 (consulting), Day 1 (design and architecture), and Day 2 (continuous build and run) services, catering to understand their specific challenges, technology constraints, and business transformation vision. Cloud consumption management via HCLTech’s FinOps ensures that customers get the most value out of every dollar spent in cloud. HCLTech has created an adaptive portfolio of innovative cloud services, driven by intelligent automation and a powerful partner ecosystem (Microsoft, Google, AWS, and others) to address all the business-specific scalability needs of its customers.
Learn more about HCLTech Cloud Smart.