National Institute of Standards and Technology (NIST) defines –“Cloud computing as a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model is composed of five essential characteristics, three service models, and four deployment models.” This definition although heavily influenced by Amazon’s Elastic Compute Cloud, August, 2006; Rackspace& NASA’s OpenStack, July,2010; IBM’s SmartCloud, March,2011; OracleCloud, June, 2012, Google Compute Engine, December, 2013 and Microsoft’s Azure, March,2014 owes it origin 70+ years back,
The concept behind cloud computing is nothing new. 1950s is when it all started- several mainframe computer users accessed the central computer via dummy terminals. This injected the idea of provision of shared access to a single computer, which was adopted by companies to save costs.In 1970s,it was timesharing services of resources via VM, leading to the concept of operating systemvirtualization. 1990s was the era of virtualized private network connections. Offering shared access to a single physical infrastructure, an alternative to point-to-point services at a lesser cost with an acceptable quality.
"An organization’s cloud computing strategy is paramount to ensuring a successful and effective adoption that will fit the firm’s strategic business model"
Industry accepted 3 services models
• Software-as-a-Service (SaaS): Public cloud computing delivering applications over the internet through the browser. The most popular are Google’s G Suite, Microsoft’s Office 365; among enterprise applications - Salesforce leads the pack.
• Infrastructure-as-a-Service (IaaS): Public cloud providers offering full array of services - highly scalable databases, virtual private networks, big data analytics, developer tools, machine learning, application monitoring, and so on. Amazon Web Services,was the first one and remains the leader, followed by Microsoft Azure, Google Cloud Platform, and IBM Cloud.
• Platform-as-a-Service (PaaS): Provides sets of services and workflows that specifically target developers to use shared tools, processes, and APIs to accelerate the development, test, and deployment of applications. Salesforce’s Heroku and Force.com are popular public cloud PaaS offerings. PaaS can be accessed via public and hybrid- Pivotal’s Cloud Foundry and Red Hat’s OpenShiftsupports both
Industry accepted 4 deployment models
• Public cloud, a provider offering servicesto anybody via the internet. It’s scalable and users avail only those services that they use either freeor charged on pay-per-usage.
• Private cloud (a.k.a. as internal or corporate cloud), offers a proprietary computing architecture through which hosted services can be provided to a restricted number of users protected by a firewall.
• Community cloud, is a resource shared by more than one organization whose cloud needs are similar e.g. security, compliance, jurisdiction, etc.
• Hybrid cloud, a combination of two or more clouds. Hybrid cloud is gaining significant traction in the market because it provides the best of the worlds.
My experience in interacting with enterprises, SMBs, fin-techs concludes that the “cloud-related pains” they face remain common across the board. In order of importance they are (1) Security, (2) Integration, (3) Lack of internal processes, (4) Scarcity of internal resources/expertise, (5) Service-level management, (6) Pricing/budget, (7) Service availability/reliability, (8) Network bandwidth availability, (9) Limited transparency and management and (10) Established migration path. All these “cloud-related pains” magnifies as business ecosystems grows& operating models evolves heavily. Thanks to digitalization often lead by analytics,centric organizational transformations complicate enterprises’ workload on cloud.
According to RightScaleCloud Computing Trends: 2017 State of the Cloud Survey - SMBs run 83% of workloads in cloud with more in public cloud (50%) vs. private cloud (33%), whereas enterprises run 75% of workloads in cloud with more in private cloud (43%) vs. public cloud (32%).What is the survey trying to communicate? Having a well-defined cloud computing decision-making process & framework is crucial for “Cloud-First & NOT Cloud ONLY” strategy
• Educate the ethos behind the adopting of cloud computing - it is not an end to a project; it’s a beginning of a new operating model for the CIO organization.
• Engage & advocate information & technology executives towards promoting cross functional interaction & collaboration, a change in culture leading to the foundation of bimodal IT
• Build a multiyear cloud maturity plan that not only includes the benefits and risks of cloud computing for yourorganization. But also what aspects of the cloud you will and will not use, and why.
• Establish a multi-provider strategy keeping in mind that workload distribution across cloud vendors is a strategic endeavor just not a cost play.
• Investment in cloud architects (in some cases center of excellence) to work acrossdistributed teams and disciplines (both business & technology). They must collaborate to define governance policies and to ensure that those policies areconsistently implemented across projects and throughout the organization.
• Application Profiling –seek answers to
• WHO?Websites; Ecommerce; Messaging or Collaboration Platform; Non-Production Environment; Business Ops Applications; Production Applications; Tier1 Applications)
• WHY? Cost; Disaster Recovery; Availability; Efficiency; Scalability & Reliability
• WHAT? SaaS, IaaS, PaaS,
• WHERE? Public, Private, Hybrid
• Application Architecture –areas of assessment
• Application(s) designed as a collection of services i.e. APIs
• Extent of data being decoupled, profound impact on latency in a distributed environment
• Application(s) “chatty” i.e. constantly communicating as if application components reside on a single platform?
• How quickly can the application(s)spinup resource instances needed to support performance and scale
• Does the application(s)leverages identity and access management (IAM)
• Is the application(s) associated with continuous deployment& continuous improvement
• Different workloads with different cloud providers – A very common approach
• Deploy high-performance computing workloads on AWS, and their e-commerce, messaging andcollaboration workloads on Microsoft Azure (or vice versa).
• Use the same workload across multiple cloud providers – A complex approach intended to reduce lock-in to a single cloud provider, and looking to mitigate risk from a potential outage atany single cloud provider.
• Use one provider for production, and a second provider for disaster recovery.
Software-as-a-Service (SaaS) is expected to increase 20.1%, in 2017. Infrastructure-as-a-Service (IaaS) is projected to grow 36.8% in 2017 Source:Gartner Says Worldwide Public Cloud Services Market to Grow 18 Percent in 2017.
Platform-as-a-Service (PaaS) adoption is predicted to be the fastest-growing sector of cloud platforms according to KPMG, growing from 32% in 2017 to 56% adoption in 2020. Source: Journey to the Cloud, The Creative CIO Agenda, KPMG
Falling somewhere in between IaaS and PaaS, Containers as a Service (CaaS)I believe is the glue between cloud native &cloud computing delivery till CaaS becomes a complete substitute of SaaS
Cloud-native is about how applications are created and deployed, not where. It's appropriate for both public and private clouds.Most important is the ability to offer nearly limitless computing power, on-demand, along with modern data and application services for developers. When companies build and operate applications in a cloud-native fashion, they bring new ideas to market faster and respond sooner to customer demands
CaaS is a form of container-based virtualization wherein container engines and the core computing resources are delivered to users as a service from a cloud provider. Containers as a Service allows users to upload, organize, scale, run, manage, and stop containers through a provider’s API calls or web portal interface, and as with most cloud service providers.
Docker Software containers are a form of OS virtualization where the running container includes just the minimum operating system resources, and memory and services that is required to run an application or service. The new generations of Docker-powered containers are easy to learn, and with the ability to separate an application, microservices, by enabling developers to work with identical development environments and stacks. But they also facilitate DevOps by encouraging the use of stateless designs.
Major cloud providers, Amazon, Google, and Microsoft provide Containers as a Service allowing any Docker container to run on their platforms.
Taking a step back to consider,an organization’s cloud computing strategy is paramount to ensuring a successful and effective adoption that will fit the firm’s strategic business model. Focusing on what the cloud needs to accomplish for the organization is the key driver in discovering the right fix. A poor strategy will cause remedial work and require additional investment. Done right, the cloud adoption can be a swift, secure & risk based solution and for the adoption to succeed, it needs to be part of holistic strategy that transcends business & technology concerns, but is grounded in the CIO organization.