Cloud native is a set of cloud technology product system based on distributed deployment and unified transportation management, and container, micro service, Devops and other technologies.
云原生从字面意思上来看可以分成云和原生两个部分。云是和本地相对的，传统的应用必须跑在本地服务器上，现在流行的应用都跑在云端，云包含了 IaaS,、PaaS 和 SaaS。
Cloud primitiveness can be divided into two parts: cloud and primitiveness. Cloud is relative to local. Traditional applications must run on local servers. Now popular applications run on the cloud. Cloud includes IAAs, PAAS and SaaS.
Native means native. When we started to design applications, we considered that applications would run in the cloud environment in the future. We should make full use of the advantages of cloud resources, such as the flexibility and distributed advantages of cloud services.
The dialogue around cloud Nativity will dive directly into technology choices such as containerization and microservices. These are definitely potential components of cloud native projects, but not all of them. In this series of articles, we will explore the native cloud from several different perspectives, including technology and infrastructure, as well as architecture, design, and possibly the most neglected people and processes. In the simplest terms, cloud Nativity means not only migrating to the cloud, but also making full use of the uniqueness of cloud infrastructure and services to quickly deliver business value.
The concept of cloud Nativity existed before the term itself was used. In a sense, cloud Nativity begins with public cloud providers providing easy and affordable access to instances of elastic computing power. The question becomes, how to use the flexibility of the new infrastructure to write applications and the business benefits?
In the past decade, cloud native methods and technologies have undergone great changes and are still developing, but the core technology and business objectives of cloud native applications remain unchanged. These include:
Agility and productivity: achieve rapid innovation guided by business indicators. Reduce maintenance risk and keep the environment up to date.
Resilience and scalability: the goal is self-healing and continuous availability without downtime. Provides flexible scaling and unlimited capacity perception.
Optimization and efficiency: optimize the cost of infrastructure and human resources. Enable free movement between location and provider.
When we review the “why” of cloud nativity, we will further subdivide these goals in later articles, but we hope that even from this simple definition, it should be clear that the scope of cloud nativity is wider than just moving to new types. infrastructure. But while these goals are accurate, it’s hard to see that they are specifically for the native cloud. We need to do more to define what cloud Nativity really means.
与云原生相关的流行参考点(例如微服务)和较早的清单(例如 12factor 应用)可能会让您得出结论，云原生是对体系结构样式的描述，其他选择也随之而来。毫无疑问，云原生架构确实存在。但是，为了在云原生平台上取得成功，公司必须采取更全面的看法。除了架构和基础架构决策外，还存在组织和流程决策。
Popular reference points related to cloud Nativity (e.g., microservices) and earlier checklists (e.g., 12factor applications) may lead you to conclude that cloud nativity is a description of architectural styles, and other choices follow. There is no doubt that cloud native architecture does exist. However, in order to succeed on cloud native platforms, companies must take a more comprehensive view. In addition to architecture and infrastructure decisions, there are organizational and process decisions.
Microservices solve the problem of low coupling and high cohesion that we have been pursuing in software development. I remember that once there was a problem with the interface of our system, which affected the user’s front-end operation. So Uncle Li stood up and asked, “why do these two affect each other?”
Microservice can solve this problem. The essence of microservice is to divide a big cake into several low coupling small cakes. For example, a small cake is specially responsible for receiving external data, and a small cake is specially responsible for responding to the operation of the foreground. The small cake can be further split. For example, the small cake that is responsible for receiving external data can continue to be divided into several small cakes that are responsible for receiving different types of data If there is something wrong with each cookie, other cookies can still provide normal external services.
Devops means that development and operation and maintenance are no longer two separate teams, but a team with you and me. We are now a team in development and operation and maintenance, but the knowledge and experience in operation and maintenance still need to be continuously improved.
Continuous delivery means that new functions are frequently released to users without affecting users’ use of services, which is very difficult to achieve. We now have a two-week version. Every time we go online, it will affect different users to different degrees.
容器化的好处在于运维的时候不需要再关心每个服务所使用的技术栈了，每个服务都被无差别地封装在容器里，可以被无差别地管理和维护，现在比较流行的工具是 docker 和 k8s。
The advantage of containerization is that during operation and maintenance, you no longer need to care about the technology stack used by each service. Each service is encapsulated in a container without any difference, and can be managed and maintained without any difference. Now the more popular tools are docker and k8s.
所以你也可以简单地把云原生理解为：云原生 = 微服务 + DevOps + 持续交付 + 容器化
So you can simply understand cloud nativity as: cloud Nativity = microservice + Devops + continuous delivery + containerization