Understanding Cloud Computing: A Comprehensive Guide

Understanding Cloud Computing: A Comprehensive Guide

Understanding Cloud Computing: A Comprehensive GuideSource: Irregular Programmer, iResearch Consulting

Introduction: Cloud computing is a model that enables convenient and on-demand access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.

The industrial internet is here! The next decade is the future of the industrial internet, and major companies are laying out their cloud computing strategies!

Openstack has released the Newton version, and it seems like there is nothing it cannot support. Is the spring of private cloud really here? Docker is booming, and the corresponding DevOps and NoOps are still in high demand. However, for many companies, especially traditional ones, the cloud still feels distant. Whether to migrate to the cloud and which cloud to choose is a question we need to clarify using the simplest metaphors to explain the most basic concepts of cloud services.

What is the Cloud?

Let’s start with a conversation.

Zhang San: Our company’s data cannot be stored on personal computers; we usually store it in the cloud.

Li Si: Don’t be ridiculous. Your company only has twenty-something people and two servers, without virtualization or distribution. Can that be called a cloud?

Zhang San: So what? Even a few hundred bucks worth of Western Digital NAS can be called a cloud.

Zhang San is probably an ordinary person, while Li Si is a techie. This conversation reflects the different perceptions of the cloud.

So, what exactly is the cloud?

Historically, there have been no less than a hundred definitions, with the most influential being the NIST (National Institute of Standards and Technology) definition: it is a model that enables convenient and on-demand access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. Clearly, this is not easy for the average user to understand. In simpler terms, it means making computing, storage, networks, data, algorithms, applications, and other hardware and software resources as easy to access as electricity, available anytime and anywhere, and plug-and-play. This definition resembles Zhang San’s view of the cloud, which we refer to as broad cloud computing.

The cloud from the techie Li Si’s perspective refers to a complete set of virtualization and distributed technology systems, characterized by low-cost alternatives to the traditional IOE (IBM, Oracle, and EMC). This is what we call narrow cloud computing.

First, narrow cloud computing overly focuses on the underlying technology while neglecting SaaS (Software as a Service) and PaaS (Platform as a Service); second, it overly concerns specific technologies while ignoring service models and business models, which can lead to underestimating the social driving force of cloud computing in the long run. Of course, Li Si has a point, as most current cloud architectures indeed rely on virtualization and distribution for cost savings and easier management, supporting distributed big data processing.

What are virtualization and distribution?

In a village, there are many families. Zhang San’s family has only one daughter, and they always have leftover food, which represents idle resources. Li Si’s family has five sons, and they always struggle for enough food, representing scarce resources. Additionally, Wang Wu’s family occasionally has many guests, making food availability uncertain, representing fluctuating computing demands. Thus, Zhang San’s family adds some chopsticks and bowls to host others, akin to one physical machine virtualizing into multiple virtual machines. The village chief keeps track of how much food and how many tables, chopsticks, and bowls each family has, representing a unified scheduling that forms a resource pool. When Li Si and Wang Wu’s families face shortages, they borrow from Zhang San’s family, representing distribution. Some students might ask, isn’t Zhang San at a disadvantage? Don’t get too caught up in the metaphor; Zhang San is just one server! Others might say, why do I sense a hint of communism? Exactly, virtualization and distribution aim to achieve a form of communism in computing, storage, and networking.

Both virtualization and distribution address the same problem: reconfiguring physical resources into logical resources (in IT, this is referred to as decoupling, meaning what you use is different from the actual physical resources, just as Li Si and Wang Wu’s lunch is actually provided by Zhang San’s family). Virtualization creates a resource pool, while distribution utilizes that resource pool.

Virtualization includes computing virtualization, network virtualization, and storage virtualization. Computing virtualization typically creates multiple virtual machines from one physical machine to “squeeze out” the actual physical resources, which includes full virtualization, hypervisor virtualization, hardware-assisted virtualization, paravirtualization, and OS-level virtualization. Similarly, network virtualization addresses low network resource utilization and the cumbersome manual configuration of security policies by abstracting physical network resources into a resource pool that can be dynamically accessed. Current approaches to network virtualization include control and data plane separation, open control planes, virtual logical networks, and network function virtualization. Storage virtualization generally creates multiple virtual resources from one, addressing not only elasticity and scalability but also backup issues.

Understanding Cloud Computing: A Comprehensive Guide

What are public cloud, private cloud, hybrid cloud, and community cloud?

Zhang San, Li Si, and Wang Wu live in the same building, and there is a large restaurant downstairs. Zhang San always cooks at home, representing a private cloud, with his kitchen as the self-built data center. Li Si always eats at the restaurant, representing a public cloud, with the restaurant as the cloud data center. Wang Wu is exceptional, having a private room in the restaurant that is not open to others, representing a managed private cloud (some vendors define this as a proprietary cloud), with the private room as the managed server in the cloud data center. When Zhang San’s family has ten guests, which represents a sudden business increase, they must go to the restaurant, representing a shift from private cloud to public cloud. Zhang San’s mother saves money and tells Zhang San, you all go ahead; your dad and I will eat at home, representing a hybrid cloud for Zhang San’s family. If the restaurant is only open to a specific group, like students, that represents a community cloud. Of course, this example is not entirely accurate, as food is purchased, while cloud services are rented; this point must be remembered.

A private cloud is built for a specific user or organization, allowing only localized resource optimization, thus not fully aligning with the essence of cloud—social division of labor. Therefore, the prosperity of private clouds brought about by open-source software like Openstack may only be temporary. More and more customers will realize that cheap hardware and free software are not sufficient conditions to build a private cloud. The total cost of fine management and 24/7 operations may not be lower than that of a public cloud. As the operational capabilities of public cloud vendors improve, this trend will become more apparent. Managed private clouds partially achieve social division of labor but still cannot solve the efficiency issues of physical resource utilization on a large scale.

A public cloud is built for the general public, where all users are called tenants. Not only are there many tenants at the same time, but when one tenant leaves, their resources can be immediately released to the next tenant, just like when a table of customers leaves a restaurant, it can quickly accommodate the next table. Public cloud represents the most thorough form of social division of labor, enabling resource optimization on a large scale. Therefore, regardless of the winding roads ahead, the future is bright. However, building a public cloud, especially a foundational public cloud, is not something just anyone can do, just as running a small restaurant is easy, but managing a large restaurant with thousands of tables requires significant capital and expertise. Many customers worry about the security of public clouds; sensitive industries and large clients may consider it, but for general small and medium clients, the risks of data leakage and service interruption in public clouds are far less than those of setting up their own data centers.

A community cloud is a form that lies between public and private clouds, where each customer is not large but belongs to sensitive industries that face restrictions and risks when using public clouds, so they jointly create a cloud platform.

A hybrid cloud is any combination of the above types, which can be in terms of computing, storage, or both. In the current stage, where public clouds are not yet fully mature, and private clouds face operational difficulties, long deployment practices, and challenges in dynamic expansion, hybrid clouds are a relatively ideal transitional solution, and their market share is expected to increase significantly in the short term. Moreover, non-mixed solutions are relative, while hybrid solutions are absolute. In the future, even if not mixing their private and public clouds, organizations will need to continuously invoke internal data and services with external data and services (PaaS-level hybrid). It is also possible for a large client to place their business across different public clouds, akin to putting eggs in different baskets, which will also require unified management of the eggs in different baskets, representing a broad hybrid.

Understanding Cloud Computing: A Comprehensive Guide

What are IaaS, PaaS, and SaaS?

IaaS, Infrastructure as a Service; PaaS, Platform as a Service; SaaS, Software as a Service.

Still hard to understand? No problem, let Zhang San, Li Si, and Wang Wu explain.

Zhang San sells wheat, which represents IaaS; Li Si sells flour, representing PaaS; Wang Wu sells steamed buns, representing SaaS. Zhang San finds selling wheat unprofitable and wants to extend downstream, so he starts selling flour, which means IaaS companies gradually venture into PaaS business; Wang Wu sells a lot of steamed buns, with a high demand for flour, and does not want to be controlled by Li Si, so he also starts selling flour, representing SaaS companies venturing into PaaS. Thus, IaaS, PaaS, and SaaS are topics of great interest to analysts and investors, but practitioners do not focus on them. In this world, everyone is pursuing profit; whatever makes money is pursued. After Zhang San starts selling flour, he and Li Si become competitors, but Li Si still buys wheat from him, representing a relationship of competition and cooperation, known as co-opetition. Zhao Liu is picky and finds steamed buns unsatisfactory, so he directly buys wheat from Zhang San or flour from Li Si, representing a wealthy client directly utilizing the PaaS platform to create software or custom SaaS.

Have you noticed that the more developed the city, the fewer wheat growers, flour sellers, and the more steamed bun buyers there are? That’s right; this is the result of social division of labor. Cloud computing will also evolve toward a highly divided labor model. Some students ask, where does storage fit in? It depends on the context; block storage and object storage generally refer to the IaaS layer, while cloud storage typically refers to the SaaS layer.

IaaS typically provides general computing, storage, and network resources. Most of the previously mentioned virtualization and distribution technologies are concentrated at this level, with a few “exiled” to the PaaS layer. IaaS is generally considered to have started with Amazon’s EC2 and S3 products.

In recent years, when we talk about the rapid implementation of cloud computing, we mainly refer to the swift adoption of IaaS, as the original public clouds were indeed unstable, and customers were observing. Of course, some IaaS companies claim to be “enterprise-grade IaaS,” which is somewhat gimmicky. After all, which IaaS is not targeting the enterprise-level market?

PaaS definitions are complex; early offerings provided platforms with databases and development environments, known as XAE (X: initial of the enterprise name; AE: Application Engine). XAE was often used for personal website building and not very commercially viable, especially in China. Later, PaaS transformed to offer specific capabilities like image recognition, voice recognition, push notifications, and communication, often delivered via API or SDK. In recent years, Docker has emerged as a new star in PaaS.

Looking back, the various definitions of PaaS seem inappropriate. A more accurate description would be: PaaS provides capabilities beyond the three foundational resources (computing, storage, and networking), such as general development capabilities, specialized capabilities, and business delivery capabilities, but does not provide mature products directly to end users.

SaaS encompasses a wide range of services, including email, cloud storage, and almost any common website! However, the term SaaS generally refers to software services that are relatively complex, primarily completed on the C-side under a C/S architecture and on the B-side under a B/S architecture. The complexity of this definition varies over time; a dozen years ago, email might have been considered complex, but now, with the maturity of HTML5 technology, most office operations can be performed in a browser.

In the enterprise market, SaaS is more clearly defined, referring to services that replace traditional enterprise software systems with cloud solutions. SaaS began in the late 1990s with companies like Salesforce and has flourished with the development of mobile and HTML5 technology, emphasizing thin clients. However, how thin is considered thin? Various applications are now appearing not as apps but as mini-programs, which may also qualify as thin.

Perhaps the ultimate evolution of SaaS is pure “bare metal,” also known as “desktop cloud,” but this is merely an ideal, as it involves not only hardware and software technology but also user habits. Many users still prefer to store movies on external hard drives, feeling secure when they tuck them away in a drawer!

SaaS is the closest to end users, representing a massive market. However, SaaS is a comprehensive test of software development and service levels, where success often relies not only on technology but also on understanding users, design quality, and creativity. If a product was previously unsellable, simply re-packaging it as a cloud service won’t attract buyers. At least, before, there was no accountability for downtime; moving to the cloud simply increases the risks for SaaS providers.

Thus, SaaS is not merely about migrating software from local machines to the cloud; it should always embody the service philosophy and cloud mindset, such as multi-screen synchronization and collaborative features. Therefore, while we are optimistic about the overall market, we are not optimistic about the numerous worthless enterprises in the SaaS field. In times of capital winter, these are often the first to fall.

Understanding Cloud Computing: A Comprehensive Guide

What Value Does Cloud Computing Offer?

Lower costs, reduced operational costs, better services, elastic scalability, faster deployment, and no need for hardware procurement—cloud computing’s benefits can be listed endlessly. However, these points often reflect only one side of cloud computing, and some may not be entirely accurate: for instance, while costs may be low, customers will find that if they rent high-performance cloud servers with a guaranteed 99.99% uptime, the costs are often not lower than building their own data centers, especially when the required number of servers (physical or virtual) is substantial.

In fact, the essence of cloud computing is social division of labor, and the value generated by social division of labor is what cloud computing can produce, such as cost reductions and efficiency improvements from scale and precision; however, the problems arising from social division of labor are also faced by cloud computing, such as whether the saved costs benefit buyers or sellers, and issues of monopoly. Taking the example of steamed buns, in cities, most families do not steam buns themselves but buy them from bun shops. This represents social division of labor, saving overall social costs; however, buying buns is not cheaper than steaming them at home, indicating that the saved costs benefit the seller rather than the buyer. Furthermore, when a city only has one bun shop and most families lose the ability to steam buns, that shop may raise prices, indicating a monopoly.

Understanding Cloud Computing: A Comprehensive Guide

Understanding that cloud computing is fundamentally a social division of labor helps avoid over-exaggerating its advantages or underestimating its significance as a passing trend. From hunting to agriculture and then to industrial society, from bartering sheep for axes to shells, metal currency, paper money, and virtual currency, everything humans do is aimed at promoting social division of labor.

Therefore, with regard to the cloud, escaping is futile, and hiding is pointless; the era will inevitably arrive. Embrace it decisively, choose rationally, and implement it practically for the future.

This article is sourced from: Chengmai Technology

Submission email: [email protected]

Long press the QR code below to subscribe for free

C2

How to Join the Society

Register as a member:

Individual Member:

Follow the society’s WeChat: China Command and Control Society (c2_china), reply “Individual Member” to obtain the membership application form. Fill out the application form as required. If you have any questions, you can leave a message in the public account. Only after passing the society’s review can you pay membership fees online via Alipay.

Corporate Member:

Follow the society’s WeChat: China Command and Control Society (c2_china), reply “Corporate Member” to obtain the membership application form. Fill out the application form as required, and for any questions, you can leave a message in the public account. Only after passing the society’s review can you pay membership fees.

Long press the QR code below to follow the society’s WeChat

Understanding Cloud Computing: A Comprehensive Guide

Leave a Comment