DEV Community

Cover image for Unlocking the Cloud: A Beginner's Guide to DevOps Terminology
under2wenty
under2wenty

Posted on

Unlocking the Cloud: A Beginner's Guide to DevOps Terminology

1. What is Virtualization?

Virtualization is the process of creating a virtual version of something, such as a server, storage device, network, or operating system (OS). This technology allows multiple virtual systems to run on a single physical system, making it possible to efficiently use computing resources.

  • Benefits: It improves resource utilization, reduces hardware costs, simplifies management, enhances disaster recovery, and provides flexibility for development and testing.

virtualization

2. What is Scalability?

Scalability refers to a system's ability to expand and manage growing demands in a smooth and effective way. Either Vertical Scaling by adding more powerful servers (more CPU, RAM), or Horizontal Scaling by adding more servers to distribute the load.
As an illustration, let's say you have a photo-sharing app. When a popular influencer shares it, you have 100,000 users attempting to upload photos at once, whereas normally you have 1,000 users each day. To accommodate all of the additional users without crashing, a scalable application might add more resources (such as more server space). Auto-scaling, the process of automatically adding or withdrawing resources as needed, is a common way to achieve scalability in cloud computing.
scalability

3. What is Agility?

Agility in the context of DevOps and cloud computing is the ability of a system to quickly build, test, deploy, and iterate software, products, or services while retaining its flexibility and adaptability in response to shifting requirements, market conditions, or user input. It places a strong emphasis on producing excellent results quickly and adaptably.
For instance, an agile team can identify and deliver a fix for a bug that causes an app you use to break fast—often in a matter of hours or days. They accomplish this by working in brief cycles, known as sprints, which enables them to react to user feedback and make ongoing improvements to the software. Being agile in the tech industry helps businesses stay competitive and satisfy customers by constantly addressing user wants and improving.
agility

4. What is High Availability?

This is the ability of a system or component to function continuously and without interruption for an extended length of time. In cloud computing and DevOps, a system is configured to remain operational and accessible for a very high percentage of time, even if something goes wrong.
As an example, an online shopping website, high availability ensures that, even if one server goes down, customers can still browse, add items to their cart, and checkout because other servers are ready to handle the load. This setup is achieved by using multiple servers and databases that work together, so there’s always a backup if one piece fails.

high availability

5. What is Fault Tolerant

Fault tolerance is the ability of a system to function even in the event that some of its components fail. It is intended to handle faults or failures graciously without impairing overall performance, hence preventing total system failures.
For instance, a fault-tolerant system in cloud computing may make use of several servers. The work is automatically transferred to another server in the event of a failure. In this manner, the system keeps running smoothly and users don't encounter any downtime.

fault tolerance

6. What is Global Reach?

Global Reach is the ability of a business, service, or technology to connect with and serve customers, users, or clients worldwide, regardless of geographical location.
A cloud-based service, like Google Drive, has global reach because people from all over the world can access and use the service, regardless of their location. This is possible because Google has data centers in many countries, allowing them to deliver fast and reliable service globally.

global reach

7. What is the difference between Elasticity and Scalability

Scalability refers to a system's capacity to accommodate growing workloads by adding resources without compromising system performance.
For illustration, let's say you own an internet store. You may need to deploy more servers to manage the increased load if more people begin to shop. This is scalability: your system expands to accommodate additional users as needed.
While, elasticity refers to a system's capacity to autonomously scale up or down in real-time in response to shifting demand. It indicates that the system, frequently in a cloud environment, can dynamically modify resources according to the present load.
For instance, in the case of the same online store, elasticity would enable your system to automatically add more servers during periods of high shopping demand (such as Black Friday) and remove them when traffic decreases after the sale, so saving you money.
Scalability is about growth, while elasticity is about adapting to fluctuations in demand.

Top comments (0)