CN114816440A - Method for constructing distributed micro-service network controller architecture - Google Patents
Method for constructing distributed micro-service network controller architecture Download PDFInfo
- Publication number
- CN114816440A CN114816440A CN202210497656.3A CN202210497656A CN114816440A CN 114816440 A CN114816440 A CN 114816440A CN 202210497656 A CN202210497656 A CN 202210497656A CN 114816440 A CN114816440 A CN 114816440A
- Authority
- CN
- China
- Prior art keywords
- dapr
- network controller
- microservice
- constructing
- controller architecture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 101100297732 Mus musculus Plekhm3 gene Proteins 0.000 claims abstract description 41
- 238000012423 maintenance Methods 0.000 abstract description 4
- 230000007547 defect Effects 0.000 abstract description 3
- 230000004075 alteration Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The invention discloses a method for constructing a distributed micro-service network controller architecture, which comprises the following steps: creating a Dapr development environment; installing a Dapr CLI tool in the Dapr development environment; verifying whether the Dapr CLI tool is installed successfully; creating a number of microservices in a Dapr development environment; containerizing a plurality of micro services to obtain a plurality of application containers; performing joint debugging on a plurality of application containers; and respectively deploying a plurality of application containers to different hosts. The invention operates the whole network controller software on different servers and provides backup of the container, thereby greatly reducing the development complexity of the network controller software, improving the stability of the system and solving the defects of high development and maintenance difficulty and high operation risk of the system of the network management system in the prior art.
Description
Technical Field
The invention relates to the technical field of network controller management software, in particular to a method for constructing a distributed micro-service network controller architecture.
Background
Network controller management software is introduced, so that the bearing and service capacity of the data center network can be greatly improved. The network controller serves as the 'brain' of the whole data center network, and the reliable deployment of the management software of the network controller is very important for the safe and stable operation of the data center network.
The traditional data center network controller is mainly developed in a centralized way by using a uniform programming language, and is finally realized as a single controller software, if errors occur in the software operation process, the software of the whole network controller is crashed, and the normal operation of all services is influenced. The controller software with high complexity can occupy a large amount of resources such as CPU/memory of the server, and a single server can not meet the requirement of the network controller software, so that the development and maintenance difficulty of a network management system is improved, and the risk of system operation is increased.
Disclosure of Invention
According to an embodiment of the present invention, a method for constructing a distributed microservice network controller architecture is provided, which includes the following steps:
creating a Dapr (Distributed Application Runtime) development environment;
installing a Dapr CLI tool in the Dapr development environment;
verifying whether the Dapr CLI tool is installed successfully;
creating a number of microservices in a Dapr development environment;
containerizing a plurality of micro services to obtain a plurality of application containers;
performing joint debugging on a plurality of application containers;
and respectively deploying a plurality of application containers to different hosts.
Further, verifying whether the Dapr CLI tool is successfully installed comprises the following sub-steps:
initializing Dapr development environment;
the display version number information instruction of the Dapr CLI tool is executed in the Dapr development environment.
Further, the plurality of application containers includes: API gateway microservice, user management microservice, OAM microservice, and webhook microservice.
Further, the API gateway micro-service is created based on the Lua language, the user management micro-service is created based on the golang language, the OAM micro-service is created based on the node.
Further, the application containers are Docker containers.
Further, the host is a physical host or a virtual host.
Further, one or more application containers are deployed on any one host.
Further, a Kubernetes container of the Dapr development environment is adopted to deploy a plurality of application containers to different hosts respectively.
Further, kubernets containers provide backup for container traffic for several application containers.
According to the method for constructing the distributed micro-service network controller architecture, the micro-service network controller is rapidly developed by adopting a programming language such as Python/Golang/node. js and an open source software architecture Dapr, the micro-service is containerized by using a Docker technology, and finally, the whole network controller software is operated on different servers and the backup of the container is provided through Kubernetes management and deployment of the Docker container of the network controller, so that the development complexity of the network controller software is greatly reduced, the stability of the system is improved, and the defects of high development and maintenance difficulty and high operation risk of the network management system in the prior art are overcome.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and are intended to provide further explanation of the claimed technology.
Drawings
FIG. 1 is a schematic diagram of a method of constructing a distributed microservice network controller architecture according to an embodiment of the present invention;
FIG. 2 is a flow chart of a method of constructing a distributed microservice network controller architecture in accordance with an embodiment of the present invention;
fig. 3 is a flowchart of the sub-steps of step S3 in fig. 2.
Detailed Description
The present invention will be further explained by describing preferred embodiments of the present invention in detail with reference to the accompanying drawings.
First, a method for constructing a distributed microservice network controller architecture according to an embodiment of the present invention will be described with reference to fig. 1 to 3, which is used for managing a large-scale data center network and has a wide application scenario.
As shown in fig. 1 to 3, a method for constructing a distributed microservice network controller architecture according to an embodiment of the present invention includes the following steps:
at S1, as shown in FIGS. 1-2, a Dapr (Distributed Application Runtime) development environment is created.
In S2, as shown in FIGS. 1-2, a Dapr CLI tool is installed in the Dapr development environment.
In S3, as shown in FIGS. 1-2, it is verified whether the Dapr CLI tool is successfully installed.
Further, verifying whether the Dapr CLI tool is successfully installed comprises the following sub-steps:
in S31, as shown in fig. 1 and 3, the Dapr development environment is initialized.
At S32, as shown in fig. 1 and 3, the display version number information instruction of the Dapr CLI tool is executed in the Dapr development environment, wherein the display version number information instruction of the Dapr CLI tool includes, but is not limited to, an instruction "Dapr-V" to verify the Dapr version, verify whether the container is running, and verify whether the component directory is initialized, so as to verify whether the installation of the Dapr CLI tool is successful.
At S4, as shown in FIGS. 1-2, a number of microservices are created in the Dapr development environment.
Further, as shown in fig. 1, several application containers include: API gateway microservice, user management microservice, OAM microservice, and webhook microservice.
Further, the API gateway micro-service is created based on the Lua language, the user management micro-service is created based on the golang language, the OAM micro-service is created based on the node.
In S5, as shown in fig. 1 to 2, a plurality of micro services are containerized to obtain a plurality of application containers.
In S6, as shown in fig. 1 to 2, a plurality of application containers are simultaneously adjusted.
Further, as shown in fig. 1, the plurality of application containers are all Docker containers manufactured by Docker container technology, and the plurality of application containers are respectively gateway microservice Docker, user administration microservice Docker, OAM microservice Docker, and webhook microservice Docker.
In S7, as shown in FIGS. 1-2, a plurality of application containers are deployed on different hosts, respectively.
Further, one or more application containers are deployed on any one host.
Further, the host is a physical host or a virtual host.
Further, as shown in fig. 1 to 2, a kubernets container of Dapr development environment is used to perform orchestration management and deployment on a plurality of application containers, and the plurality of application containers are deployed on different physical or virtual hosts.
Further, the Kubernetes container provides backup for container traffic of several application containers.
The embodiment mainly provides a method for managing the micro service network controller by using Docker and Kubernets (K8S), and the whole micro service network controller is deployed on different servers. Firstly, various services of a network controller are developed by utilizing software programming languages such as open source software architecture Dapr (distributed Application runtime) and Python, Golang, node. js, Java and the like. And then, through a Docker containerization technology, each service of the network controller is operated in different Docker containers, so that the decoupling of different services is realized. And finally, the purpose of running the whole network controller software on different servers is achieved through Kubernets management and Docker containers of the network controller. The embodiment not only realizes the decoupling on different service codes in the network controller, but also ensures that different services of the micro service run on different physical or virtual hosts, provides the backup of the container, greatly reduces the development complexity of the network controller software and improves the stability of the system, and the proposal of the embodiment has stronger practical application significance.
The method for constructing the distributed micro-service network controller architecture according to the embodiment of the present invention is described above with reference to fig. 1 to 3, and the micro-service network controller is rapidly developed by using Python/gold/node.js and other programming languages and the open source software architecture Dapr, and the micro-service is containerized by using the Docker technology, and the Docker container of the network controller is managed and deployed by Kubernetes, so that the whole network controller software is finally operated on different servers and the backup of the container is provided, thereby greatly reducing the development complexity of the network controller software and improving the stability of the system, and solving the defects of high development and maintenance difficulty and high operation risk of the network management system in the prior art.
It should be noted that, in the present specification, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
While the present invention has been described in detail with reference to the preferred embodiments, it should be understood that the above description should not be taken as limiting the invention. Various modifications and alterations to this invention will become apparent to those skilled in the art upon reading the foregoing description. Accordingly, the scope of the invention should be determined from the following claims.
Claims (9)
1. A method for constructing a distributed microservice network controller architecture, comprising the steps of:
creating a Dapr development environment;
installing a Dapr CLI tool in the Dapr development environment;
verifying whether the Dapr CLI tool was installed successfully;
creating a number of microservices in the Dapr development environment;
containerizing the micro services to obtain a plurality of application containers;
performing joint debugging on the plurality of application containers;
and respectively deploying the plurality of application containers to different hosts.
2. The method of constructing a distributed microservice network controller architecture of claim 1, wherein verifying that the Dapr CLI tool is successfully installed comprises the substeps of:
initializing the Dapr development environment;
executing display version number information instructions of the Dapr CLI tool in the Dapr development environment.
3. The method of constructing a distributed microservice network controller architecture of claim 1, wherein the plurality of application containers comprises: API gateway microservice, user management microservice, OAM microservice, and webhook microservice.
4. The method of constructing a distributed microservice network controller architecture of claim 3, wherein the API gateway microservice is created based on the Lua language, the user management microservice is created based on the golang language, the OAM microservice is created based on the node.
5. The method of constructing a distributed microservice network controller architecture of claim 1, wherein the plurality of application containers are Docker containers.
6. The method of constructing a distributed microservice network controller architecture of claim 1, wherein the host is a physical host or a virtual host.
7. The method of constructing a distributed microservice network controller architecture of claim 1, wherein one or more of the application containers are deployed to any one of the hosts.
8. The method of constructing a distributed microservice network controller architecture of claim 1, wherein the plurality of application containers are deployed to different hosts using kubernets containers of the Dapr development environment.
9. The method of constructing a distributed microservice network controller architecture of claim 8, wherein the kubernets container provides backup for container traffic of the number of application containers.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210497656.3A CN114816440A (en) | 2022-05-09 | 2022-05-09 | Method for constructing distributed micro-service network controller architecture |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210497656.3A CN114816440A (en) | 2022-05-09 | 2022-05-09 | Method for constructing distributed micro-service network controller architecture |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114816440A true CN114816440A (en) | 2022-07-29 |
Family
ID=82512721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210497656.3A Pending CN114816440A (en) | 2022-05-09 | 2022-05-09 | Method for constructing distributed micro-service network controller architecture |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114816440A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114785780A (en) * | 2022-03-14 | 2022-07-22 | 广东利通科技投资有限公司 | Lane service data processing method, apparatus, device, medium, and program product |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113382077A (en) * | 2021-06-18 | 2021-09-10 | 广西电网有限责任公司 | Micro-service scheduling method and device, computer equipment and storage medium |
US11204818B1 (en) * | 2021-01-28 | 2021-12-21 | Sap Se | Cloud application programming model |
CN114172782A (en) * | 2021-11-24 | 2022-03-11 | 杭州云合智网技术有限公司 | Method for constructing network controller architecture based on micro-service and multi-language |
-
2022
- 2022-05-09 CN CN202210497656.3A patent/CN114816440A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11204818B1 (en) * | 2021-01-28 | 2021-12-21 | Sap Se | Cloud application programming model |
CN113382077A (en) * | 2021-06-18 | 2021-09-10 | 广西电网有限责任公司 | Micro-service scheduling method and device, computer equipment and storage medium |
CN114172782A (en) * | 2021-11-24 | 2022-03-11 | 杭州云合智网技术有限公司 | Method for constructing network controller architecture based on micro-service and multi-language |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114785780A (en) * | 2022-03-14 | 2022-07-22 | 广东利通科技投资有限公司 | Lane service data processing method, apparatus, device, medium, and program product |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2417416C2 (en) | Solution deployment in server farm | |
US7150014B2 (en) | Automatically deploying software packages used in computer systems | |
US20050262501A1 (en) | Software distribution method and system supporting configuration management | |
US8578371B2 (en) | Software distribution method and system with automatic prerequisite installation | |
CN103226493B (en) | The dispositions method and system of multi-operation system service | |
CN112230942A (en) | Automatic deployment method and system supporting various domestic operating systems | |
CN101571809A (en) | Implementation method of plug-in registration and device thereof | |
US7698391B2 (en) | Performing a provisioning operation associated with a software application on a subset of the nodes on which the software application is to operate | |
US9043781B2 (en) | Algorithm for automated enterprise deployments | |
CN110673923A (en) | XWIKI system configuration method, system and computer equipment | |
CN109104368B (en) | Connection request method, device, server and computer readable storage medium | |
CN111104201A (en) | System migration method and device, electronic equipment and storage medium | |
US7464118B2 (en) | Algorithm for maximizing application availability during automated enterprise deployments | |
CN104468791A (en) | Private cloud IaaS platform construction method | |
CN113434283B (en) | Service scheduling method and device, server and computer readable storage medium | |
CN113315754A (en) | Intelligent linkage method, device, equipment and medium for firewall of container visit | |
CN110784347A (en) | Node management method, system, equipment and storage medium for container cluster | |
CN114816440A (en) | Method for constructing distributed micro-service network controller architecture | |
US20020144002A1 (en) | Method and apparatus for providing application specific strategies to a JAVA platform including start and stop policies | |
CN113419813B (en) | Method and device for deploying bare engine management service based on container platform | |
US7434041B2 (en) | Infrastructure for verifying configuration and health of a multi-node computer system | |
CN115113972A (en) | Application transformation method, system, cluster, medium and program product | |
CN114172782B (en) | Method for constructing network controller architecture based on micro-service and multiple languages | |
CN114500268B (en) | Method and device for deploying char resources, server and storage medium | |
US12039473B2 (en) | Software development project infrastructure builder tool |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Country or region after: China Address after: 3 / F, 665 Zhangjiang Road, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai Applicant after: Yunhe Zhiwang (Shanghai) Technology Co.,Ltd. Address before: 311203 floor 12, building 2, Purple Orange International Center, No. 39, Jincheng Road, Xiaoshan District, Hangzhou, Zhejiang Province Applicant before: Hangzhou yunhezhi Network Technology Co.,Ltd. Country or region before: China |
|
CB02 | Change of applicant information |