Monolith to Microservices: Why Kubernetes on Cloud?[Business Need]
Saving money

Overview
The software industry or in fact any industry is governed by only one rule: profit. To make a business profitable you can do two things:
- Make more money by selling more
- Spend Less on every sell
While the first gives you growth, the second gives you margin.
How and why Kubernetes
There are hundreds of reasons why one should move to cloud and use kubernetes. Most of the blogs you find online would talk about only the technical problems k8s solves. However, I believe Kubernetes is gaining momentum not because the problems it solves at the technical front but the scale of cost cutting it provides at the business front.
Explaining need by example
Let us take a hypothetical use case which a VP or folks from senior management can understand.
TradeStok Ltd. is an investment consultancy firm which provides a platform for individuals to make an investment in various schemes like Mutual Funds, Fixed Deposit etc. It also provides TradeStok coins which are similar to a cryptocurrency(not really) that users can buy and sell in real time.
TradeStok maintains its own datacenters and manages its own servers. The trend of the user accessing the platform and making investment is well analysed. Every 1st week of the month the traffic to the server increases by 10x. During festivals like Christmas and Diwali when the country’s workforce receives bonuses the load on the server increases to 25x. During holiday seasons the load on TradeStok coins server increases to 200x.
Since TradeStok does not want to lose a customer they have decided to scale their servers to handle the peak load. While they made a good profit during holidays, the overall business started plummeting after January. They came up with a plan of buying/leasing servers before holidays and reselling them afterwards. This strategy has itself produced 2 big challenges:
- The cost of servers devaluates to 70% after use
- Finding buyers is very difficult
Some other challenges they face are:
- Expenses in the Audit Process
- Security check
- Cost of maintaining a support team
- Transportation
- Complying with Regulations
and many others.
They are burning more % of the money on maintenance of their servers than they used to do when their business was 10 times smaller.
Although the revenue is increasing the profit % is decreasing every day. As a result, the management is forced to look at cost-cutting options.
Bam! Here comes the need for kubernetes on cloud. All(Okay I go carried away, let us say most) of the problems listed in preceding sections can be solved by using kubernetes on cloud. How? Let us investigate two of them.
Challenge 1: Scaling servers
With K8s you can spin up multiple server instances in seconds. This can be done dynamically by setting the auto scaling configuration against the average load on a server. However, this still does not solve the problem of maintaining the underlying infrastructure. If TradeStok starts using cloud infrastructure let us say AWS then the burden of maintaining the infrastructure with huge investments is mitigated. Platforms such as AWS or Google cloud provide node auto-scaling feature i.e. more machines are added to existing infrastructure as the load increases.
Therefore, the challenges pertaining to scaling up servers, scaling them down, maintaining them during the idle period, finding buyers is all solved.
How would this look in numbers? Let us see. Assume that the company spends $500k per month for an infra which can support the peak load. During non-peak seasons the infra required costs only $50k per month. Assuming that the peak season time duration is anywhere 10–30 days, let’s say one month. The actual infra cost should be $50k x 11 + $500k x 1 = ~$1m but the company is spending ~$6m in one year.
Even if the cost of cloud infra is 2 times the effective infra cost would be:
$50k x 2 x 11 + $500k x 2 x 1 =~$2m. So, the company would save $4m on infra maintenance.(Shocked? You better be!)
Challenge 2: Security and Audit
Since the company has deferred the maintenance of hardware infrastructure to the vendor, the headache of conforming to infrastructure security and regulatory compliance would be taken care of by the vendor. Not only that but the regulations which force companies to upgrade the hardware(to avoid any hardware-level security issues) are no more problems of TradeStok.
Now the company has to spend its resources only on the software and business audits. A company of this size would usually spend several thousand dollars on an audit. So using k8s on cloud would save the company a big piece of gold.
Summary
Any big company which needs to scale its infra on demand is better off using k8s on cloud.
What’s is next
In the next story, I will talk about the technical need of k8s on cloud. Post that I will start writing about the challenges of migration. Stay tuned!