Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

OAM Application-centric solution in Kubernetes practice

2025-01-18 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Internet Technology >

Share

Shulou(Shulou.com)06/01 Report--

This article shows you the OAM application-centric solution in Kubernetes practice, which is concise and easy to understand, which will definitely brighten your eyes. I hope you can get something through the detailed introduction of this article.

The value of OAM Model

In response to the demands of the above users, we look at how OAM is satisfied one by one, and we can also see the value of OAM in it.

Yunyuan biochemistry

The definition of OAM application is declarative, that is, it is final state oriented. Its format is consistent with API of K8s and can be seamlessly docked with CRD of K8s. It can be directly deployed to K8s as Object of Custom Resource.

The OAM application definition is self-contained, and through the description of the OAM definition, you can find all the information that contains all aspects of an application life cycle.

As shown in the figure below, you can see an application configuration running OAM, using K8s API spec, which completely contains resources for all aspects of the application.

Platform-independent, runtime-independent

OAM application definition does not define your underlying platform and actual runtime, you can run on platforms other than K8s, whether it is ECS, Docker, or FaaS (Serverless), and naturally there is no vendor locking problem. If your application meets the conditions of Serverless, then the OAM description of the application can naturally run at the Serverless runtime that supports the OAM specification.

In different environments that support OAM, you can use a unified application description to create undifferentiated application delivery. As shown in the following figure, corresponding users can achieve a consistent application experience in different environments as long as they describe a unified application configuration.

OAM (Open Application Model) is such an application-centric hierarchical model of K8s API:

From the perspective of research and development, the API object he operates and follows is called Component.

From the point of view of operation and maintenance, the modular encapsulation of operation and maintenance capability is Trait, and operation and maintenance can combine Component and Trait freely through App Config, and finally instantiate into a running application.

The K8s team itself is still based on the native API iteration capability of K8s.

In view of the complexity of K8s API that R & D often complains, we solve the problem by separating concerns and distinguishing the API faced by users. At the same time, we provide several core Workload, so that R & D only needs to fill in a few fields to complete the definition of components; for complex application definition, we allow R & D to connect CRD Operator with custom Workload through extended Workload.

In order to meet the requirements of modular packaging operation and maintenance capability and global management required by operation and maintenance, the OAM model is provided through Trait.

Trait is the embodiment of operation and maintenance capabilities, and different Trait also corresponds to different types of operation and maintenance capabilities, such as log collection Trait, load balancer Trait, horizontal scaling and scaling Trait, and so on. At the same time, OAM itself provides a standard for global management, and the implementation layer of the OAM model can easily manage and check various Trait descriptions in the OAM definition.

For cloud resources, OAM also provides a unified API for cloud resources, which is divided into three categories through concerns:

One is cloud resources that R & D is concerned about, such as database RDS, object storage OSS, etc., which are connected through extended Workload.

The other is the cloud resources concerned by operators, such as load balancer SLB, which are accessed through Trait.

The last category is also cloud resources concerned by operation and maintenance, but it may include linkage between multiple applications, such as virtual private network VPC, which is accessed through the Scope of the application. Scope is the concept of managing multi-application linkage relationship in OAM.

As you can see, OAM has solved all the problems we mentioned today through a unified set of standards. Let's dig deeper into OAM to see exactly what the different concepts are.

The above is the OAM application-centric solution in Kubernetes practice. Have you learned the knowledge or skills? If you want to learn more skills or enrich your knowledge reserve, you are welcome to follow the industry information channel.

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Internet Technology

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report