First published at: github.com/USTB-musion…

Writing in the front

The word “cloud computing” has frequently appeared in media reports in recent years. It can be said that it is very hot, but many friends around say that the word has a vague feeling. I believe that many people have looked up cloud computing related materials, and then heard of VMware, KVM, Docker, K8S, OpenStack, virtualization and so on these terms, these are cloud computing category, but many beginners to these concepts cloud fog, want to string together these technologies is more difficult. So write an article here to introduce some important terms of cloud computing and their relationship, and how cloud computing developed? How is it different from the original technology? What new dimensions does it lead to?

What is cloud computing?

What is cloud computing if you search for it in a search engine? There are dozens of answers, but that’s because no organization has a clear definition of cloud computing. What about simplicity?

Cloud computing is an on-demand, pay-as-you-go service model that provides available, convenient, on-demand network access and configurable computing resource pools.

For example, before cloud computing came out, a company needed to build a system to support its own business, so it needed to build its own computer room, buy physical machines, build the system, develop corresponding applications, and then set up special personnel to maintain. Traditionally, the cost of setting up a system is high. Cloud computing, on the other hand, offers an on-demand business model in which users build systems and simply rent the services they want from cloud computing providers.

Cloud computing is a very old question, probably around 2000, IT became popular, many companies have been doing digital transformation, at the same time, many large institutions such as Banks, hospitals, schools want to before the multifarious, need artificial processing operations on the server for processing. At that time, purchasing hardware and renting IDC (Internet Data Center) room were the mainstream IT infrastructure construction methods. In addition to servers, professionals were responsible for the cabinet, bandwidth, switch, network configuration, software installation, virtualization and other low-level matters. The response period for adjustment is also longer.

For cloud computing, there is a graphic explanation on the Internet:

Eat three meals a day

If you want to eat when you are hungry, cooking at home is a private cloud built by yourself. You need to build a kitchen to buy POTS and pans, firewood, rice, oil and salt, etc. After eating, you also need to do the operation and maintenance work, which takes time and effort.

What restaurants provide outside is equivalent to public cloud service. They eat as needed, wipe their mouth and leave after paying the bill. How to arrange the cooking order and speed up the dishes is the concept of load balancing and virtualization. Inviting chefs to cook at home is a typical hybrid cloud, with limited use of the public cloud as long as the assets are safe.

There are four deployment modes of cloud computing: public cloud, private cloud, hybrid cloud, and industry cloud

Public cloud: it provides computing resources provided by one service provider to multiple customers. Customers can obtain these resources through leasing according to their actual needs, such as AWS, Ali Cloud, Tencent Cloud, etc.

Private cloud: Computing resources are reserved for and controlled by an enterprise. Private cloud is usually deployed in the data center of an enterprise and managed by internal personnel of the enterprise. Powerful large companies tend to build their own private cloud, such as Tencent private cloud and bank private cloud.

Hybrid cloud: it is the mixture of public cloud and private cloud. The strategy of hybrid cloud is to keep those relatively private operations in the private cloud part and deploy relatively open computing in the public cloud part. Hybrid cloud can take into account the advantages of both clouds, such as public cloud + private cloud and multi-cloud communication.

Industry cloud: it is also a public cloud, but optimized for a specific industry, such as the financial industry cloud made for the special optimization of the financial industry, the education industry cloud made for the special optimization of the education industry.

There are three service modes of cloud computing: IaaS, PaaS and SaaS

Cloud computing is divided into three delivery models, namely Iaas, Paas and Saas. The differences are as follows:

  • Infrastructure as a Service (IaaS) refers to basic underlying capabilities such as computing, storage, and network provided by cloud computing.
  • Platform as a Service (PaaS) refers to domain – or scenario-oriented high-level services, such as databases and application services, built based on cloud underlying capabilities.
  • Software as a Service (SaaS) refers to the provision of Software program services, such as ERP and Tencent documents, through the network.

For a better picture:

At present, mainstream cloud computing providers, such as AWS, Ali Cloud, Tencent Cloud, Huawei cloud and so on, all provide resources of the above three levels. The cloud computing vendors can provide resources of any level that users want. So many cloud computing services, cloud computing vendors and how to provide users? At this point, various software and platforms were born to call and manage resources.

What is virtualization?

Virtualization is one of the key technologies to implement cloud computing. What is virtualization? Virtualization uses the Hypervisor or Virtual Machine Monitor (VVM) to hide physical features of underlying computing platforms and provide users with an abstract and unified Virtual computing environment. Mainstream virtualization technologies include VMware, Xen, and KVM.

A Hypervisor, also called a VVM, is not a specific piece of software. It is used to virtualize physical resources. Hypervisor/VMM categories can be divided into two categories:

1. Bare metal Virtualization (Type I virtualization)

VVM runs directly on hardware (physical machines). Virtual machines run on top of VVMS

2. Host-based virtualization (Type II virtualization) Install a normal operating system (such as Linux or Windows) on the hardware (physical machine) and install VVMS on the normal operating system to generate and manage VMS.

Still have a kind is mixed virtualization, be above two kinds of mix.

KVM is currently the most popular virtualization technology.

KVM, which stands for kernel-based Virtual Machine, is an open source virtualization technology built in Linux.

VVM software, such as KVM, actually provides a virtualization capability to simulate CPU operation. However, the interaction is not very good. In this case, a management platform like OpenStack is needed.

Openstack is an open source cloud computing management platform. It is mainly used to manage “infrastructure resources”, such as computing, storage, and network resources.

This is the OpenStack Web management interface, which is much simpler than the KVM command line. So far, the terms KVM and OpenStack have been explained clearly, and they all belong to Iaas. What about Docker, K8S?

Docker & K8S

When it comes to containers, the first thing that comes to mind is Docker, a more lightweight virtualization technology. However, unlike virtual machines, containers are process-level resource isolation, and virtual machines are operating system-level resource isolation.

The Logo of Docker is 🐳 carrying many containers, and the slogan is Build once, Run Anywhere. Docker starts up faster than a virtual machine.

So, Docker, what is K8S? That is because although Docker is very popular, it is very difficult to schedule and manage when it is applied to specific businesses, so K8S came into being.

K8S is a production-level container choreography system. The full name is Kubernetes, because there are eight letters in the word, so the abbreviation is K8S, which comes from the Greek word meaning helmsman or navigator. Its main job is container choreography — starting containers, automating the deployment, extension, and management of container applications, and recycling containers.

To put it simply, K8S is used to manage Docker, which is not the underlying infrastructure, but the application layer, so it belongs to Paas service.

Big Data & AI

Ma huateng: The future of the Internet is to use ARTIFICIAL intelligence to process big data in the cloud

Big data has four V characteristics: Volume, Value, Velocity, and Variety. The collection, transmission, storage, and processing of big data have high requirements on the system and require specialized components, such as HBase, HDFS, and Spark. AI also has four elements: big data, algorithms, computing power, and clear boundaries. Massive big data is fundamental, and then AI can process the data. The combination of the two can play a huge role, and both of them are the priorities of the fourth industrial Revolution.

conclusion

I believe that through the above combing, we have a basic framework understanding of cloud computing. The future of the information age may be: cloud computing, big data, artificial intelligence, Internet of Things, quantum computing, quantum communication and so on. Cloud computing is the cornerstone of the industrial Internet. As cloud computing becomes more and more mature, it becomes a natural thing just like hydropower and can be deeply applied to various fields.

Refer to the link

10 minutes to understand Docker and K8S

The popular science | what is cloud computing

What is cloud computing? You will understand after reading this article