Before the advent of container technology, the DevOps theory had been developing for years. However, if the development and O&M teams cannot communicate in the same language and collaborate using consistent technology, they will never break down organizational and cultural barriers. The emergence of Docker container technology has streamlined the software delivery process. It needs to be built once and can be deployed everywhere. Combining cloud computing programmable infrastructure and Kubernetes declarative APIs, you can implement automated continuous integration and delivery of applications and infrastructure through pipelines, accelerating the integration of development and O&M.
The following figure shows one of the most simplified pipelines of container application DevSecOps:
After the code is submitted, you can use Alibaba Cloud Container Registry (ACR) to actively scan applications and sign images. When a cluster of Alibaba Cloud Container Service for Kubernetes (ACK) starts to deploy applications, the security policy can verify the images and reject the application images that fail to pass the verification. Similarly, if we modify the infrastructure through the Infrastructure as Code, we can scan the engine for risks before the modification. If relevant security risks are found, we can terminate the modification and raise an alert.
With a simple configuration wizard, you can deploy applications in multiple clusters, multiple regions, hybrid clouds, and multiple clouds with one click. It is combined with ACR to implement an automatic trigger. Therefore, when a new image is pushed, the deployment process is automatically triggered.
Distributed applications and serverless applications are accepted by more developers and enterprises in the cloud-native era, but the O&M-related problems also gradually arise. Therefore, in addition to CI/CD, monitoring, tracing analysis, and root cause analysis for microservices are important issues that DevOps teams need to solve.
The request link is too long in the microservices model. Thus, it takes a long time to locate problems. It is also very difficult for O&M teams to perform daily monitoring. For example, it requires multiple microservices to complete the request of a single user in a distributed application. Any service failure or poor performance will affect the response to the user request. As the business continues to expand, the call chain is becoming more complex. It is difficult for troubleshooting or performance analysis to implement panorama browsing or drill down data only with printing logs or APM performance monitoring.
A typical troubleshooting process of service problems:
Log Service provides the Trace feature based on the OpenTelemetry standard. It can generate a microservice topology and search the call chain by Trace. You can use TraceID to directly jump to Log to view detailed logs and analyze logs. You can use custom events to redirect to the code library based on the caller field of logs.
The application monitoring of ARMS also provides the ability to easily view the call chain and find the root causes of problems.
One of the core tasks of modern software architectures is to define the boundary between infrastructure and application and reasonably reduce the complexity that application developers have to face. In other words, let developers focus on the core business and innovation and leave other problems to more suitable people and systems to solve.
The core idea of microservice is to split and decouple application features to reduce the complexity of business system implementation. Microservices emphasize the dismantling of application features into a set of loosely coupled services, each of which adheres to the single responsibility principle. Microservice architecture has solved several problems of traditional monolithic applications. With microservice architecture, each service can be independently deployed and delivered, significantly improving business agility. In addition, each service can independently scale out and in horizontally to meet Internet-scale challenges.
Microservice gateways and components of service registration and discovery are also removed and provided as separate services in the cloud-native era. This part is also listed as infrastructure services.
Alibaba Cloud Microservice Engine (MSE) is an end-to-end microservice platform developed for the mainstream open-source microservice ecosystems in the industry. MSE is fully compatible with open-source ecosystems, such as Spring Cloud and Dubbo. MSE provides high-performance and highly available enterprise-level cloud service capabilities, such as service registration and discovery, configuration management, gateway access, and service governance.
Microservices are gradually developing towards platform solutions, but microservices have a higher demand for gateway integration. Cloud-native gateways combine network gateways (such as Kubernetes Ingress and NGINX) and microservice gateways (such as Spring Cloud Gateway and Zuul Gateway). Therefore, cloud-native gateways reduce the cost by 50% and the round-trip time (RTT) and simplify O&M.
With the maturity of cloud computing technology, DevOps has also extended from the earliest CI/CD to application monitoring, microservice governance, and other fields. The traditional development model can no longer meet the development requirements in modern times. Cloud-native technology can effectively ensure the modernization of R&D and O&M. Cloud-native technology continuously improves the technical capabilities for R&D and O&M from the perspective of the platform tool. It also enhances the efficiency of developers.
This series focuses on the inner workings of CloudOps, DevOps, SecOps, AIOps, and FinOps and how it relates to End-to-End Cloud-Native Application Management, which enables efficient, secure, and transparent container management. Learn more by visiting the landing page and be sure to check the other articles in this series!
Alibaba Cloud New Products - November 10, 2020
Alibaba Cloud Community - May 12, 2022
Alibaba Cloud Community - May 16, 2022
Alibaba Cloud Community - June 8, 2022
OpenAnolis - July 14, 2022
Alibaba Container Service - April 16, 2021
A unified, efficient, and secure platform that provides cloud-based O&M, access control, and operation audit.Learn More
Managed Service for Grafana displays a large amount of data in real time to provide an overview of business and O&M monitoring.Learn More
Accelerate software development and delivery by integrating DevOps with the cloudLearn More
An enterprise-level continuous delivery tool.Learn More
More Posts by Alibaba Cloud Community