One of the biggest challenge in cloud adoption is moving the existing application to the cloud. I had the opportunity to do that with one of the existing applications. One of the most important aspect is to get the buy-in from the management and application management groups.
Once we had the will, the vision and commitment to do the move, we were able to get it done. Of course the path was not easy and filled with lot of challenges. One of the key factor is that most of the existing applications are not written with cloud in mind and do not follow the principles of service oriented architecture (SOA) or design. The key was also in understanding that at some point application will move to the next level with SOA model.
Challenges at hand were: move existing setup as is with minimal interruption to the cloud and plan out application phase – II to make it cloud ready application. Of course the second part was more of a business strategic decision but it definitely helped with pushing the first one.
While virtualized environment comes with its own benefits, there is also a loss of granular control for the application team for there are more regulations put into place and a requirement to keep the environment pristine. We used private cloud solution to limit the impact of moving the application from physical servers to the cloud hosted environment and although it does not represent cloud design and architecture it enables moving the applications as is into cloud helping out with overall view to move to cloud.
- Resistance to move to cloud environment by application team –> solve by getting buy-in from management team and vision of moving application to cloud architecture
- Rules around access are stricter and loss of granular control –> solve by showing the expertize received with hosted cloud environment, no more struggle for hardware maintenance and 99.9% uptime, done via cloud
- While physical machine setup was designed to meet uptime requirement by ensuring all servers are always up and running the cloud philosophy is that failures will happen so the more failure points we create the less chances of outage we have –> show how this will be beneficial with SOA application
- Learning curve on service management and uptime –> show how service dashboard, dedicated team especially in case of private cloud is very useful
- Difficulty working with layer – layers of services below own application –> show how this will be beneficial when newer version of SOA based application is developed
- Cloud scalability and flexibility are the key to get buy ins
Once all set it is all about planning, executing and monitoring the project to completion. Goals should be established with detailed task to take every steps with appropriate mitigation plan that will be custom based on the application in consideration.