The solution for the OTP system is based on building a Kubernetes cluster on the client's servers. Kubernetes was installed to manage the load at any time and provide enough capacity for all bank users. It enabled the OTP IT infrastructure to scale automatically.
In fact, scaling wasn't the only goal. Kubernetes reserves the copies of the infrastructure for fast recovery on other servers in case of malfunctions. Therefore, downtime is greatly reduced thanks to this automatic reaction.
Simply put, if anything goes wrong that results in the inability of the bank to provide services through their website or app, Kubernetes rolls out the same infrastructure and sets it up on a different server in mere seconds.