当前位置:网站首页>Break the cocoon | one article explains what is the real cloud primordial
Break the cocoon | one article explains what is the real cloud primordial
2022-07-02 09:17:00 【_ Time boiled the rain】

Preface
2013 year ,Pivotal The company's Matt Stine It is the first time to creatively propose cloud primitives (CloudNative) The concept of , Same year ,Docker Container technology announces open source , Quickly set off a wave of virtualization and swept the industry . And then ,Google Announce a hug Docker , And released an open source orchestration tool that provides the ability of automated unified deployment Kubernetes. 2015 year ,Google Take the lead in establishing the cloud native foundation (CNCF), thereafter ,AWS、Azure、Alibaba Cloud And other large cloud computing manufacturers have joined , Make cloud primordial enter people's sight completely and develop rapidly .
here we are 2202 year , If you don't know what cloud primitives are , That's true OUT 了 , Roll it up !
One 、 What is cloud native ?
Pivotal company (Spring、Spring Boot 、Spring Cloud 、RabbitMQ Many excellent open source software are owned by their families ) Is defined as : Microservices + Containers +DevOps+ Continuous delivery .
CNCF The foundation defines cloud nativity as :
Cloud native technology is good for organizations in the public cloud 、 In new dynamic environments such as private and hybrid clouds , Build and run scalable applications . Representative technologies of cloud native include Containers 、 Service Grid 、 Microservices 、 Immutable infrastructure and declarative API.
These technologies can build good fault tolerance 、 A loosely coupled system that is easy to manage and easy to observe . Combined with reliable automation means , Cloud native technology makes it easy for engineers to make frequent and predictable major changes to the system .
Cloud native Computing Foundation (CNCF) Committed to fostering and maintaining a vendor neutral open source ecosystem , To promote cloud native technology . By democratizing the most cutting-edge model , Let these innovations be used by the public .

In a nutshell : Cloud native is Using virtualization technology ( Such as Docker) And automatic editing tools ( Such as K8s) Containerization , Use the microservice architecture ( Such as SpringCloud), With agile development 、DevOps Support continuous delivery and operation and maintenance automation ( Such as JIRA、TAPD、Jenkins), Based on elasticity 、 Dynamically scheduled cloud platform facilities ( Such as various container clouds ), Implementation from design 、 Development 、 test 、 Deploy the overall technical solution system on the cloud throughout the whole cycle .
Two 、 Cloud primitives
1. Containerization (Containers)

In the last century 70 s , With the rapid development of Cloud Computing , Around how to improve resource utilization , Produced the earliest resource isolation technology , Such as chroot. To 21 At the beginning of the century ,Namespace、Cgroup Wait for resource isolation technology to join Linux kernel , But it is not convenient for developers to call the system kernel directly , Therefore, the complexity of the interaction between the application and the system kernel is greatly simplified LXC Container technology , And formed the container bottom Technology Kernel standard .
Docker From dotCloud An internal project of the company , It USES Google company-launched Go Language implementation , be based on Linux Kernel cgroup,namespace, as well as OverlayFS Class Union FS Technology , Operating system level virtualization technology that encapsulates and isolates processes . Because the isolated process is independent of the host and other isolated processes , So it's also called a container . The initial implementation is based on LXC, from 0.7 The version begins to remove LXC, Turn to self-developed libcontainer, from 1.11 Start , Then it further evolved to use runC and containerd.
Docker Encapsulate complex kernel functions into developer friendly components , Make it easy for developers to package 、 Upload 、 download 、 Run and debug container applications , Coupled with its very lightweight performance in memory and space use , It is very suitable for horizontal expansion application scenarios ( For example, cloud native applications ), Once announced, open source , It quickly becomes the most widely used container engine , It is widely used in the infrastructure of major Internet manufacturers , Become De facto standards for container technology .

Kubernetes yes Google stay 2014 Launched in, based on Borg Free open source project , For container management , Load balancing between containers , rely on Google Support and excellent performance in super large-scale environment , Free and open source Kubernetes A big hit , It has become a large-scale De facto standard for container application scheduling and management technology .
Kubernetes You can deploy a cloud service controller manager to make Kubernetes Enjoy computing on the cloud 、 Storage 、 Network and other resources , You can even combine multiple online 、 Offline cloud resources , Realize real cloud connectivity . This feature makes Kubernetes Become worthy of Cloud primary cornerstone .
Google It was planned to donate the project to Docker, but Docker The leadership of did not accept Kubernetes, Nor does it relate to Docker Integrate ( It was launched a few years later Kubernetes Integration mechanism ), Instead, it is regarded as its own income generating product --Docker Swarm competitors . Recently, Docker The company changed its owners several times 、 Facing great challenges ,2020 year 12 month ,Kubernetes Official announcement :“Kubernetes To be abandoned Docker When running as a container ”.
2. Microservices (Microservices)
Almost every cloud native definition includes microservices , Microservices are relative to individual applications , Microservices are based on “ Low coupling 、 High cohesion ” principle , Split a single application into multiple services according to the actual business functions , Each service provides specific business functions ( Principle of single responsibility ), Each service can be deployed separately , Are independent of each other . The splitting of services can also be based on DDD Concept .

Microservice and microservice architecture are two different concepts , Microservices emphasize the size of services and provide a single business function , Microservice architecture refers to managing the combination of applications and services deployed in the cloud , To provide a complete set of services to the outside world .
3.DevOps

DevOps, It's a compound word , Include Development( Development ) and Operations( Operation and maintenance ), In fact, it should also include QA( Quality assurance ).
The traditional organizational structure is generally based on development 、 test 、 Division of labor and cooperation between operation and maintenance , After service , Plus the convenience provided by virtualization and container technology , Make the development mode ( Such as waterfall to agility )、 Organization form ( For example, each service may have independent development 、 test 、 Operation and maintenance team , The boundary between development and operation and maintenance is more blurred ) Even the whole life cycle has undergone great changes , Also make DevOps Become a more urgent requirement .

All in all ,DevOps Is to adopt agile methods , By reforming the organizational structure , Software flow , Use software lifecycle management tools to provide continuous integration and delivery capabilities for cloud native .
4. cloud (Cloud)

The cloud provides computing for the operation of upper layer applications 、 The Internet 、 Infrastructure resources such as storage , It is the cloud's native infrastructure .
Determine whether an application or architecture belongs to cloud native , It's not using Docker Containers , Used Kubernetes management , Using the microservice architecture is cloud native , If it is still deployed on the physical machine of the traditional machine room , I don't think it's a real cloud native . Only in the way of cloud ( For example, public cloud 、 Private cloud or hybrid cloud ) Deploy , Only when the application of management is really built on the cloud can it be regarded as cloud native , Throw away the cloud's original , It's a rootless tree , Water without source .
summary
「 For the cloud 」 All technologies are cloud native technologies ,「 Born of cloud 」 Soft 、 Hardware integration architecture , Is the real cloud native .
边栏推荐
- C4D quick start tutorial - C4d mapping
- QT drag event
- 查看was发布的应用程序的端口
- 「Redis源码系列」关于源码阅读的学习与思考
- During MySQL installation, mysqld Exe reports that the application cannot start normally (0xc000007b)`
- There is a problem with MySQL installation (the service already exists)
- WSL installation, beautification, network agent and remote development
- I've taken it. MySQL table 500W rows, but someone doesn't partition it?
- A detailed explanation takes you to reproduce the statistical learning method again -- Chapter 2, perceptron model
- Cartoon rendering - average normal stroke
猜你喜欢

I've taken it. MySQL table 500W rows, but someone doesn't partition it?

C language implementation of mine sweeping game

Matplotlib swordsman Tour - an artist tutorial to accommodate all rivers

微服务实战|微服务网关Zuul入门与实战

Flink - use the streaming batch API to count the number of words
![[go practical basis] how to customize and use a middleware in gin](/img/fb/c0a4453b5d3fda845c207c0cb928ae.png)
[go practical basis] how to customize and use a middleware in gin

Programmers with ten years of development experience tell you, what core competitiveness do you lack?

一篇详解带你再次重现《统计学习方法》——第二章、感知机模型

A detailed explanation takes you to reproduce the statistical learning method again -- Chapter 2, perceptron model

微服务实战|原生态实现服务的发现与调用
随机推荐
Flink - use the streaming batch API to count the number of words
WSL installation, beautification, network agent and remote development
MYSQL安装出现问题(The service already exists)
机器学习实战:《美人鱼》属于爱情片还是动作片?KNN揭晓答案
AMQ6126问题解决思路
Jingdong senior engineer has developed for ten years and compiled "core technology of 100 million traffic website architecture"
QT drag event
[staff] the lines and spaces of the staff (the nth line and the nth space in the staff | the plus N line and the plus N space on the staff | the plus N line and the plus N space below the staff | the
《统计学习方法》——第五章、决策树模型与学习(上)
Gocv split color channel
机器学习之数据类型案例——基于朴素贝叶斯法,用数据辩男女
【Go实战基础】gin 高效神器,如何将参数绑定到结构体
Dix ans d'expérience dans le développement de programmeurs vous disent quelles compétences de base vous manquez encore?
Win10 uses docker to pull the redis image and reports an error read only file system: unknown
使用IBM MQ远程连接时报错AMQ 4043解决思路
Oracle modifies tablespace names and data files
Matplotlib swordsman line - first acquaintance with Matplotlib
hystrix 实现请求合并
微服务实战|熔断器Hystrix初体验
There is a problem with MySQL installation (the service already exists)