A successful cloud deployment requires proper planning and determining the right cloud configurations and then executing the plan as it is. But to create a successful cloud deployment plan, Organizations should need to understand why they want to choose cloud Computing over traditional on-premises data centers, and then clearly define their requirements and success criteria as per business needs. These clear requirements will help organizations to determine whether they are going in the right path towards cloud computing.
In this post, we will learn how to determine the right cloud deployments & configurations and to create a right cloud strategic plan to ensure the organizations cloud journey is success and productive. Following topics are covered in this post.
- Determine the right Cloud Computing Platform
- Determine the right Cloud Deployment Model
- Determine the right Cloud Network Configurations
- Determine the right Cloud Compute Configurations
- Determine the right Cloud Storage Configurations
- Determine the right Cloud Security Policies
- Determine the right Cloud Security Configurations
- Determine the right Cloud Deployment and Migration Path
- Best Practices for Cloud Deployments and Testing
Determine the right Cloud Computing Platform
To successfully migrate an existing application to cloud platform or to deploy a new application into the cloud platform, it is really important that the IT managers and organizations clearly understand what cloud computing offers and the services offered by various cloud service providers in the current market. AWS, Azure, GCP and Oracle clouds are the popular public and private cloud providers and they all offer similar services when it comes to Compute, storage and network services.
Organizations or IT managers should first understand the basic fundamentals of Cloud Computing and its benefits before they can create strategic plan to adopt and leverage cloud benefits. Understanding these cloud services and models is the key to determine the right cloud platform for every IT manager.
- Cloud Computing is basically outsourcing data center operations and infrastructure management activities to a 3rd party provider generally referred as Cloud Service Provider. Amazon’s AWS, Microsoft’s Azure, Google’s GCP are the top cloud service providers respectively as of today.
- These cloud service providers allows customers to use the virtual infrastructure and cloud platforms on a utility based model where customers have to only pay for the resources they used or consumed, this is also referred as pay-as-you-go model.
- Cloud Computing offers infrastructure elasticity which means the ability to scale up and scale down the number of virtual infrastructure resources quickly and easily as per the demand. This feature is the one of primary reasons why customers wants to adopt cloud.
- Since the cloud customers only pay for the services they use, there are no capital & operational expenses for the underlying hardware. There are many cost saving opportunities are possible if the cloud strategy is properly planned and executed.
- Cloud Computing offers various types if Cloud Service models, they are
- Infrastructure as a Service (IaaS)
- Software as a Service (SaaS)
- Platform as a Service (PaaS)
Cloud Computing offers customers to use their cloud services across multiple geographical regions to provide fault tolerance and increased performance for their applications that are built in cloud.
Each region will then have two or more availability zones for high availability and fault tolerance. These availability zones are nothing but a physical data centers built with their own redundant power and network infrastructure and each availability zone is separated by at least 100 KMs.
- Cloud Computing service providers typically use pooling of virtual Compute, storage and memory resources which allows them to provide the capability of elasticity and scalability on demand. For high-level overview on how virtualization techniques are used in cloud computing see Basics and Fundamentals of Virtualization. These resource pools are not visible to the customers and are only managed by the cloud service providers, the commonly used virtual resource pools in the backend of cloud datacenters are
- Compute pools – CPUs from multiple physical machines are pooled to create virtual compute pools.
- Memory pools – Memory from multiple physical memories are pooled to create virtual memory pools.
- Network pools – Multiple networks are created and pooled by using multiple virtual LAN interfaces, virtual switches and virtual NICs.
- Storage pools – Storage pools are created using technique called Storage Area Network (SAN) where large number of physical SSD and magnetic disks are pooled together to provide virtual disk capacity on the cloud servers.
- Cloud providers offers multiple interfaces to use and mange the cloud resources and services. Most cloud providers offer following cloud interface methods
- Graphical User Interface (GUI) – This is a web-based interface which most of the IT & non-IT folks use and it is easy to navigate and understand the cloud platforms and offerings.
- Command Line Interface (CLI) – This is a text based interface used to configure, manage and troubleshoot cloud deployments over command line and it is more efficient and easy than using GUI.
- Application Programming Interface (API) – This allows programmatic access, control and configuration of various cloud resources and services in a secure manner.
- Dashboards – Cloud service providers and many 3rd party vendors offers custom dashboards and portals to manage and monitor activities in cloud environments.
Understanding what exactly cloud computing offers and the different types of services that are made available by various cloud service providers will help IT managers to determine the right cloud platform based on their requirements.
Most organizations choose Amazon Web Service as its preferred cloud platform due to its variety of services, however the number of companies preferring Microsoft Azure and Google Cloud is also increasing in last 2 years. Some companies also choose multi cloud strategies to leverage the best of all the cloud service providers and to prevent vendor lock-ins.