Cloud Glossary | Azure – AWS – GCP

cloud computing cloud glossary

I have been studying, and working with, Microsoft Azure, Amazon AWS and Google Cloud Platform. They are all cloud platforms and they all work in similar ways, so here on this post I will try to add all terms that I find that are shared across them all.

Topics Worth Knowing well for any Cloud

Scalability: Scalability refers to the ability of a system, application, or process to handle an increasing amount of work or to accommodate more users. In the context of cloud computing, scalability means that the system can dynamically allocate more resources to meet the changing demands of the application or workload. This helps organizations to avoid downtime and ensure that their applications are always performing at their best.

Flexibility: Flexibility refers to the ability to adapt to change and make changes quickly and easily. In the context of cloud computing, flexibility means that organizations can quickly and easily deploy and manage their applications, as well as experiment with new technologies and features. This helps organizations to respond to changing business needs and take advantage of new opportunities.

Agility: Agility refers to the ability to respond quickly and effectively to changing conditions or requirements. In the context of cloud computing, agility means that organizations can quickly deploy new applications and services, as well as make changes to existing applications, without the constraints of traditional IT infrastructure. This helps organizations to stay competitive and respond to changing customer needs.

Cost Savings: Cost savings refer to the reduction in costs associated with deploying, managing, and scaling applications. In the context of cloud computing, cost savings are achieved by leveraging the economies of scale and the shared infrastructure provided by cloud computing, as well as by reducing the costs associated with managing and maintaining traditional IT infrastructure.

Reliability: Reliability refers to the ability of a system to perform its intended function consistently and without failures. In the context of cloud computing, improved reliability means that applications are designed to be highly available and resilient, with automatic failover and replication capabilities. This helps organizations to avoid downtime and ensure that their applications are always up and running, even in the face of failures or outages.

Security: Security refers to the protection of data and systems from unauthorized access, use, disclosure, disruption, modification, or destruction. In the context of cloud computing, enhanced security means that organizations can benefit from the security features provided by cloud computing, such as encryption, access controls, and threat detection. This helps organizations to protect their applications and data from cyber threats and ensure the confidentiality and integrity of sensitive information.

Productivity: Productivity refers to the efficiency and effectiveness with which work is done. In the context of cloud computing, increased productivity means that organizations can benefit from the platform for collaboration and sharing information provided by cloud computing. This helps organizations to be more productive and achieve their goals more effectively.

Elasticity: Elasticity refers to the ability of a system to automatically scale its resources up or down to meet changing demands. In the context of cloud computing, elasticity means that organizations can automatically allocate more or fewer resources to their applications as needed, without having to manually manage the underlying infrastructure. This helps organizations to avoid over-provisioning or under-provisioning of resources, and ensures that their applications are always performing at their best.

Resiliency: Resiliency refers to the ability of a system to continue functioning even in the face of failures or disruptions. In the context of cloud computing, resiliency means that organizations can benefit from the automatic failover and replication capabilities provided by cloud computing, which help to ensure that their applications are always up and running, even in the face of failures or outages. This helps organizations to avoid downtime and ensure that their applications are always available to their customers.

Managed Instances: In the context of cloud computing, managed instances refer to a category of cloud services where the cloud provider takes care of managing and maintaining the underlying infrastructure, allowing customers to focus on their applications and services that run on top of it.

In the case of managed instances, the provider is responsible for tasks such as patching and updating the operating system, handling security and network configurations, and providing technical support. This frees up the customer from having to perform these tasks themselves, which can be time-consuming and complex, and allows them to focus on their core business operations.

Managed instances can take the form of managed virtual machines, managed databases, managed containers, and more. Examples of cloud providers offering managed instances include Amazon Web Services (AWS) with its EC2 and RDS services, Google Cloud Platform (GCP) with its Compute Engine and Cloud SQL services, and Microsoft Azure with its Azure Virtual Machines and Azure SQL Database services.

Managed Servers: Managed servers, like managed instances, are a type of cloud service where the provider takes care of managing and maintaining the underlying infrastructure. However, the key difference between managed servers and managed instances lies in the level of management provided by the provider.

Managed servers typically offer a higher level of management compared to managed instances. This can include tasks such as software installation and configuration, backup and recovery, and performance tuning, in addition to the management tasks performed for managed instances. Managed servers are often marketed as a fully managed solution, with the provider handling all aspects of server administration, leaving the customer to focus purely on their applications and services.

Managed servers are typically offered as physical servers, which are housed and maintained in the provider’s data centers. The customer rents the server, and the provider takes care of all the underlying infrastructure and management tasks. The customer has full control over the operating system and applications installed on the server, but the provider is responsible for the physical security and maintenance of the hardware.

In summary, managed servers offer a higher level of management compared to managed instances, and are typically offered as physical servers, with the provider taking care of all aspects of server administration. Managed instances, on the other hand, typically refer to cloud-based virtual machines, where the provider takes care of basic management tasks such as patching and updating the operating system, but leaves more advanced tasks, such as software installation and configuration, to the customer.

Managed Servers and IaaS: Managed servers can be considered a type of Infrastructure as a Service (IaaS), but they differ in the level of management provided by the provider.

IaaS refers to a cloud computing service model where the provider offers virtualized computing resources, such as virtual machines, storage, and networking, over the internet. The customer has complete control over the operating system, storage, and deployed applications, and is responsible for managing and maintaining the infrastructure. Examples of IaaS providers include Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP).

Managed servers, as described earlier, are a type of IaaS offering, where the provider takes care of certain aspects of server administration, such as software installation and configuration, backup and recovery, and performance tuning. The customer still has control over the operating system and applications installed on the server, but the provider handles the underlying infrastructure and management tasks to a greater extent than in a standard IaaS offering.

So, while managed servers can be considered a type of IaaS, they differ in the level of management provided by the provider and the degree of control the customer has over the underlying infrastructure.

Serverless Computing: Serverless computing is a cloud computing model where the cloud provider manages the infrastructure and automatically allocates resources as needed to run the customer’s applications, without the customer having to provision or manage any servers.

In serverless computing, the customer uploads their code to the cloud provider, which then runs the code in response to events, such as incoming HTTP requests or changes to a database. The provider automatically provisions the necessary resources, such as compute, memory, and storage, to run the code, and charges the customer based on the actual resources used, rather than a pre-allocated amount.

The key advantage of serverless computing is that it allows the customer to focus solely on writing and deploying their code, without having to worry about the underlying infrastructure. The provider handles all aspects of infrastructure management, from provisioning resources to scaling the solution to meet changing demand. This can result in reduced costs and increased agility, as the customer only pays for the resources they actually use and can quickly and easily deploy new applications and services without having to worry about infrastructure management.

Examples of serverless computing platforms include AWS Lambda, Google Cloud Functions, and Microsoft Azure Functions. These platforms provide a way for customers to run their code in a fully managed, scalable, and highly available environment, without having to provision or manage any servers.

More examples of Serverless computing are:

  1. AWS EventBridge: A serverless event bus that makes it easy to connect applications together using data from your own applications, SaaS applications, and AWS services.
  2. Google Cloud Pub/Sub: A messaging service that allows you to send messages between independent applications asynchro-nously.
  3. Microsoft Azure Event Grid: A fully managed event routing service that enables event-driven architecture and helps you build dynamic and scalable applications.
  4. AWS Step Functions: A serverless workflow service that makes it easy to coordinate distributed applications and microservices using visual workflows.
  5. Google Cloud Composer: A fully managed workflow orchestration service built on Apache Airflow.
  6. Microsoft Azure Durable Functions: An extension of Azure Functions that lets you write stateful functions in a serverless environment.
  7. AWS S3: A serverless object storage service that allows you to store and retrieve any amount of data, at any time, from anywhere on the web.
  8. Google Cloud Storage: A serverless, highly scalable object storage service that allows you to store and retrieve any amount of data, at any time, from anywhere on the web.
  9. Microsoft Azure Blob Storage: A fully managed, serverless, scalable, and highly available object storage service for unstructured data.

SaaS and Serverless Computing: Software as a Service (SaaS) is not the same as serverless computing, but it can make use of serverless computing resources.

SaaS refers to a software delivery model where customers access software over the internet, without having to install it on their own computers or servers. SaaS is a type of cloud computing that provides customers with access to software applications and services through a web browser or mobile app. Examples of SaaS include customer relationship management (CRM) software, email and productivity tools, and project management software.

Serverless computing, on the other hand, is a type of cloud computing that allows customers to run their code in a fully managed environment, without having to worry about the underlying infrastructure. Serverless computing resources, such as AWS Lambda, Google Cloud Functions, and Microsoft Azure Functions, can be used to build and run backend APIs, event-driven applications, media processing pipelines, real-time analytics, and more.

SaaS applications can make use of serverless computing resources to build and run their underlying infrastructure, without having to manage any servers. For example, a SaaS application could use a serverless function to run backend APIs, process real-time data, or run background tasks. This can result in reduced costs, increased scalability, and the ability to build and deploy new features and functionality quickly and easily.

So, while SaaS is not serverless computing, it can leverage serverless computing resources to build and run its underlying infrastructure.

Fully Managed Environment: A fully managed environment is a type of cloud computing environment where the provider takes care of all the underlying infrastructure and management tasks, leaving the customer free to focus on developing and running their applications. In a fully managed environment, the customer does not have to worry about server provisioning, software updates, security patches, backups, or any other operational tasks. The provider handles all of these tasks, and provides the customer with a fully managed and highly available platform for running their applications.

Managed servers and managed instances, on the other hand, are types of cloud computing environments where the provider still provides some level of management and infrastructure, but the customer has more control and responsibility for the underlying environment. In a managed server or managed instance environment, the customer is typically responsible for configuring and managing the operating system, middleware, and application software. The provider provides the underlying infrastructure and some level of management, but the customer has more control over the environment and is responsible for many of the operational tasks.

Fully managed environments are different from managed servers and managed instances in that they provide a higher level of abstraction and a lower level of customer control and responsibility. With a fully managed environment, the customer can focus on developing and running their applications, without having to worry about the underlying infrastructure. With managed servers and managed instances, the customer has more control and responsibility for the underlying environment, and must perform additional operational tasks in order to maintain and manage the environment.

Published by Pedro Carvalho

Apaixonado por análise de dados e Power BI

Deixe uma resposta

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: