More on Benefits and Challenges of Cloud Computing
Here is the revised version of the bar-chart I posted in the previous blog showing the evolution of IT to explain the benefits and challenges of cloud computing, and showing why and how we got to cloud computing.
Dedicated Physical Servers: Each application owner bought servers for running their application/s.
Physical Server Consolidation: Moving from physical servers to dedicated servers to consolidated physical servers resulted in greater server utilization, however it increased time to market significantly as multiple applications sharing same server have to worry about configuration management issues; deploying patches and changes required all application owners to test their apps for impact.
Virtualization: Virtualization improved time to market as it allowed each application owner to get a virtual server (slice of the physical server) and make changes (installing patches, libs etc.) without impacting other application owner running a different virtual server on the same physical machine. However, virtualization increased management complexity as for each physical server IT team has to manage multiple virtual servers.
Private Cloud (in house): Going from virtualization to private cloud is basically a step to provide self service capabilities to the application owners. It reduces time to market however, it also increases the management complexity and increases need for transparency, as it adds another layer of abstraction.
Public Cloud: Using cloud (public) is the only way to reduce fixed costs, as in all other scenarios you have to build for peak capacity.
- Benefits of the Cloud: Lower fixed and overall costs, shorter time to market, higher infrastructure utilization.
- Challenges of the Cloud: Additional management complexity due to scale and distributed nature. Increased need for transparency and security.
To fully take advantage of the cloud we need to be able to address the challenges of cloud computing. Security challenges in public cloud can be mitigated by using existing security technologies, e.g. private network within the public cloud, data encryption, etc. The transparency and management challenges can be mitigated by using the top down application centric management.