Interview Guest: Zhang Jun (You Ji)
With the continuous emergence of new technologies, enterprises will face many technical difficulties in the process of digital transformation. In response, Alibaba Cloud released the industry's first cloud-native technology mid-stage product-Cloud Native Stack (CNStack for short). Compared with the frequently heard concepts of business middle station and data middle station, how do you understand the concept of cloud native technology middle station? How will it specifically help companies solve the challenges of corporate digital transformation?
On November 24th, InfoQ's big talk column invited Zhang Jun, the head of the Alibaba Cloud native PaaS team and senior technical expert, and the famous name You Ji, to share related issues. You Ji talked about the development of cloud-native technology to the planning of cloud-native technology in Taiwan and its practical cases.
You Ji has led the design and construction of many high-availability technology product systems of Alibaba Group and Alibaba Cloud. He is also the core creator of the basic technology for the stability of Double 11 and is currently responsible for the construction of the cloud-native PaaS platform. The following content is excerpted from the sharing of the day, and InfoQ has edited it without changing its original intention:
InfoQ: First of all, you Jilai, please say hello to everyone and briefly introduce yourself.
You Ji: Hello, everyone, my name is Zhang Jun, and my name is You Ji. I joined Alibaba in 2011. At that time, I was responsible for Alibaba's middleware and high-availability-related basic technologies. Later, I was also responsible for the Alibaba Cloud SRE team. In the past ten years, I have been deeply involved in middleware and basic technologies related fields. The high-availability technology that I am responsible for is closely related to the stability of Double Eleven. Now I am mainly responsible for the construction of the cloud-native PaaS platform, which is based on the cloud-native technology to build the PaaS platform in the cloud-native era.
\
Cloud native technology definition and development process
InfoQ: You Jilai, please give us an overall introduction to the definition of cloud native and its development process. In your opinion, what is the current stage of cloud native?
You Ji: cloud native is actually a very popular word in recent years, but at the same time it has a very broad meaning. From its proposal to today, its definition and technical connotations have been constantly changing. We quote the Cloud Native Computing Foundation to make a standard definition for it.
Cloud native is actually a collection of architectural methodology and technologies. First, it has a prerequisite. Our applications are built on the cloud, and then based on the cloud, it is easy to manage, scalable, fault-tolerant, and more loosely coupled. Application system.
In fact, cloud native not only defines the state of the built application system, but also provides a set of corresponding technologies, such as containers, microservices, DevOps, and Serverless, service grids that we are very familiar with, including declarative APIs and immutable infrastructure. It not only provides a methodology and philosophy, but also a corresponding technology set. In this technical system, a landmark event of cloud native is the establishment of CNCF in 2015. CNCF has made a standardized definition of cloud native. At the same time, it is a relatively neutral organization that undertakes the promotion of cloud native. CNCF also provides a series of technology sets just mentioned. On top of the technology set, it provides the entire cloud-native big picture Landscape, including corresponding technologies, tools and platforms, and finally builds operations, management, scalability, and better fault tolerance. Business applications, and these business applications can run in different environments such as public cloud, private cloud, and hybrid cloud. This is the definition of cloud native and its current development.
From the birth of cloud native to the establishment of CNCF, the entire cloud native technology began to develop rapidly. At present, both in the community and in the enterprise, cloud native has been quickly implemented.
InfoQ: What are the benefits of cloud native technology development to the current stage for enterprises? At the same time, what challenges did it bring?
You Ji: are actually obvious.
First, the cloud natively encapsulates the complexity of the entire infrastructure. Based on K8s and containers, it can no longer see the complexity of the underlying infrastructure and can shield the differences in the underlying architecture. Today, based on the cloud-native architecture and foundation, K8s and containers have become the new interface of the infrastructure.
Second, the cloud-native pairing can support a variety of workloads and distributed architectures. Whether it is our business applications or other equipment, we can use cloud-native technology for unified hosting. At the same time, it has natural distributed capabilities, micro-service capabilities, and can maximize the use of cloud capabilities, such as flexibility, disaster tolerance, and stability, and can maximize the advantages of the cloud. This is its advantage.
However, cloud native also has some challenges for enterprises to land. First, I don’t know if you have seen CNCF’s Landscape. It’s a very complex technical picture with many technical components. This concept is good, but it’s not really easy to use it. It means that good ideas may not really bring good value conversion. Because after too much technology, I don't know how to use it well, and how to use it is the best practice. In fact, there are different opinions and there is no standard statement.
Second, there is a lack of unified planning and integration programs. Nowadays, many companies that apply cloud native technology are actually using it in a componentized way, such as using K8s, containers, microservices, DevOps or Service Mesh, but they are actually using it in a componentized way.
If used in a componentized way, the technology is actually relatively fragmented. Without an integrated solution, the efficiency will be relatively low. At the same time, the application of componentization brings another problem, that is, the component itself is also complicated. Although in the cloud-native scenario, the complexity of applications and infrastructure is shielded, turning on the cloud-native technology and using it in a componentized manner has its own operation and maintenance costs, and its component ecology is also very rich. Under the pressure of cost, it will also bring a series of stability and availability problems, which are some of the challenges for cloud native technology.
\
How to understand cloud native technology
InfoQ: At the Cloud Home Conference just in the past, Alibaba Cloud released the industry's first cloud-native technology middle-stage product CNStack. We often talk about data middle-stage and business middle-stage. So how do you understand cloud-native technology middle-stage? How is it different from the Zhongtai mentioned earlier?
You Ji: is actually an iron triangle, the top is the data center, the business center, and the bottom is the technology center. It’s just the concept of the technology center. Its scope is relatively wide, so there are few A definition for the middle-stage entity.
Speaking of Zhongtai, it is easy for everyone to think of a story, that is, the Finnish mobile game company Supercell. This story is also the birth of Zhongtai that our industry often talks about. When Teacher Ma visited Supercell Game Company that year, he found that the game company’s game iteration was very fast, and he could quickly make a new game, and then when he found that the new game market was not good, he could give up immediately. Go to informatization quickly.
In fact, these are all relying on the backing deposited by the central platform and the existing capabilities of the central platform. Relying on the capabilities of the central platform allows the front-end business to run better and faster. This is the central platform.
For China Taiwan, in fact, today's data center and business center have some good implementations in the industry, especially the implementation of productization of China and Taiwan. However, for technical middle stations, there was a lack of platform-based products or precipitation in the past, so I think technical middle stations must pay attention to the scene. If you don't talk about the scene, it involves too much. Today, it seems that cloud native provides such a scenario. We also mentioned before that cloud native defines its technical category, such as K8s, containers, microservices, DevOps, Serverless, service grid, etc., in the cloud native technology category Next, the concept of technology in the Taiwan can be established, relatively speaking, it will be more focused. Therefore, CNStack is actually an extension of the middle station. It is a specific platform-based implementation of the technology middle station in the current cloud-native scenario.
InfoQ: Why is the cloud native technology proposed at this point in time? What is the motivation behind it?
You Ji: Alibaba actually has two attributes. First, it is an Internet business company with services such as Tmall, Taobao, Alipay, and Ele. From another dimension, it is another company that provides cloud computing. Company, so it has two identities.
From the first attribute, in the course of the past ten years, as an Internet business company, we have accumulated rich technology accumulation in the cloud-native field, which is also the premise for us to be able to do this.
Why not do it a few years earlier? I think it is important to have two nodes.
In fact, Alibaba is currently one of the few industries in the industry that all businesses are running on the cloud, because many cloud computing companies also do other businesses, and not 100% of them are on the cloud. However, we are not on the first day of doing cloud, that is, all businesses are running on the cloud. In 2019, Alibaba realized that all core businesses were truly moved to the cloud, but moved to the cloud application cloud and today’s Cloud Native cloud. It is not the same to use the cloud natively.
In 2020, Alibaba will truly adopt a cloud-native approach to use Alibaba Cloud, which determines that we will be a cloud-native technology center in 2021. In fact, before this, whether Alibaba’s middleware technology or new technology, it was also provided to Alibaba Cloud in a componentized manner for output, but when Alibaba itself had not built a cloud native way in the manner of Alibaba Cloud When we make good use of the cloud, this platform is actually not established, so we hope that we can first support such a complex business in the form of a cloud-native technology platform, and then export it to customers after the support is completed. In 2020, after Alibaba completed the 100% cloud-native migration to the cloud, we began to accumulate cloud-native technology mid-stage products for external customers.
InfoQ: How does CNStack specifically help companies solve related problems?
You Ji: In fact, when designing CNStack, we never thought about using one platform to solve all product problems, so it may actually be a platform-based product service.
Currently, there are three members in the CNStack product family: the first member is the cloud native Stack for Application, which is oriented to the development of all our online business applications, such as the transactional applications we are familiar with, and is mainly oriented to the ecology of online applications;
The second is the cloud native Stack for SaaS, which is oriented to independent SaaS deployment software. Let me give you an example. For example, we are using Tencent conferences and DingTalk, including independent software products. CNStack for SaaS can provide these products Cloud native technology middle-office service;
The third is the cloud native Stack for Edge. Today, the edge is a very fast-growing business, and the cloud native Stack for Edge is a technology platform based on the edge scenario.
Then I will briefly introduce the capabilities provided by these three scenarios.
For cloud native Stack for Application, it provides three important capabilities:
First, for the abstraction of the infrastructure, the infrastructure can be managed and abstracted in a unified manner, based on K8s and containers, including the abstraction capabilities of providing multiple clusters and resource scheduling;
Second, the construction, management, and operation and maintenance of the entire application life cycle, including application development, microservices, DevOps, and management capabilities for the entire application life cycle;
Third, it provides a wealth of distributed cloud-native middleware, including distributed messaging, distributed transactions, and distributed configuration management, which can be understood as the development and operation of online applications to build the technical support and dependencies of the entire life cycle. This kind of distributed technology components are provided uniformly in the cloud-native technology platform.
For the cloud native Stack for SaaS, one of the problems facing today's SaaS scenario output is how it can be delivered quickly. For example, we develop a DingTalk software or Tencent conference software. For the developer of SaaS software, he hopes that he only needs to pay attention to the development of the software itself, not the database or middleware used by the software.
Therefore, in addition to the rapid delivery of SaaS applications, we can provide the basic technologies that SaaS applications rely on are all embedded in the cloud-native technology of the SaaS application itself. The cloud-native Stack for SaaS can be understood as an embedded platform. The SaaS software is embedded. After being embedded, it provides a fast delivery and simple operation and maintenance, plus the comprehensive technical component capabilities that it depends on. At the same time, it has the IaaS that SaaS applications can be delivered to any IaaS environment. Adaptation, and can shield the difference of IaaS. In addition, SaaS software needs to be privatized and exported, and needs to be exported to customers. For this, Cloud Native Stack for SaaS also provides an online version, which can be verified, tested, and POC packaged in the online version, and then directly exported offline Just install and deploy in the environment, so it greatly improves the efficiency of delivery and operation and maintenance, and can quickly output the SaaS scene.
For the cloud native Stack for Edge, the edge scenario includes the management of edge devices. How to manage it needs to be considered. However, edge applications are different from for SaaS and for Edge, and are different from our regular applications. They are very light and very small. The application is more sensitive to resource sensitivity. At the same time, there are some middleware on the edge. In fact, we need to do some tailoring of the middleware on the edge. For example, other people’s messages may be different from the messages in the usual distributed scenario. The sensitivity is stronger. In addition, it also includes some algorithms on the edge. In many cases, the edge depends on some algorithms. For example, the capabilities of AI are unified into the edge scene.
The above are the three major product families of CNStack, and we will have more products to join in the future, which is worth looking forward to.
Cloud native technology mid-
InfoQ: Has CNStack been put into practice now?
You Ji: Yes, CNStack has launched three product families, among which we have released cloud native Stack for Application and cloud native Stack for SaaS. Cloud native Stack for Edge may be released later.
In addition, the CNStack community edition will be available for download at the end of December, and everyone is welcome to use it.
InfoQ: So what is its application situation? I can give you an introduction to a related application scenario.
You Ji: Okay, I believe everyone is very concerned about this topic.
We have now released Cloud Native Stack for Application and Cloud Native Stack for SaaS, I will give an example each. First of all, for the cloud native Stack for Application, we have a financial client, so I won’t disclose the company’s name here. Before CNStack was used, it was a very traditional technology stack. It might use Oracle databases and Java programs, and it’s more traditional. There are no microservices, messages, etc. After the digital transformation based on CNStack, its architecture is completely based on cloud native. Through microservices and some message calls, you can clearly feel that the overall R&D efficiency has improved a lot.
The reason behind this is that in the original development based on integrated applications, everyone is developing a system. When the number of modules increases, continuous iteration will bring many problems. The entire technical system is equivalent to a black box, and the operation of technical attributes cannot be seen. In the CNStack cloud native technology scenario, it naturally has some observability and high availability capabilities, and the entire life cycle of application development, deployment, and operation and maintenance has changed from pure manual operation to purely automated operation.
At the same time, this customer, like Ali, will also have a big promotion node like Double Eleven every year, and there will also be very large traffic at this node, but it has not been successful before. Of course, I guess this is also its use of cloud The original intention of the original transformation. And when we tested the cloud native Stack for Application, we have implanted the original ecological and high-availability guarantee capabilities of Alibaba's internal Double Eleven for many years, so it also has the same high-availability capabilities as Alibaba's guarantee for Double Eleven. Therefore, the peak traffic problem of our customer’s big promotion has also been solved invisibly. The cloud-native Stack for Application has brought significant improvements in R&D efficiency, iteration speed, and machine cost. At the same time, it also has flexible expansion and resource scheduling. On the other hand, cost savings have also been achieved.
Second, for cloud native Stack for SaaS, I also give an example. Up to now, all of Ali’s products are actually output based on CNStack, such as DingTalk, some products of Ant Blockchain, some products of big data and some SaaS products on the mobile terminal mentioned just now. The obvious difference is that these SaaS software development no longer need to pay attention to the underlying IaaS, because the underlying IaaS is blocked by CNStack; at the same time, CNStack also provides similar middleware, and DingTalk no longer needs to consider the intermediate services it depends on. It can also provide a very fast delivery and operation and maintenance system.
Specifically, take Ali itself as an example. When facing other competitors, it is based on the deployment of CNStack. While the competitors are still building the environment, we have completed the deployment and delivery, and the delivery efficiency has increased by about 5 times. At the same time, it reduces the operation and maintenance cost of basic middleware by 90%.
InfoQ: In your opinion, what is the significance of the cloud-native technology in the middle station for the entire middle station and the digital transformation of the enterprise?
You Ji: returns to our starting point of being a technical mid-stage, hoping that based on the cloud-native technology mid-stage, those who really do business research and development and do shopping mall business structure can focus more on the business itself. From a business perspective, business needs can be responded to more quickly, and business research and development teams can have more time and energy to invest in business iteration and business innovation itself. The value of coming.
Expansionally speaking, it is realized from several aspects:
First, the cloud-native technology platform improves the efficiency of the entire application construction life cycle. The cloud native technology middle station provides a complete distributed architecture, so the middleware technology and other infrastructure required for research and development do not need to be considered. At the same time, at the operation and maintenance level, it supports efficient operation and maintenance, providing the entire observable and monitoring alarm system from infrastructure to containers, business applications, defects, and intelligent alarms. At the same time, it has built-in high-availability capabilities, including emergency scenario plans, A series of high-availability capabilities such as switch plans and traffic scheduling, so the overall research and development efficiency has been greatly improved;
Second, cloud native technology saves costs in Taiwan. In terms of cost, in addition to labor costs, it also includes machine costs. Cloud today has a very core idea, flexibility and on-demand use. In the cloud-native technology platform, it has a very good elastic expansion capability, which does not need to be done once. Many resources are locked, and resources can be locked flexibly on demand, and resource scheduling and optimization are performed at the same time. Therefore, in general, technical middle stations can greatly save costs;
Third, the cloud-native technology center has a natural high-availability capability. High availability is actually the next very big challenge for the rapid development of Internet services, because business iterations become faster, technical components become more complex, and technical links increase. More and more stability risks will be introduced. In the cloud native technology platform , It has built-in high-availability capabilities, and enterprises do not need to do too much extra work for high-availability.
The above is the value brought by cloud native technology in Taiwan.
InfoQ: Has the concept of cloud-native technology in Taiwan faced challenges in the process of being accepted by enterprises?
You Ji: is actually quite challenging. First, the cloud-native technology platform is geared toward enterprises. Before that, enterprises had their own heterogeneous IaaS equipment, which means that the hardware facilities and the hardware environment are different, so how to match enterprise heterogeneous scenarios? This is the first challenge faced;
Second, whether Ali’s best practices can be replicated in other companies, this also needs to be polished. How to make better use of the value of different products in the face of different products after exporting it, which is the second challenge that Ali faces;
Third, development and compatibility. Basically, external companies will use their own technology systems. How the cloud-native technology platform is compatible with the existing technology system in an open manner is the third challenge;
Fourth, for the cloud-native technology center, how to solve problems in an integrated manner, truly focus on the full life cycle of the application, and ensure business stability.
InfoQ: Facing these challenges, what aspects will Ali start to solve?
You Ji: In fact, these challenges were in sync when we started to do cloud-native technology mid-stage on the first day. First of all, CNStack treats Alibaba as an external customer, so Alibaba can be said to be the first to eat crabs in the implementation of the entire technical system. It serves as a technical platform between the company and its subsidiaries to support some of our common problems. ;
Second, from the first day of product design, we designed around supporting heterogeneous equipment, including supporting localized equipment and IaaS equipment, so it has the ability to adapt to heterogeneous IaaS;
Third, CNStack can not only be seamlessly compatible with Ali’s own open source technology, but also compatible with the industry’s open source technology;
Fourth, we focus on how to solve problems in an integrated manner. We don’t want the capabilities provided by CNStack to remain componentized, but we hope that the entire life cycle of application construction, operation, management, and operation and maintenance can truly open up the end-to-end technical links, provide observability, monitoring and alarm capabilities. , It has high availability and safe production capabilities at the same time, which can guarantee the stability of the entire business.
Cloud's overall plan for cloud-native technology in Taiwan?
You Ji: mentioned earlier that we have released Cloud Native Stack for Application and Cloud Native Stack for SaaS. Next, we will continue to improve the product family, including expanding AI intelligence and other more scenarios. In order to enable enterprises to better use cloud-native technology in the middle stage, we will also launch cloud-native Stack for Edge and CNStack community edition. The community version can be downloaded for free, and it can also be compatible and migrated with the enterprise version, allowing everyone to experience the capabilities of cloud-native technology at a lower cost. This is also a perfection of the product family;
Second, the upgrade of product capabilities. From the application architecture design stage, in addition to providing enterprises with code-based R&D, it can expand the low-code or even code-free R&D system;
Third, it is more systematic. This is also something that needs to be done continuously. We hope to solve the problem more systematically and end-to-end, and truly solve the problem in the middle office;
Fourth, the middle station itself needs to be more streamlined and more stable, and it needs to be lighter and faster in the delivery and deployment process. These are our future plans.
\
Q&A session
InfoQ: In the process of developing this product, did you encounter any impressive technical difficulties or "pits"? Share with you \
You Ji: is really not easy to do in the middle stage, and there are many technical difficulties in doing the middle stage. First, it needs to be adapted. Our products will be exported to different hardware facilities of Alibaba Cloud, and will also be exported to localized equipment, which will have a lot of adaptation work;
Second, before the release of cloud-native technology mid-Taiwan products, we also have some componentized single product forms. If we want to output as a mid-Taiwanized and integrated PaaS platform, there must be an intersection with the previous componentized single product form. There is a question of how to choose, how to make a componentized single product form a good integrated experience. At the same time, this will involve top-level design issues, how to integrate the repetitive capabilities of different componentized single products or make a better connection, solving this problem also takes a lot of our time and energy.
InfoQ: There will certainly be problems in the process of technical mid-stage landing. Can you share with you the ups and downs?
You Ji: was released some time ago, so it is not easy for users who use it at the earliest stage. In the earliest stage, our delivery deployment is not very ideal. The entire delivery requires us to invest a lot of research and development capabilities to get through the early pits. Although we have done countless tests and exercises in the "home", we still encounter network, storage or hardware facilities in the actual process, so in the early stage, we still invested a lot of energy in delivery and operation and maintenance.
Of course, today we can deliver in a few hours or even without going to the site. This is not easy. In fact, we have paid a lot behind the scenes.
InfoQ: China and Taiwan currently have some controversies, so for CNStack, do you think it will have an impact?
You Ji: I know that China Taiwan has some controversies. Some companies are dismantling China Taiwan, including Ali, who is also talking about how to make China Taiwan thin. But I don’t think there is a problem with the definition of China Taiwan itself. The problem lies in how we build it. And build the middle stage.
The concept of the middle station is not wrong. What kind of things should be placed in the middle station and what should not be placed in the middle station. I think we should consider it on the first day of designing the middle station. If the middle station is designed well, it will definitely be able to Improving efficiency can make the front office business faster. On the contrary, if the design is not clear, it will hinder the operation of the middle office.
Therefore, for the business middle station, we must split it clearly enough, what kind of ability is provided by the middle station, and what kind of ability is freely expanded by the front-end flexibility. Many times, I find that everyone is using it. When I was in Taiwan, I didn't reasonably handle this boundary issue.
Including I think that the big controversy today is actually focused on the business stage, because at the business layer, it is difficult to distinguish what kind of business should be integrated into the platform, and what kind of technology should be placed on the foreground.
However, in the cloud native technology center, its boundaries are still very clear. At the business application level, it only provides basic development capabilities and operation and maintenance capabilities, and does not touch the technology development itself and the business itself, but only provides some technical capabilities and technologies. Middleware, technical monitoring capabilities, etc. In general, I think there are more disputes in the middle stage in the business, and it does not have much impact on the middle stage in the data and the middle stage in the technology.
Click here , go CNStack official website for more details!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。