I wanted to start writing about Cloud Computing and I thought it would be best to start with Microsoft Azure which I have been using for many years now. The series can be used by Digital Native or Startup on how to use Cloud Computing, we will go through Microsoft Azure and what it offers to us as a Startup or Digital Native company. But to start with lets ask ourselves a silly question? What is Cloud Computing?
What is Cloud Computing?
Cloud computing is a model for delivering computing services—including servers, storage, databases, networking, software, analytics, and intelligence—over the Internet (the cloud). It allows users to access these services remotely, rather than having to maintain their own infrastructure or purchase and install software on their own computers.
With cloud computing, you can access and use shared computing resources such as servers, storage, and applications through the Internet. The resources are owned and maintained by a cloud provider (some examples Microsoft Azure, Amazon AWS, Google Cloud, etc), which makes them available to you on demand, and you only pay for what you use. Think of it like electricity if you leave your light on, the electric company will charge you, but if you turn it off there is no charge for it.
There are several benefits Cloud computing provides, including:
- Cost savings: Users only pay for the resources they use, and can scale up or down as needed, rather than having to invest in and maintain expensive infrastructure.
- Flexibility: Cloud computing allows users to access a wide range of services and easily scale up or down as their needs change, rather than being limited by the capabilities of their own infrastructure.
- Collaboration: Cloud computing makes it easy for users to collaborate on projects, as they can access the same tools and resources from anywhere with an Internet connection.
- Reliability: Cloud providers generally have robust infrastructure and offer service level agreements (SLAs) to ensure uptime.
- Security: Cloud providers often have advanced security measures in place to protect users’ data, such as firewalls, intrusion detection systems, and encryption.
What types of cloud computing are there?
There are four main types of cloud computing: public, private, multicloud and hybrid.
- Public cloud – This type of cloud is owned and operated by a third-party cloud provider, which makes the resources available to the public over the Internet. Customers pay for what they use no CapEx cost only OpEx, and the provider is responsible for managing the infrastructure and ensuring that it is always available and performing optimally.
- Private cloud – This type of cloud is owned and operated by a single organization, and the resources are not shared with any other organizations. A private cloud can be physically located on-premises or off-premises, and it can be managed by the organization itself or by a third-party provider.
- Hybrid cloud – This type of cloud combines elements of both public and private clouds, allowing an organization to use the resources that are most suitable for each workload. For example, an organization might use a public cloud for development and testing, and a private cloud for production workloads that require a higher level of security and compliance.
- Multi cloud – This type of cloud combines elements of multiple cloud providers, allowing an organization to use the resources that may expand mutliple cloud providers or even running different workload on different providers. For example, a company may have its SAS offering that a customr can choose which cloud provider they wish to use. An example would be ElasticSearch as a service, where one can choose which cloud provider you wish to launch their solution. Another example could be an organization may run majority of their service in one provider but also have a pilot light or warm standby environment ready to lauch in another cloud provider for fail safe issues. Yet another one can be an organization running their main database in one provider but their other workloads in another cloud provider, could be due to data residency or just pricing. The variations of things all depends on the business need.
Pros and Cons
Each type of cloud has its own benefits and trade-offs, and organizations can choose the type that best fits their needs. How do we know which one to choose, below you can see the benefits and trade-offs of the three types of cloud computing as follows:
Public cloud:
- Benefits: Low cost, no upfront investment, pay-as-you-go pricing, scalability, and reliability
- Trade-offs: Reduced control and security, potential compliance issues
Private cloud:
- Benefits: Greater control and security, tailored infrastructure, potential cost savings for large organizations
- Trade-offs: Higher upfront investment, more complex to set up and manage, may require specialized skills and resources
Hybrid cloud:
- Benefits: Flexibility, ability to use the best resources for each workload, potential cost savings
- Trade-offs: More complex to set up and manage, may require specialized skills and resources, potential security and compliance issues
- Benefits: You are not locked into just one vendor, if any issue happens at on vendor downtime your system can still be up since another vendor would mostly likley not be affected.
- Trade-offs: The most complex of all, and not to mention the pricing it will be the most expensive due to the fact most of the time you will not be able to take advantage of the services most cloud provider provides, e.g Functions as a service, etc. You will also need to have IT people who are well versed in multiple cloud providers and those people are hard to come by.
Multi cloud:
I also wanted to mention that there are three main types of cloud computing: infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS). We will go over this more in details later but let's first go over a fundamental thing about cloud computing called Shared Responsbility Model.
What is Shared Responsbility Model?
In cloud computing, the concept of shared responsibility refers to the way that responsibilities are divided between the cloud provider and the customer for the operation and maintenance of the cloud environment.
The cloud provider is responsible for the infrastructure and hardware, as well as for the availability, performance, and security of the underlying cloud services. The customer, on the other hand, is responsible for managing and securing their applications, data, and operating system, as well as for complying with any relevant laws and regulations.
This model of shared responsibility is designed to allow customers to take advantage of the benefits of cloud computing while still maintaining control over their own applications and data. It is important for customers to understand their responsibilities and to ensure that they are properly fulfilling them in order to effectively use and secure their cloud environment.
The specifics of the shared responsibility model can vary depending on the type of cloud service being used and the specific terms of the service agreement. It is important for customers to carefully review the service agreement and to understand the specific responsibilities that are being shared in their particular cloud environment.
Additional resources on Microsoft Shared Responsbility are below:
Conclusion
What we learned today was what really defines cloud computing, what are the types of cloud computing, their pros and cons and also shared responsbilit. I will go more into details of IaaS, PaaS and SaaS the models that Cloud Computing offers.