Cloud computing is a term that is used frequently, and it generally refers to a broad array of services and processes that power mainstream and enterprise technology.
According to a 2019 State of the Cloud study by Rightscale, 94% of enterprise of companies are using at least one cloud service.
But what exactly is “the cloud” and cloud computing? How do organizations leverage the power of cloud computing?
What is the Cloud?
“The cloud” is similar to computational architecture that enterprise companies have on-site. In cloud computing, organizations leverage the processing power of data centers, servers, and networks distributed worldwide. These cloud computing services can be accessed from anywhere with an internet connection.
Though most people refer to “the cloud” when they talk about cloud computing, in reality, you are accessing the “cloud” of distributed data centers of individual companies. Several companies offer their own cloud services, including Google Cloud Platform, Amazon Web Services (AWS), Microsoft Azure Cloud, Oracle Cloud Infrastructure, Adobe Creative Cloud, and IBM Cloud.
Using cloud services from third-parties is more scalable, manageable, and economically feasible than trying to recreate the same services using on-site services. A 2018 study by McKinsey shows that there is still significant room for growth in cloud services for enterprise, mid-size, and small organizations.
What is Cloud Computing?
Cloud computing is an umbrella term for a series of services that provide organizations with cost-effective technological solutions. These cloud solutions allow companies to focus on their core capabilities instead of setting up internal servers and computational functionality in-house. Cloud computing services are available as the organization needs them, allowing for more efficiency and scalability.
There are several types of deployment models for cloud computing, and several “as a service” cloud solutions. Understanding which of these fits your organization will help you choose the right combination of services.
Types of Cloud Deployment Models
Cloud deployment refers to how a cloud platform is set up, where the instance is hosted, and which users have access to the services. Cloud computing works at scale by implementing a process known as virtualization. With virtualization, numerous instances are created in a virtual machine that simulates the physical setup of a separate computer. These instances are segmented from one another, and the data from each is completely walled off from one another. Each of these can run powerful applications that provide computational process and storage capability.
Virtualization creates an efficiency that multiplies the capability of the hardware. Through virtualization, one data center can run as much computational power as many data centers did in prior decades. This allows the cloud services to scale at low costs, making it more powerful and cost-efficient than in-house servers.
The other benefit of cloud computing services is redundancy, meaning the data is backed up in several data centers simultaneously. If one data center goes down for maintenance or has an outage, the cloud services suffer no interruption. This redundancy is not easily replicable with in-house servers.
There are four main types of cloud deployment.
Public cloud deployments provide both services and infrastructure shared by all customers. These services are provided on a pay-as-you-go basis. The cloud provider is responsible for the creation and upkeep of the instances. This type of deployment is ideal for small to mid-sized businesses that need to save money on resources but still need to collaborate on projects. In most cases, projects that are in public clouds are designed to be portable, so they can be moved to a private cloud, to be tested from production.
The types of services provided in a public cloud range from Infrastructure as a Service (storage and processing power) to Software as a Service (web applications). Examples of public cloud providers are Google Cloud Platform, Microsoft Azure Cloud, and Amazon Web Services.
Pros: Scalable, Easy to collaborate remotely, cost-effective, redundancy, reliable resources.
Cons: Not ideal for sensitive projects, limited portability to other cloud providers.
A private cloud deployment is used by a single business, and may be hosted externally or in some cases, located on-site. The deployment is behind a firewall, and no other organizations have access to the infrastructure. Private clouds are perfect for companies where industry regulation is strict. Users within the organization can still access the private cloud from anywhere with internet access. Though more expensive than public cloud deployments, private cloud instances offer more security and customization.
Pros: More security, more customization options, organizational users can access from anywhere.
Cons: Cloud provider does not manage instance, more information technology expertise required, remote access may require IP whitelisting.
Hybrid cloud deployments combine private and public cloud services. Most commonly, this setup is used to connect an internal private cloud system to public cloud services to provide extensibility when it is needed.
In a hybrid cloud system, data and applications move between the private cloud platform and public cloud services.
One type of hybrid cloud system utilizes cloudbursting. In this configuration, proprietary applications and programs run on the private cloud, but when usage is high, and the system is taxed for resources, it can expand to leverage the public cloud to provide additional resources and processing capacity.
Another common hybrid cloud configuration has internal programs and applications running on the private cloud, but external services run on public cloud services. The organization may need access to external tools like Microsoft 365 or Google Workspace for email, Dropbox or Google Drive for storage, or Adobe Creative Suite for image and video editing.
Pros: Scalable, cost effective, security for proprietary applications.
Cons: Sharing data smoothly may require additional configuration and development.
The least commonly used deployment, community cloud instances are shared by multiple users or organizations, who share access to applications. In most respects, a community cloud is a private cloud that functions similarly to a public cloud deployment. Community clouds are utilized where users have common goals, are part of the same industry, and agree on compliance and security policies. These are used in government, finance, healthcare, and in some professional industries like open source.
Community clouds are managed privately, either on-site or remotely through a data center. Authorized users are given access to segmented areas on the instance.
Pros: Collaborative decision making and teamwork, shared concerns and interests.
Cons: Bandwidth concerns, access approval takes time and resources, security concerns.
Types of Cloud Services
There are several different types of cloud services offered as a service. These are sometimes called the cloud computing stack, as they progressively build on top of each other. Each of these uses remote infrastructure built housed in a data center.
Infrastructure as a Service (IaaS)
The foundational cloud service is Infrastructure as a Service (IaaS). This level contains access to basic virtual servers, cloud data storage, and networking. Available for public, private, or hybrid cloud configurations, Infrastructure as a Service is a cost-effective, scalable solution that allows organizations to access in a pay-as-you-go model.
In IaaS, the cloud provider manages the data centers, servers, and other physical infrastructure, while providing virtualized instances for the organization. This is a good choice for small and mid-sized businesses, as there is no overhead for on-site infrastructure.
Platform as a Service (PaaS)
The next level up in cloud services is Platform as a Service, or PaaS. While IaaS provides the raw infrastructure, Platform as a Service gives the organization a framework to build, collaborate on, test, and deploy software applications within an organization.
PaaS deployments are scalable and may have multiple developers or collaborators working on them at any given time. The cloud provider still manages the hardware and operating systems, while allowing the client organizations to build using development tools, frameworks, and database systems.
For mid-sized companies that need access to development tools and assets, PaaS is a viable solution that helps their coding teams develop solutions quickly and efficiently.
Software as a Service (SaaS)
Most businesses use one or more forms of Software as a Service, commonly known as SaaS. This is a complete software application that the client organization has access to. The infrastructure, hosting, and updating of the SaaS is taken care of by the cloud provider. Some examples of a SaaS that you may be familiar with include Gmail or Google Workspace, Adobe Creative Cloud, or Customer Relationship Management (CRM) tools like Salesforce, Hubspot, or Agile CRM.
Software as a Service tools are available on subscription models, and usually run as web applications directly in a web browser. These SaaS help businesses run without building their own tools internally. These also allow small businesses to have the same access to cloud solutions as enterprise companies.
Functions as a Service (FaaS)
The youngest cloud service is Functions as a Service, or FaaS. Another term that is synonymous with Functions as a Service is serverless computing. In serverless computing, the client organization can deploy a compiled function to a server maintained by the cloud provider. The function tells the server how to allocate resources ahead of time when the function executes. The function can scale dynamically when traffic is high, and provide resources, or not consume resources when traffic is nil. This makes FaaS the purest form of “pay-as-you-go” pricing.
Organizations choose FaaS because it allows them to focus strictly on application development, without having to worry about server management. The cloud provider takes care of server management and simple infrastructure. Company developers are able to write functions, business logic, or applications without having to worry about servers, as they are handled completely externally. Cloud providers such as AWS and Microsoft Azure offer serverless computing solutions to customers.
Interested in Starting a Career in Cloud Computing?
Campus, formerly known as MTI College, in Sacramento has partnered with Amazon Web Services (AWS), the largest cloud provider in the world, to offer an AWS Cloud Administration Associate’s degree program that can help you get started in a cloud computing career. Campus is the only official AWS Academy member institution in Sacramento. We offer AWS-generated curriculum and exclusive resources available for the benefit of Campus students. Our students who participate in our Test Pass Assurance Program are equipped to become CompTIA and AWS certified.
If you’re interested in a career using cloud technologies, call our Admissions team at (916) 339-1500 or contact us for more information on AWS certification.