Fundamental Skills for Cloud Computing Practitioners

Fundamental Skills for Cloud Computing Practitioners

Introduction to the Essentials and Benefits of Cloud Computing

Cloud computing is like having a supercomputer at your fingertips. You get access to compute power, databases, storage, applications, and other IT resources through the internet, and you only pay for what you use.

When choosing a cloud strategy, a company should think about what cloud application components they need, which resource management tools they prefer, and any existing IT infrastructure they have to work with.

Cloud computing models

  • Infrastructure as a Service (IaaS)

Infrastructure as a Service (IaaS) includes the essential building blocks for cloud IT. It usually offers access to networking features, computers (either virtual or on dedicated hardware), and data storage space. IaaS providers give you the highest level of flexibility and control over your IT resources, making it very similar to the traditional IT setups that many IT departments and developers are used to.

  • Platform as a Service (PaaS)

Platforms as a Service (PaaS) vendors take care of the underlying infrastructure (like hardware and operating systems) for you. This means you can focus on deploying and managing your applications without worrying about resource procurement, capacity planning, software maintenance, patching, or any of the other heavy lifting involved in running your application.

  • Software as a Service (SaaS)

Software as a Service (SaaS) vendors provide you with software applications that are run and managed by the vendor. When people talk about SaaS, they usually mean third-party applications for end users. With SaaS, you don't have to worry about maintaining the service or managing the underlying infrastructure. A common example of a SaaS application is web-based email, where you can send and receive emails without having to handle feature updates or maintain the servers and operating systems that the email program runs on.

IT Deployment models

Cloud-based Deployment

  • Run all parts of the application in the cloud.

  • Move your existing applications to the cloud.

  • Design and build new applications in the cloud.

In a cloud-based deployment model, you have the flexibility to move your existing applications to the cloud or create new ones from scratch in the cloud. You can choose to build these applications on basic infrastructure that your IT team needs to manage, or you can use higher-level services that take care of much of the management, design, and scaling for you.

On-premises Deployment

  • Deploy resources by using virtualization and resource management tools.

  • Increase resource utilization by using application management and virtualization technologies.

On-premises deployment, also known as a private cloud deployment, involves setting up resources right on your own premises using virtualization and resource management tools. For example, you might have applications running on technology that's completely housed in your on-site data center. While this model is similar to traditional IT infrastructure, the use of application management and virtualization technologies helps make better use of resources.

Hybrid Deployment

  • Connect cloud-based resources to on-premises infrastructure.

  • Integrate cloud-based resources with legacy IT applications.

In a hybrid deployment, cloud-based resources are connected to your on-premises infrastructure. This approach can be handy in various situations. For instance, you might have legacy applications that are best kept on-site, or you might need to comply with regulations that require certain records to stay on premises.

Imagine a company that wants to use cloud services to automate batch data processing and analytics. But they also have some older applications that work better on-site and aren't ready to move to the cloud. With a hybrid deployment, the company can keep their legacy applications on premises while still enjoying the cloud's data and analytics services.

Benefits of Cloud Computing

  • Swap upfront costs for variable costs

Upfront expense refers to the cost of data centers, servers, and other resources you need to invest in beforehand. Variable expense means you only pay for the computing resources you use. With cloud computing's variable expense model, companies can save costs while implementing innovative solutions.

  • Stop spending money to maintain data centers

Computing in data centers often requires you to spend more money and time managing infrastructure and servers. A benefit of cloud computing is the ability to focus less on these tasks and more on your applications and customers.

  • Stop guessing capacity

With cloud computing, you don’t have to predict how much infrastructure capacity you will need before deploying an application.

  • Benefit from economies of scale

By using cloud computing, you can achieve a lower variable cost than you can get on your own. Because usage from hundreds of thousands of customers can aggregate in the cloud, providers, such as AWS, can achieve higher economies of scale. The economy of scale translates into lower pay-as-you-go prices.

  • Increase speed and agility

The flexibility of cloud computing makes it easier for you to develop and deploy applications. This flexibility provides you with more time to experiment and innovate.

Cloud computing provides on-demand IT resources over the internet with pay-as-you-go pricing. Essential considerations for adopting a cloud strategy include application components, resource management tools, and legacy infrastructure needs. The primary cloud computing models are Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). Deployment models include cloud-based, on-premises, and hybrid. Key benefits of cloud computing are cost savings, reduced data center management, flexible capacity, economies of scale, increased speed and agility, and global reach.