CN116466959A - Deployment method and device of micro-service system, readable storage medium and electronic equipment - Google Patents

Deployment method and device of micro-service system, readable storage medium and electronic equipment Download PDF

Info

Publication number
CN116466959A
CN116466959A CN202310369600.4A CN202310369600A CN116466959A CN 116466959 A CN116466959 A CN 116466959A CN 202310369600 A CN202310369600 A CN 202310369600A CN 116466959 A CN116466959 A CN 116466959A
Authority
CN
China
Prior art keywords
micro
task
rollback
service
deployment
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
Application number
CN202310369600.4A
Other languages
Chinese (zh)
Inventor
赵蒙
张博超
何佳佳
张帝
李立鹏
李瑞东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Postal Savings Bank of China Ltd
Original Assignee
Postal Savings Bank of China Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Postal Savings Bank of China Ltd filed Critical Postal Savings Bank of China Ltd
Priority to CN202310369600.4A priority Critical patent/CN116466959A/en
Publication of CN116466959A publication Critical patent/CN116466959A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The application provides a deployment method and device of a micro-service system, a readable storage medium and electronic equipment, wherein the method comprises the following steps: splitting tasks of a micro-service system into a plurality of subtasks from a plurality of dimensions, wherein the micro-service system is a system constructed based on a micro-service architecture; task deployment is performed on each sub-task based on different execution strategies, and abnormality checking is performed on each sub-task, wherein the abnormality checking comprises at least one of the following: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time. According to the method, through hierarchical deployment, tasks of the micro service system are automatically checked from multiple dimensions, and an intelligent deployment strategy is provided, so that the problem that the requirements of the micro service system cannot be met by means of a traditional application automation deployment mode is solved.

Description

Deployment method and device of micro-service system, readable storage medium and electronic equipment
Technical Field
The present application relates to the field of micro service systems, and in particular, to a deployment method of a micro service system, a deployment device of a micro service system, a readable storage medium, and an electronic device.
Background
The change release is a necessary path for product iteration, but the change always accompanies risk, and 54% of service faults are counted to be from release. In order to reduce the loss caused by the change release fault, the frequent release change process is better managed, and each set of complete application system has the application release system which is suitable for the complete application system to complete the functions of automatic deployment and the like.
The application level of a new generation core business system in many fields adopts a distributed and micro-service-based architecture, and a supporting platform adopts a technical framework supporting clouding and an x86 server. Compared with the traditional architecture, the new generation core service system has more and finer objects for operation and maintenance management, higher complexity, and incapability of meeting the requirements of an application system by means of the traditional application automation deployment mode, and a set of hierarchical release system suitable for the characteristics of the new core system needs to be built, so that automation, integration and intellectualization of application release are realized, and the efficiency and reliability of application deployment are improved.
Disclosure of Invention
The main objective of the present application is to provide a deployment method of a micro service system, a deployment device of a micro service system, a readable storage medium and an electronic device, so as to at least solve the problem that the requirement of an application system cannot be satisfied by means of the conventional application automation deployment method.
To achieve the above object, according to one aspect of the present application, there is provided a deployment method of a micro service system, including: splitting tasks of the micro-service system into a plurality of subtasks from a plurality of dimensions, wherein the micro-service system is a system constructed based on a micro-service architecture; task deployment is performed on each subtask based on different execution strategies, and abnormality checking is performed on each subtask, wherein the abnormality checking comprises at least one of the following steps: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time.
Optionally, the plurality of dimensions includes: a center dimension, a unit dimension, a system dimension, and a micro service group dimension, wherein a unit comprises a plurality of applications, a system comprises a plurality of micro service groups, a micro service group comprises a plurality of applications, the plurality of applications in the micro service group are distributed in the plurality of units, and tasks of the micro service system are split into a plurality of subtasks from the plurality of dimensions, and the method comprises the following steps: splitting the task of the micro-service system into a plurality of first subtasks according to the central dimension; and constructing a task splitting model aiming at each first subtask, wherein the task splitting model comprises a vertical axis and a horizontal axis, the horizontal axis of the task splitting model is used for representing splitting according to the unit dimension, the vertical axis of the task splitting model is used for representing splitting according to the system dimension or splitting according to the micro-service group dimension, and the horizontal axis coordinate and the vertical axis coordinate are used for positioning a target application.
Optionally, task deployment is performed on each subtask based on different execution strategies, including: configuring a gray level release policy, and releasing the target application for a target user based on the gray level release policy, wherein the gray level release policy comprises application data of the target application and a user ID of the target user, and the gray level release policy is a release policy for releasing the target application for the target user; configuring a full-volume release policy, and releasing the target application for all users based on the full-volume release policy, wherein the full-volume release policy comprises application data of the target application and user IDs of all the users, and the full-volume release policy is a release policy for releasing the target application for all the users.
Optionally, after configuring the gray scale release policy, before configuring the full release policy, the method further comprises: acquiring first data, wherein the first data is actual running data of the target application after the target application is published based on the gray level publishing strategy; under the condition that the first data meets the preset condition, issuing the target application for all users based on the full-volume issuing strategy, wherein the preset condition is that the first data meets the client requirement; and under the condition that the first data does not meet the preset condition, adopting an intelligent rollback strategy to rollback the target application to a first target version.
Optionally, the plurality of dimensions include a unit dimension, the plurality of first subtasks are issued in series, and task deployment is performed on each subtask based on different execution strategies, including: splitting each unit into a plurality of subunits, wherein one subunit comprises a plurality of nodes, the plurality of nodes form an atom, and the preset number is smaller than or equal to the total number of the nodes in the subunits; acquiring a plurality of target units corresponding to the target application; the target units are issued in series according to a first sequence, the subunits in the target units are issued according to a first preset rule, the first preset rule is that first type subunits in the target units are issued in series according to a second sequence, second type subunits in the target units are issued in parallel, and the first type subunits and the second type subunits form all subunits in the target units; the atoms in each subunit in the target unit are issued according to a second preset rule, wherein the second preset rule is that the first type atoms in the subunits are issued in series according to a third sequence, and the second type atoms in the subunits are issued in parallel, and the first type atoms and the second type atoms form all atoms in the subunits.
Optionally, after performing the exception check for each of the subtasks, the method further includes: under the condition that the abnormality check is abnormal core service indexes, the micro service system sends out first alarm information and stops the subtasks, and the abnormal core service indexes comprise at least one of the following: the transaction amount of the core service is abnormal, the success rate of the core service is abnormal, the failure rate of the core service is abnormal, and the micro service system sends out second alarm information and stops the subtask under the condition that the abnormality check is an important system index abnormality, wherein the important system index abnormality comprises at least one of the following: the application CPU uses abnormity, the application MEM uses abnormity, the process number of the important system is abnormal, and the log of the important system is abnormal, and under the condition that the abnormity check is index fluctuation abnormity, the micro-service system sends out third alarm information and stops the subtask, wherein the index fluctuation abnormity is determined according to ring ratio data and homonymy data.
Optionally, task deployment is performed on each subtask based on different execution strategies, including: and in the case that the subtask is abnormal, rolling back the subtask with the abnormality to a second target version by adopting an intelligent rollback strategy, wherein the intelligent rollback strategy comprises at least one of the following steps: a first-level rollback strategy, a recommended rollback strategy, a quick rollback strategy and a self-defined rollback strategy; the primary rollback policy is a rollback policy for performing rollback under the condition of receiving a preset operation, the recommended rollback policy is a rollback policy for automatically determining a rollback application version of the rollback for the micro-service system, the quick rollback policy is a rollback policy with quick arrangement capability and accelerated rollback capability, and the custom rollback policy is a rollback policy for supporting rollback of a specified application and/or supporting rollback of a specified dimension.
According to another aspect of the present application, there is provided a deployment apparatus of a micro service system, including: the splitting unit is used for splitting the task of the micro-service system into a plurality of subtasks from a plurality of dimensions, and the micro-service system is a system constructed based on a micro-service architecture; a deployment unit, configured to perform task deployment on each of the subtasks based on different execution policies, and perform exception checking on each of the subtasks, where the exception checking includes at least one of: the service preset monitoring index is abnormal, the service performance is fluctuating abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time.
According to another aspect of the present application, there is provided a computer readable storage medium, where the computer readable storage medium includes a stored program, and when the program runs, the device in which the computer readable storage medium is controlled to execute any one of the deployment methods of the micro service system.
According to another aspect of the present application, there is provided an electronic device including: one or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising a deployment method for executing any one of the micro-service systems.
By applying the technical scheme, the deployment method of the micro-service system comprises the steps of firstly splitting tasks of the micro-service system into a plurality of subtasks from a plurality of dimensions, wherein the micro-service system is a system constructed based on a micro-service architecture; then performing task deployment on each sub-task based on different execution strategies, and performing abnormality detection on each sub-task, wherein the abnormality detection comprises at least one of the following steps: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time. According to the method, through hierarchical deployment, tasks of the micro service system are automatically checked from multiple dimensions, and an intelligent deployment strategy is provided, so that the problem that the requirements of the micro service system cannot be met by means of a traditional application automation deployment mode is solved.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiments of the application and together with the description serve to explain the application and do not constitute an undue limitation to the application. In the drawings:
Fig. 1 is a block diagram showing a hardware configuration of a mobile terminal for performing a deployment method of a micro service system according to an embodiment of the present application;
FIG. 2 illustrates a flow diagram of a method of deploying a micro-service system provided in accordance with an embodiment of the present application;
FIG. 3 illustrates a schematic diagram of splitting tasks in a center dimension provided in accordance with an embodiment of the present application;
FIG. 4 illustrates a schematic diagram of one construction of a task splitting model provided in accordance with an embodiment of the present application;
FIG. 5 illustrates a schematic diagram of hierarchical distribution of a micro-service system provided in accordance with an embodiment of the present application;
FIG. 6 illustrates a schematic diagram of hierarchical distribution of another micro-service system provided in accordance with an embodiment of the present application;
FIG. 7 illustrates a schematic diagram of hierarchical distribution of yet another micro-service system provided in accordance with an embodiment of the present application;
FIG. 8 illustrates a hierarchical distribution system logic architecture diagram of a micro-service system provided in accordance with an embodiment of the present application;
FIG. 9 illustrates a technical architecture diagram of a hierarchical distribution system of a micro-service system provided in accordance with an embodiment of the present application;
FIG. 10 illustrates a functional block diagram of a hierarchical distribution system of a micro-service system provided in accordance with an embodiment of the present application;
FIG. 11 (a) shows a portion of a visualization screen diagram of a hierarchical release of a micro-service system provided in accordance with an embodiment of the present application;
FIG. 11 (b) shows another partial visual screen diagram of a hierarchical release of a micro-service system provided in accordance with an embodiment of the present application;
FIG. 12 shows a block diagram of a deployment apparatus of a micro-service system provided in accordance with an embodiment of the present application;
Detailed Description
It should be noted that, in the case of no conflict, the embodiments and features in the embodiments may be combined with each other. The present application will be described in detail below with reference to the accompanying drawings in conjunction with embodiments.
In order to make the present application solution better understood by those skilled in the art, the following description will be made in detail and with reference to the accompanying drawings in the embodiments of the present application, it is apparent that the described embodiments are only some embodiments of the present application, not all embodiments. All other embodiments, which can be made by one of ordinary skill in the art based on the embodiments herein without making any inventive effort, shall fall within the scope of the present application.
It should be noted that the terms "first," "second," and the like in the description and claims of the present application and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate in order to describe the embodiments of the present application described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
As described in the background art, the existing distributed application system architecture is very complex, the system maintenance environment is quite different, and the technical architecture, the relation with peripheral systems, the business architecture and the batch processing content among different applications are different. Meanwhile, the deployment and release scenes are diversified, release requirements of databases, configurations and various types of applications are required to be comprehensively covered, the traditional deployment mode is often low in one-time release success rate, version problems cannot be found timely, deployment time cannot be guaranteed, rollback cost is high, gray level verification is avoided, errors are easy to occur, recall is difficult, and abnormal conditions in release cannot be perceived and processed in real time. The following problems exist with the partial solution traditional automated deployment system:
1. The method can only meet the single application medium deployment function, can not be linked with database change and configuration change, and can not independently customize various change orders in a complete release process.
2. The automatic deployment process cannot be customized in real time, and because the distributed system architecture comprises a plurality of micro-service application media, services related to each release are different, a single execution script mode cannot autonomously process and change self-addition, deletion, check and change related execution steps, and only a new process reissue program version can be created.
3. The release scene is single, gray release and full release cannot be distinguished, the release range cannot be gradually enlarged in a gray-full mode to ensure the stability of the whole system, and problems cannot be found and adjusted in time to ensure the influence degree.
4. The method has the advantages that the method does not have a hierarchical rolling release strategy, cannot be linked with a monitoring system to conduct real-time intelligent inspection to effectively reduce the number of problems caused by change, and has no simple, quick and effective rollback capability.
In order to solve the problem that the requirement of an application system cannot be met by means of a traditional application automation deployment mode, the embodiment of the application provides a deployment method of a micro service system, a deployment device of the micro service system, a readable storage medium and electronic equipment.
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention.
The method embodiments provided in the embodiments of the present application may be performed in a mobile terminal, a computer terminal or similar computing device. Taking the mobile terminal as an example, fig. 1 is a block diagram of a hardware structure of the mobile terminal of a deployment method of a micro service system according to an embodiment of the present invention. As shown in fig. 1, a mobile terminal may include one or more (only one is shown in fig. 1) processors 102 (the processor 102 may include, but is not limited to, a microprocessor MCU or a processing device such as a programmable logic device FPGA) and a memory 104 for storing data, wherein the mobile terminal may also include a transmission device 106 for communication functions and an input-output device 108. It will be appreciated by those skilled in the art that the structure shown in fig. 1 is merely illustrative and not limiting of the structure of the mobile terminal described above. For example, the mobile terminal may also include more or fewer components than shown in fig. 1, or have a different configuration than shown in fig. 1.
The memory 104 may be used to store a computer program, for example, a software program of application software and a module, such as a computer program corresponding to a display method of device information in an embodiment of the present invention, and the processor 102 executes the computer program stored in the memory 104 to perform various functional applications and data processing, that is, to implement the above-described method. Memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include memory remotely located relative to the processor 102, which may be connected to the mobile terminal via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof. The transmission device 106 is used to receive or transmit data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider of the mobile terminal. In one example, the transmission device 106 includes a network adapter (Network Interface Controller, simply referred to as NIC) that can connect to other network devices through a base station to communicate with the internet. In one example, the transmission device 106 may be a Radio Frequency (RF) module, which is configured to communicate with the internet wirelessly.
In this embodiment, a deployment method of a micro service system operating on a mobile terminal, a computer terminal, or a similar computing device is provided, it should be noted that the steps illustrated in the flowchart of the drawings may be performed in a computer system such as a set of computer executable instructions, and that although a logical order is illustrated in the flowchart, in some cases, the steps illustrated or described may be performed in an order different from that illustrated herein.
Fig. 2 is a flow chart of a deployment method of a micro service system according to an embodiment of the present application. As shown in fig. 2, the method comprises the steps of:
step S201, splitting tasks of the micro-service system into a plurality of subtasks from a plurality of dimensions, wherein the micro-service system is a system constructed based on a micro-service architecture;
specifically, the hierarchical publishing system is deployed in several stages (i.e., split into several subtasks) according to the application instance of the operation, and introduces automated inspection tasks at each stage to discover problems earlier. By means of the butt joint monitoring system, automatic detection of monitoring index abnormality and service performance fluctuation abnormality of the service core is achieved, a fusing mechanism for detecting abnormality is provided for the grading release process, and abnormal problem diffusion is avoided.
Wherein the plurality of dimensions comprises: the method comprises the following specific implementation steps of step S201, wherein the specific implementation steps comprise a center dimension, a unit dimension, a system dimension and a micro service group dimension, one unit comprises a plurality of applications, one system comprises a plurality of micro service groups, one micro service group comprises a plurality of applications, and the plurality of applications in one micro service group are distributed in the plurality of units:
step 2011, splitting the task of the micro-service system into a plurality of first subtasks according to the center dimension;
step S2012, a task splitting model is constructed for each of the first subtasks, where the task splitting model includes a vertical axis and a horizontal axis, the horizontal axis of the task splitting model is used to represent splitting according to the unit dimension, and the vertical axis of the task splitting model is used to represent splitting according to the system dimension or splitting according to the micro-service group dimension, where a horizontal axis coordinate and a vertical axis coordinate are used to locate a target application.
Firstly, the dimension of DC (center) is that the new core system performs redundancy and disaster recovery switching through DC division, the DC is placed at the outermost layer in the release process, and each DC is released in series, for example, three centers of F (Fengtai), Y (also zhuang) and H (Hefei) are provided, and then the overall release strategy is shown in figure 3.
Next is the DUS (units) and system, microservice group (application group) dimension, the relationship is as follows:
(1) DUS: there are multiple applications within a DUS that may belong to different systems, such as a personal deposit system, a bank money transfer system; at the same time, the applications belong to different groups, such as technical platform groups and personal deposit groups;
(2) The system comprises: business dimension division corresponds to service tree system nodes, such as a personal deposit system and a bank remittance system; typically there are multiple applications within a system, distributed across multiple DUS, and simultaneously assigned to multiple micro-service groups;
(3) Micro service group: according to the classification of micro services, such as attribution to a technical platform group for providing support of a general technical platform, the micro service group is usually corresponding to each responsibility team, such as the technical platform group and the personal deposit group, and the micro service group is mainly classified to directly focus on a certain class of service (application) when a problem occurs, so that the team or personal assistance can be quickly found for investigation and solution; a microservice group contains multiple applications that can be distributed across multiple DUS, with different applications affiliated with different systems;
the task splitting model is shown in fig. 4, the horizontal axis is the DUS dimension, and if dependencies are issued among DUS, each DUS is issued in series; for example, the B-DUS internally contains a plurality of DUS units, and if dependencies exist, the dependencies also need to be issued in series; if there is no dependency, the various DUSs may be published in parallel; the vertical axis is the dimension of the system and the micro-service group, if the system is independently released, an independent release strategy is arranged according to the dimension of the system; if each system needs to be in a release process, the combination arrangement is needed; the micro service groups are mainly used for reducing the problem investigation cost, and each micro service group should be executed in series to directly contact corresponding team personnel when the problem occurs in the micro service group. If care is not required to this problem, the micro service group dimension may be eliminated.
Step S202, performing task deployment on each subtask based on different execution strategies, and performing exception checking on each subtask, wherein the exception checking includes at least one of the following: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time.
Specifically, as shown in fig. 5, when the hierarchical release policy is organized, according to the horizontal-vertical division as above, the horizontal axis corresponds to the stage division, and generally, the horizontal axis is mainly the presentation dimension according to the serial execution, so that the clustering division is convenient, for example, there are G, B, C, L four DUS, the dependency relationship is B to C to G to L, and the subunits in each DUS can be executed in parallel.
In addition, in the hierarchical release process, execution strategies of each stage are defined, including arrangement definitions of execution objects, front and rear inspection tasks, script running tasks, observation time, manual auditing and the like, resources required by one-time changing operation are linked together, including hierarchical rules, operation types, execution tools, product library configuration and the like, specific task examples can be created according to task templates configured by users, and the task examples can be automatically executed to realize the hierarchical release process.
The hierarchical publishing system is deployed in several stages according to the operating application instance and introduces automated inspection tasks at each stage to discover problems earlier. By means of the butt joint monitoring system, automatic detection of monitoring index abnormality and service performance fluctuation abnormality of the service core is achieved, a fusing mechanism for detecting abnormality is provided for the grading release process, and abnormal problem diffusion is avoided.
The change is released to the production environment of a new core system (micro service system) by using a hierarchical release mechanism, the hierarchical release splits the change release process into a plurality of stages, each stage only applies the change to part of machines, and the health condition of the service is checked between two adjacent stages. If a significant decrease in the health of the service is found, then even rollback changes may be aborted. During this process, most faults can be found before the last stage, so that the fault typically affects only the part of the machine to which the change has been applied, thereby effectively controlling the scope of influence of the fault.
Compared with the application automation deployment system of the same industry, the new core operation and maintenance platform hierarchical release system can assign gray nodes and dyeing rules to rapidly verify all new functions in the known controllable influence range; the online upgrading and rolling upgrading have complete timely stopping, rollback and recall strategies, the characteristics of layered gradual propulsion, gradual verification, minimized rollback and recall case full coverage are realized, the preposed state of successful verification of the previous stage in technology and business is ensured by a complete checking mechanism before each stage of release, and the flow design and automatic deployment strategy of the linkage monitoring platform, gray level antecedent and graded release are advanced and advanced in the whole industry.
The new-generation core system operation and maintenance platform hierarchical release system provides complete hierarchical release deployment functions of new core applications, a user designates target objects, product library information and hierarchical processes of application release in the hierarchical release system, configures an online template to complete deployment triggering, provides a flexible combination mode for application deployment, supports scenes of multiple deployment modes such as joint deployment of multiple applications, ensures that the deployment and release processes are safe and reliable enough, improves service continuity and release efficiency of the new core applications, achieves the omnibearing functional requirements of improving abnormal change recall capability, quick positioning problems, minimizing rollbacks and the like, integrates release management flows of multiple core system applications such as new core technology platforms, deposit/remittance, unified inquiry, online migration, switching transition and the like into a unified release platform, seamlessly connects release change management requirements of various unused applications, and establishes a new working mode. Compared with the traditional script deployment mode, the application deployment time is reduced by more than 50%, the working efficiency of application operation and maintenance personnel is improved, the enthusiasm of system personnel log operation and maintenance is improved, the labor productivity is improved, and the manpower resource cost is saved.
The specific implementation steps of task deployment for each subtask based on different execution strategies in step S202 are as follows:
step S2021, configuring a gray level release policy, and releasing the target application for a target user based on the gray level release policy, wherein the gray level release policy comprises application data of the target application and a user ID of the target user, and the gray level release policy is a release policy for releasing the target application for the target user;
wherein, before step S2022 after step S2021, the above method further comprises the steps of:
step 301, obtaining first data, wherein the first data is actual running data of the target application after the target application is published based on the gray level publishing strategy;
step S302, when the first data meets the preset condition, the target application is issued for all users based on the full-scale issue strategy, wherein the preset condition is that the first data meets the customer requirement; the method comprises the steps of carrying out a first treatment on the surface of the
Step S303, in the case that the first data does not meet the preset condition, adopting an intelligent rollback policy to rollback the target application to the first target version.
Specifically, the first data can better reflect whether the target application meets the requirements of clients or not, and lay a foundation for full release.
Step S2022, configuring a full-volume release policy, and releasing the target application for all users based on the full-volume release policy, where the full-volume release policy includes application data of the target application and user IDs of all the users, and the full-volume release policy is a release policy for releasing the target application for all the users.
Specifically, as shown in fig. 7, the overall level of the new core system release strategy adopts serial between DC, gray level release and rolling upgrade modes, various types of changes are performed in series, all database changes are completed first, apollo configuration release and application program deployment are performed alternately, system and micro-service group information is displayed in stages according to the DUS dependency division stage, and perfect automatic checking and quick rollback capability is provided.
The dependence of release is independent of the system architecture and is mainly constrained by release scenes. In the release scenario of the new core system, the DUS dependency relationship of one release is usually: BDUS to CDUS to GDUS to LDUS, i.e., issued serially in the order LDUS, GDUS, CDUS, BDUS, subunits within one DUS (primarily referred to as multiple units within a B-DUS) may be in parallel.
The gray level and full quantity of the Apollo configuration are changed, the gray level switch is required to be turned on at the same time of the gray level and full quantity release of the first DC, and the new core system Apollo is a double-center set of clusters at present, so that the gray level and full quantity release of the Apollo configuration of the second DC is not required to be carried out in practice.
In addition, after the gray release of the main center is completely finished and before the transaction verification, there is a step of transaction dyeing, and after the full release of the main center and before the transaction verification, there is a step of transaction dyeing clearing, in principle, all the steps are to modify a certain configuration on the Apollo, the configuration modification is also a step in the verification process, and the same is true for the same city center.
In combination with the monitoring design of the new core system, the front-end inspection, the grading inspection and the rear-end inspection can be carried out in the grading release process, the grading inspection mainly means that the execution percentage is set in the release task of each stage, and the monitoring index inspection is carried out once after each percentage is executed in batches, so that the system is ensured not to influence external service. The content of the automatic inspection is mainly core (gold) index alarm: the system dimension, the total real-time transaction amount of the center dimension, the response time, the service success rate, the system success rate and the like.
The gray level release is mainly embodied in a flow mode of transaction dyeing and then verification, gray level nodes and dyeing rules can be specified, and all new functions are verified rapidly within a known controllable influence range.
The grading release system designates users or transaction types through dyeing rules, so that a part of users or transactions sense version functions in advance, then the range is gradually expanded, the stability of the whole system is ensured, and the problems can be found and adjusted when the business version problems are in initial gray scale, so that the influence degree of the business version problems is ensured.
The grading system realizes gray scale by applying GREY labels, the process is to select part of examples as gray scale examples, when the gray scale examples are released, the gray scale examples are released first, and after user (flow) verification within a defined range of gray scale is not problematic, all other examples are released.
The new generation core system operation and maintenance platform grading release system is used for serving the development, operation and maintenance and other role responsible persons of the new generation core system line of the mail storage bank, and provides safe and reliable application release functions for testing and production environments, wherein development centers and data center change responsible persons and implementation persons are main service objects.
The step 202 of performing task deployment on each subtask based on different execution strategies further includes:
Step S401, splitting each unit into a plurality of sub-units, where one sub-unit includes a plurality of nodes, a predetermined number of the nodes are atoms, and the predetermined number is less than or equal to the total number of the nodes in the sub-unit;
step S402, a plurality of target units corresponding to the target application are obtained;
step S403, each of the target units is issued in series according to a first order, and the subunits in each of the target units are issued according to a predetermined rule, wherein the predetermined rule is that a first type subunit in the target units is issued in series according to a second order, and a second type subunit in the target units is issued in parallel, and the first type subunit and the second type subunit form all subunits in the target units;
in step S404, the atoms in each subunit in the target unit are issued according to a second predetermined rule, where the second predetermined rule is that the first type of atoms in the subunits are issued in series according to a third order, and the second type of atoms in the subunits are issued in parallel, and the first type of atoms and the second type of atoms form all the atoms in the subunits.
Specifically, as shown in fig. 6, the hierarchical release policy formulation should consider the following aspects:
(1) DC: the topmost dimension is serially distributed among the DCs;
(2) Stage division: mainly DUS dimension, determining release order according to dependency relationship;
(3) Grouping: the method comprises the system and the micro-service group dimension;
(4) Mode: gray scale release and scroll-in-place upgrade modes are used.
In addition, when the release strategy is complex, the 'atomicity' capability should be considered, the deployment of one atomic range does not need intervention, and the atomic range needs enough checking and verification.
And, release the change to the new core system production environment with the hierarchical release mechanism, the hierarchical release splits the change release process into a plurality of stages, each stage only applies the change to part of machines, and check the health condition of the service between two adjacent stages. If a significant decrease in the health of the service is found, then even rollback changes may be aborted. In this process, most faults can be found before the last stage, so that the faults typically affect only the part of the machine to which the changes have been applied, thereby effectively controlling the scope of the fault
The more stages of hierarchical publishing splitting, the more can problems be discovered before a full application is changed. However, the number of stages is not as high as possible, because each stage takes a certain time to apply the change and check the health, and the large number of stages necessarily results in a long release time, thereby reducing the release efficiency. The method comprises the steps of carrying out serial and grading according to DUS dimensions when the machine rooms in the same city and different places are reapplied and changed, balancing fault risks and changing release efficiency, and making corresponding fault damage stopping plans in each stage, so that good effects are achieved in practice.
And by self-defining grading rules and release strategies, the arrangement of changing tasks is supported by multiple dimensions of a physical machine room, a logic unit, a service, an instance group, a product line and the like, serial execution among multiple stages is supported, serial execution of tasks among multiple types in the stages is supported, and the tasks in the same type are executed in parallel. The system can be laterally expanded, and can support deployment and release of thousands of application server resources simultaneously with high concurrency and low time delay. Deployment execution engine functionality with a low-intrusive design, without deploying controllers at a controlled application server
Wherein after performing the anomaly check for each of the subtasks, the method further comprises:
step S501, in the case that the anomaly check is a core service indicator anomaly, the micro service system sends out first alarm information and stops the subtask, where the core service indicator anomaly includes at least one of the following: abnormal transaction amount of core service, abnormal success rate of the core service and abnormal failure rate of the core service,
step S502, in the case that the anomaly check is an anomaly of an important system index, the micro service system sends out a second alarm message and stops the subtask, where the anomaly of the important system index includes at least one of the following: application CPU usage abnormality, application MEM usage abnormality, process number abnormality of important system, log abnormality of important system,
Step S503, in the case that the anomaly detection is an index fluctuation anomaly, the micro service system sends out third alarm information, and stops the subtask, where the index fluctuation anomaly is determined according to ring ratio data and homonymy data.
Specifically, in order to ensure the safety and reliability of the whole release process, besides depending on manual inspection to determine whether abnormality exists, the grading release process also needs to introduce automatic inspection capability, so that the problems caused by change can be effectively and automatically intercepted, abnormal diffusion is avoided, and the case recall rate can reach more than 99%. The automatic inspection should incorporate new core system monitoring design with at least the following inspection capabilities:
(1) Core business index (gold index) alarm interception: if the system has important abnormal alarm, intercepting all changes, such as transaction amount, success rate, failure rate and the like;
(2) Important system index alarm: such as application CPU, MEM overrun, number of processes, error log, etc.;
(3) Index fluctuation: comparing index fluctuation of the ring ratio (yesterday) and the same ratio (last week) before and after the change, and judging whether abnormality exists;
automatic checking needs to be embedded into each stage of hierarchical release, including before deployment and after deployment; meanwhile, according to the actual scene requirement, the automatic inspection can be executed after each batch deployment is completed in combination with rolling release.
In the deployment and release process, the relatively perfect multidimensional checking is supported, and based on monitoring indexes, logs and link data can be overlapped, checking can be carried out through means such as the same ratio (the last week), the ring ratio (yesterday), the transverse comparison (the comparison among application groups), the longitudinal (the comparison before and after deployment) and the like, and an intelligent interception strategy is provided; issuing a full-link missing object prompt or alarm in a grading manner; the device has the capability of interfacing with an automatic test, and triggers a green light test.
In addition, the problem is difficult to find in the changing process of the traditional application release, and the problem is easy to intensively burst when the door is opened and operated the next day, so that the normal operation of banking business is influenced. In order to ensure the safety and reliability of the whole release process, the grading release system introduces automatic checking capability, supports more than 500 checking strategies corresponding to different data sources, automatically intercepts release tasks according to various intelligent interception strategies after detecting abnormality, ensures that problems caused by change can be found and processed in time, avoids abnormal diffusion, and enables case recall rate to reach more than 99%. The intelligent rollback strategy and version recommendation capability are supported, the passive post fire fighting is avoided, and the timely discovery of problems before, during and after release can be ensured without interrupting the service, so that the economic loss of banks is reduced.
And performing task deployment on each subtask based on different execution strategies further comprises: and in the case that the subtask is abnormal, rolling back the subtask with the abnormality to a second target version by adopting an intelligent rollback strategy, wherein the intelligent rollback strategy comprises at least one of the following steps: a first-level rollback strategy, a recommended rollback strategy, a quick rollback strategy and a self-defined rollback strategy; the primary rollback policy is a rollback policy for performing rollback under the condition of receiving a preset operation, the recommended rollback policy is a rollback policy for automatically determining a rollback application version of the rollback for the micro-service system, the quick rollback policy is a rollback policy with quick arrangement capability and accelerated rollback capability, and the custom rollback policy is a rollback policy for supporting rollback of a specified application and/or supporting rollback of a specified dimension.
In particular, hierarchical distribution can effectively reduce the number of problems introduced by changes, but the occurrence of problems cannot be avoided, and thus there is a need to provide simple, fast, efficient rollback capability:
(1) One-key capability: the rollback operation should be simple enough, and it is best to roll back by one click;
(2) Recommendation capability: multiple applications can be released once in a new core scene, and the system should be capable of automatically recommending the version to which each application is to be rolled back, so that the cost of manual decision making is reduced, and meanwhile, the risk of error of the rolled back version is reduced;
(3) Quick orchestration capability: the quick scheduling capability such as full parallelism, deployment concurrency degree adjustment and the like is provided, and the speed-up rollback capability in an emergency scene is supported;
(4) Custom capability: partial rollback capabilities are supported, such as rollback capabilities that specify dimensions of an application, specify a DUS, and the like.
Wherein, intelligent rollback scheme includes: rollback version intelligent recommendation: the system can intelligently recommend the version which should be rolled back according to the historical online information; rollback policy intelligent recommendation: and recommending a rollback strategy according to the current online progress. If the current version is only on line to a single region, only rollback the region deployment is performed in the recommended rollback strategy, and other undeployed regions do not need to be redeployed; rollback policy rapid customization: and all waiting, automatic checking and manual checking tasks are deleted by one key, all stages (stages) are combined, the deployment concurrency is modified in batches, and the quick rollback requirement of a user is met.
Fig. 8 is a diagram of a hierarchical distribution system logic architecture, and as shown in fig. 8, the middle part is a hierarchical distribution system functional area, and the periphery is a peripheral system functional area. The system adopts a B/S architecture, and a user completes related operations of hierarchical release on a browser console; the functions provided by the application layer comprise application deployment, configuration release, plan execution, database change and user authority management; the system processing layer adopts a distributed high-availability architecture design, and comprises task scheduling, no-agent deployment, sql analysis execution and automatic check service; the persistence layer adopts an OpenGauss database to store release configuration and task information, and uses redis as a cache, and the message queue stores task information to be scheduled.
The system adopts a front-end and back-end separation architecture mode, completes overall hierarchical release task process control through back-end service, an in-line system and unified portal interaction, adapts and releases the association relation between the system and an external system, and realizes the functional processing of the system through an in-system and inter-system customized interaction communication mechanism.
FIG. 9 is a technical architecture diagram of a hierarchical release system, as shown in FIG. 9, wherein the front end of the hierarchical release system adopts an open-source vue front end development framework, which is suitable for common operation and maintenance management system development; the access layer realizes server load balancing based on the nginx+uwsgi. Both the access layer and the service end can improve the throughput capacity of the service through transverse expansion.
The distributed task executor is developed by adopting python language based on an open-source Web development framework Django, and the technology selection of each functional module is as follows:
1. adopting a distributed asynchronous queue frame Celery to realize distributed task execution;
2. the deployment executor realizes low-intrusion design based on an open source tool, does not need to deploy independent agents in an application server, and realizes no agent deployment capability;
3. interaction with an Apollo configuration center is realized based on Apollo-sdk, and configuration importing, modifying and gray publishing functions are realized;
4. The automatic checking module adopts Golang development to provide API service based on Gin framework;
5. the data layer adopts OpenGaussDB as a database, mainly stores platform data such as release configuration, change tasks and the like, and adopts redis to realize interface data caching and task scheduling message queues.
FIG. 10 is a schematic diagram of a hierarchical publishing system functional module, as shown in FIG. 10, including configuration management, task management, automatic inspection, operation and maintenance tools, and the system bottom layer provides task orchestration, task scheduling, task deployment functions.
The configuration management function module is responsible for all change configurations, and the configuration items are as follows:
1. executing tools: defining deployment execution categories, which can be divided into application deployment, configuration release, file delivery, database operation, plan execution and the like;
2. the execution object: defining an operation execution target, wherein the application is a service tree node in deployment; the APP object of the Apollo configuration center is configured and released; the database is operated to correspond to the database table information;
3. deployment variables: aiming at a differentiated deployment scene, completing differentiated command execution of different environments and different regions through deployment variables;
4. script tasks: script tasks can be configured before and after the deployment tasks are executed, and the front-rear operation of some deployments is completed;
5. Product library: when the application is deployed, the configuration information of the product library is required to be specified, and the hierarchical release system completes the pulling deployment of the actual deployment media pack according to the configuration of the product library and the version number;
6. database logic table: aiming at a multi-fragment database changing scene, in order to simplify user configuration, a database logic table configuration is designed, and an operation execution rule of the multi-fragment database is defined;
7. check list: the automatic checking service is used, and after the deployment of each stage of grading release is finished, the automatic checking service is called, and the inquiry and calculation are carried out according to the configuration of the checking list, so that the abnormal automatic interception is realized;
8. mutual exclusion group: providing mutually exclusive configurations ensures that interdependent applications cannot be changed at the same time;
9. grading rule: defining an overall grading release execution process, and generating a task list by a grading release system according to grading rules;
10. and (3) configuring an online template: configuration of online template association grading rules, mutual exclusion groups, execution tools and the like, and a user selects an online template to realize task triggering;
the task management module manages different types of task execution, including program online (rollback), plan execution (recovery), apollo configuration release, emergency configuration release and database change; the automatic checking service provides functions of alarm event checking, monitoring threshold checking, intelligent fluctuation checking, consistency checking, SQL grammar specification checking and the like; in the aspect of operation and maintenance tools, functions such as apollo configuration import, database file import, abnormal instance repair, operation record query and the like are provided.
As shown in fig. 11 (a) and fig. 11 (b), the new core operation and maintenance platform hierarchical release system displays task states in the release process in real time through the visual large screen, wherein fig. 11 (a) is a left side part of the visual large screen, fig. 11 (b) is a right side part of the visual large screen, the visual large screen is simultaneously linked with the monitoring system to conduct comparison analysis based on historical change trend of response time and success rate, a plurality of systems and a plurality of applications related to new core release are displayed in real time, the system, the applications and development and maintenance groups related to quick positioning problems are attributed, the cost of manual decision is reduced, the risk of rollback version errors is reduced as much as possible, and accordingly loss caused by application change release to banks is reduced. The core system operation and maintenance platform hierarchical release system is positioned to enable a service system to be better and faster in iteration upgrade, and a standard automatic release flow is executed, so that release quality is guaranteed, and meanwhile efficiency is achieved. In the actual production environment of the new core service system, the change release types comprise various change types such as general component change, database change, apollo configuration release, application program release and the like, the execution sequence is split from the multi-dimension of the center, the DUS, the system and the like, and the release modes such as gray level, blue-green, rolling and the like are combined, so that the floor grading release strategy standard is provided, and a more reasonable, safe and agile automatic release flow is provided. The system operation and maintenance platform is very focused on deployment and release capabilities of applications, a set of application deployment and release systems which are comprehensive in function, convenient to operate, rich in scene and flexible in customization are built based on the characteristics of a core system with huge scale of a distributed, micro-service and x86 architecture, and important support is provided for quick iteration and stable operation of system development. Focusing is oriented to the characteristic of a new core system distributed architecture, hierarchical release is one of important core capabilities of the new core agility operation and maintenance, and agility delivery of release/change driving is realized.
According to the deployment method of the micro service system, firstly, tasks of the micro service system are split into a plurality of subtasks from a plurality of dimensions, and the micro service system is a system constructed based on a micro service architecture; then performing task deployment on each sub-task based on different execution strategies, and performing abnormality detection on each sub-task, wherein the abnormality detection comprises at least one of the following steps: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time. According to the method, through hierarchical deployment, tasks of the micro service system are automatically checked from multiple dimensions, and an intelligent deployment strategy is provided, so that the problem that the requirements of the micro service system cannot be met by means of a traditional application automation deployment mode is solved.
It should be noted that the steps illustrated in the flowcharts of the figures may be performed in a computer system such as a set of computer executable instructions, and that although a logical order is illustrated in the flowcharts, in some cases the steps illustrated or described may be performed in an order other than that illustrated herein.
The embodiment of the application also provides a deployment device of the micro service system, and it is required to be noted that the deployment device of the micro service system of the embodiment of the application can be used for executing the deployment method for the micro service system provided by the embodiment of the application. The device is used for realizing the above embodiments and preferred embodiments, and is not described in detail. As used below, the term "module" may be a combination of software and/or hardware that implements a predetermined function. While the means described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and contemplated.
The deployment device of the micro service system provided in the embodiment of the present application is described below.
Fig. 12 is a schematic diagram of a deployment device of a micro-service system according to an embodiment of the present application. As shown in fig. 12, the apparatus includes a splitting unit 10 and a deployment unit 20, where the splitting unit 10 is configured to split a task of the micro service system into a plurality of subtasks from a plurality of dimensions, and the micro service system is a system constructed based on a micro service architecture; the deployment unit 20 is configured to perform task deployment on each of the subtasks based on different execution policies, and perform anomaly checking on each of the subtasks, where the anomaly checking includes at least one of: the service preset monitoring index is abnormal, the service performance is fluctuating abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time.
The deployment device of the micro service system comprises a splitting unit and a deployment unit, wherein the splitting unit is used for splitting tasks of the micro service system into a plurality of subtasks from a plurality of dimensions, and the micro service system is a system constructed based on a micro service architecture; the deployment unit is used for performing task deployment on each subtask based on different execution strategies and performing exception checking on each subtask, wherein the exception checking comprises at least one of the following steps: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time. According to the method, through hierarchical deployment, tasks of the micro service system are automatically checked from multiple dimensions, and an intelligent deployment strategy is provided, so that the problem that the requirements of the micro service system cannot be met by means of a traditional application automation deployment mode is solved.
As an alternative, the plurality of dimensions includes: the system comprises a central dimension, a unit dimension, a system dimension and a micro service group dimension, wherein one unit comprises a plurality of applications, one system comprises a plurality of micro service groups, one micro service group comprises a plurality of applications, the plurality of applications in one micro service group are distributed in the plurality of units, and a splitting unit comprises a first splitting module and a building module, wherein the first splitting module is used for splitting tasks of the micro service system into a plurality of first subtasks according to the central dimension; the construction module is used for constructing a task splitting model aiming at each first subtask, the task splitting model comprises a vertical axis and a horizontal axis, the horizontal axis of the task splitting model is used for representing splitting according to the unit dimension, the vertical axis of the task splitting model is used for representing splitting according to the system dimension or splitting according to the micro-service group dimension, and the horizontal axis coordinate and the vertical axis coordinate are used for positioning a target application. The more stages of hierarchical publishing splitting, the more can problems be discovered before a full application is changed. However, the number of stages is not as high as possible, because each stage takes a certain time to apply the change and check the health, and the large number of stages necessarily results in a long release time, thereby reducing the release efficiency. The method comprises the steps of carrying out serial and grading according to DUS dimensions when the machine rooms in the same city and different places are reapplied and changed, balancing fault risks and changing release efficiency, and making corresponding fault damage stopping plans in each stage, so that good effects are achieved in practice.
The deployment unit comprises a first configuration module and a second configuration module, wherein the first configuration module is used for configuring a gray level release strategy and releasing the target application for a target user based on the gray level release strategy, the gray level release strategy comprises application data of the target application and a user ID of the target user, and the gray level release strategy is a release strategy for releasing the target application for the target user; the second configuration module is configured to configure a full-volume release policy, and release the target application for all users based on the full-volume release policy, where the full-volume release policy includes application data of the target application and user IDs of all the users, and the full-volume release policy is a release policy for releasing the target application for all the users. The grading release system designates users or transaction types through dyeing rules, so that a part of users or transactions sense version functions in advance, then the range is gradually expanded, the stability of the whole system is ensured, and the problems can be found and adjusted when the business version problems are in initial gray scale, so that the influence degree of the business version problems is ensured.
In an optional example, the apparatus further includes a first obtaining module, a first distributing module, and a rollback module, where the first obtaining module is configured to obtain, after the gray level distribution policy is configured, first data before the full level distribution policy is configured, where the first data is actual running data of the target application after the target application is distributed based on the gray level distribution policy; the first issuing module is used for issuing the target application for all users based on the total issuing strategy under the condition that the first data meets the preset condition, wherein the preset condition is that the first data meets the client requirement; and the rollback module is used for rollback the target application to a first target version by adopting an intelligent rollback strategy under the condition that the first data does not meet the preset condition. The grading system realizes gray scale by applying GREY labels, the process is to select part of examples as gray scale examples, when the gray scale examples are released, the gray scale examples are released firstly, after user (flow) verification within a defined range of gray scale is performed, all other examples are released, the stability of the whole system can be ensured, and the problems of business version can be found and adjusted at the time of initial gray scale so as to ensure the influence degree.
In an alternative scheme, the plurality of dimensions comprise unit dimensions, the plurality of first subtasks are issued in series, the deployment unit comprises a second splitting module, a second acquisition module, a second issuing module and a third issuing module, the second splitting module is used for splitting each unit into a plurality of sub-units, one sub-unit comprises a plurality of nodes, the plurality of nodes form an atom, and the preset number is smaller than or equal to the total number of the nodes in the sub-unit; the second acquisition module is used for acquiring a plurality of target units corresponding to the target application; the second issuing module is used for issuing each target unit in series according to a first sequence, issuing the subunits in each target unit according to a first preset rule, wherein the first preset rule is that first subunits in the target unit are issued in series according to a second sequence, and issuing second subunits in the target unit in parallel, and the first subunits and the second subunits form all subunits in the target unit; the third issuing module is configured to issue the atoms in each subunit in the target unit according to a second predetermined rule, where the second predetermined rule is that the first type of atoms in the subunits are issued in series according to a third order, and the second type of atoms in the subunits are issued in parallel, and the first type of atoms and the second type of atoms form all atoms in the subunits. The working efficiency of application operation and maintenance personnel can be improved, and the enthusiasm of system personnel log operation and maintenance can be improved, so that the labor productivity is improved, and the manpower resource cost is saved.
In this example, the device further includes a first alarm module, a second alarm module, and a third alarm module, where the first alarm module is configured to send out first alarm information and stop the subtasks when the anomaly check is that the core service indicator is abnormal after the anomaly check is performed on each subtask, where the core service indicator is abnormal and includes at least one of the following: the second alarm module is used for sending out second alarm information and stopping the subtask when the abnormality check is that the important system index is abnormal, wherein the important system index abnormality comprises at least one of the following components: the application CPU uses the abnormity, the application MEM uses the abnormity, the process number of the important system is abnormal, the log of the important system is abnormal, the third alarm module is used for sending out third alarm information and stopping the subtask under the condition that the abnormity check is index fluctuation abnormity, and the index fluctuation abnormity is determined according to ring ratio data and homonymous data. The problem is difficult to find in the changing process of the traditional application release, and the problem is easy to cause concentrated burst when the door is opened and operated the next day so as to influence the normal operation of banking business. In order to ensure the safety and reliability of the whole release process, the grading release system introduces automatic checking capability, supports more than 500 checking strategies corresponding to different data sources, automatically intercepts release tasks according to various intelligent interception strategies after detecting abnormality, ensures that problems caused by change can be found and processed in time, avoids abnormal diffusion, and enables case recall rate to reach more than 99%. The intelligent rollback strategy and version recommendation capability are supported, the passive post fire fighting is avoided, and the timely discovery of problems before, during and after release can be ensured without interrupting the service, so that the economic loss of banks is reduced.
In an alternative example, the deployment unit includes a rollback module, where the rollback module is configured to rollback, in a case where the subtask is abnormal, the subtask that is abnormal to a second target version using an intelligent rollback policy, where the intelligent rollback policy includes at least one of: a first-level rollback strategy, a recommended rollback strategy, a quick rollback strategy and a self-defined rollback strategy; the primary rollback policy is a rollback policy for performing rollback under the condition of receiving a preset operation, the recommended rollback policy is a rollback policy for automatically determining a rollback application version of the rollback for the micro-service system, the quick rollback policy is a rollback policy with quick arrangement capability and accelerated rollback capability, and the custom rollback policy is a rollback policy for supporting rollback of a specified application and/or supporting rollback of a specified dimension. The problem can be avoided, and the quick rollback requirement of the user is met.
The deployment device of the micro service system comprises a processor and a memory, wherein the splitting unit and the like are stored in the memory as program units, and the processor executes the program units stored in the memory to realize corresponding functions. The modules are all located in the same processor; alternatively, the above modules may be located in different processors in any combination.
The processor includes a kernel, and the kernel fetches the corresponding program unit from the memory. The kernel can be provided with one or more than one kernel, and the problem that the requirement of an application system cannot be met by means of the traditional application automation deployment mode is solved by adjusting kernel parameters.
The memory may include volatile memory, random Access Memory (RAM), and/or nonvolatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM), among other forms in computer readable media, the memory including at least one memory chip.
The embodiment of the invention provides a computer readable storage medium, which comprises a stored program, wherein when the program runs, equipment where the computer readable storage medium is located is controlled to execute a deployment method of a micro-service system.
Specifically, the deployment method of the micro service system comprises the following steps:
step S201, splitting tasks of the micro-service system into a plurality of subtasks from a plurality of dimensions, wherein the micro-service system is a system constructed based on a micro-service architecture;
specifically, the hierarchical publishing system is deployed in several stages (i.e., split into several subtasks) according to the application instance of the operation, and introduces automated inspection tasks at each stage to discover problems earlier. By means of the butt joint monitoring system, automatic detection of monitoring index abnormality and service performance fluctuation abnormality of the service core is achieved, a fusing mechanism for detecting abnormality is provided for the grading release process, and abnormal problem diffusion is avoided.
Step S202, performing task deployment on each subtask based on different execution strategies, and performing exception checking on each subtask, wherein the exception checking includes at least one of the following: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time.
Specifically, as shown in fig. 5, when the hierarchical release policy is organized, according to the horizontal-vertical division as above, the horizontal axis corresponds to the stage division, and generally, the horizontal axis is mainly the presentation dimension according to the serial execution, so that the clustering division is convenient, for example, there are G, B, C, L four DUS, the dependency relationship is B to C to G to L, and the subunits in each DUS can be executed in parallel.
The embodiment of the invention provides a processor which is used for running a program, wherein the deployment method of a micro-service system is executed when the program runs.
Specifically, the deployment method of the micro service system comprises the following steps:
step S201, splitting tasks of the micro-service system into a plurality of subtasks from a plurality of dimensions, wherein the micro-service system is a system constructed based on a micro-service architecture;
Specifically, the hierarchical publishing system is deployed in several stages (i.e., split into several subtasks) according to the application instance of the operation, and introduces automated inspection tasks at each stage to discover problems earlier. By means of the butt joint monitoring system, automatic detection of monitoring index abnormality and service performance fluctuation abnormality of the service core is achieved, a fusing mechanism for detecting abnormality is provided for the grading release process, and abnormal problem diffusion is avoided.
Step S202, performing task deployment on each subtask based on different execution strategies, and performing exception checking on each subtask, wherein the exception checking includes at least one of the following: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time.
Specifically, as shown in fig. 5, when the hierarchical release policy is organized, according to the horizontal-vertical division as above, the horizontal axis corresponds to the stage division, and generally, the horizontal axis is mainly the presentation dimension according to the serial execution, so that the clustering division is convenient, for example, there are G, B, C, L four DUS, the dependency relationship is B to C to G to L, and the subunits in each DUS can be executed in parallel.
The embodiment of the invention provides equipment, which comprises a processor, a memory and a program stored in the memory and capable of running on the processor, wherein the processor realizes at least the following steps when executing the program:
step S201, splitting tasks of the micro-service system into a plurality of subtasks from a plurality of dimensions, wherein the micro-service system is a system constructed based on a micro-service architecture;
step S202, performing task deployment on each subtask based on different execution strategies, and performing exception checking on each subtask, wherein the exception checking includes at least one of the following: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time.
The device herein may be a server, PC, PAD, cell phone, etc.
The present application also provides a computer program product adapted to perform a program initialized with at least the following method steps when executed on a data processing device:
step S201, splitting tasks of the micro-service system into a plurality of subtasks from a plurality of dimensions, wherein the micro-service system is a system constructed based on a micro-service architecture;
Step S202, performing task deployment on each subtask based on different execution strategies, and performing exception checking on each subtask, wherein the exception checking includes at least one of the following: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time.
It will be appreciated by those skilled in the art that the modules or steps of the invention described above may be implemented in a general purpose computing device, they may be concentrated on a single computing device, or distributed across a network of computing devices, they may be implemented in program code executable by computing devices, so that they may be stored in a storage device for execution by computing devices, and in some cases, the steps shown or described may be performed in a different order than that shown or described herein, or they may be separately fabricated into individual integrated circuit modules, or multiple modules or steps of them may be fabricated into a single integrated circuit module. Thus, the present invention is not limited to any specific combination of hardware and software.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In one typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include volatile memory in a computer-readable medium, random Access Memory (RAM) and/or nonvolatile memory, etc., such as Read Only Memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.
Computer readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device. Computer-readable media, as defined herein, does not include transitory computer-readable media (transmission media), such as modulated data signals and carrier waves.
It should also be noted that 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 one … …" does not exclude the presence of other like elements in a process, method, article or apparatus that comprises an element.
From the above description, it can be seen that the above embodiments of the present application achieve the following technical effects:
1) According to the deployment method of the micro service system, firstly, tasks of the micro service system are split into a plurality of subtasks from a plurality of dimensions, and the micro service system is a system constructed based on a micro service architecture; then performing task deployment on each sub-task based on different execution strategies, and performing abnormality detection on each sub-task, wherein the abnormality detection comprises at least one of the following steps: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time. According to the method, through hierarchical deployment, tasks of the micro service system are automatically checked from multiple dimensions, and an intelligent deployment strategy is provided, so that the problem that the requirements of the micro service system cannot be met by means of a traditional application automation deployment mode is solved.
2) The deployment device of the micro service system comprises a splitting unit and a deployment unit, wherein the splitting unit is used for splitting tasks of the micro service system into a plurality of subtasks from a plurality of dimensions, and the micro service system is a system constructed based on a micro service architecture; the deployment unit is used for performing task deployment on each subtask based on different execution strategies and performing exception checking on each subtask, wherein the exception checking comprises at least one of the following steps: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time. According to the method, through hierarchical deployment, tasks of the micro service system are automatically checked from multiple dimensions, and an intelligent deployment strategy is provided, so that the problem that the requirements of the micro service system cannot be met by means of a traditional application automation deployment mode is solved.
The foregoing description is only of the preferred embodiments of the present application and is not intended to limit the same, but rather, various modifications and variations may be made by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principles of the present application should be included in the protection scope of the present application.

Claims (10)

1. A method for deploying a micro-service system, comprising:
splitting tasks of the micro-service system into a plurality of subtasks from a plurality of dimensions, wherein the micro-service system is a system constructed based on a micro-service architecture;
task deployment is performed on each subtask based on different execution strategies, and abnormality checking is performed on each subtask, wherein the abnormality checking comprises at least one of the following steps: the core business index is abnormal, the important system index is abnormal, the index fluctuation is abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time.
2. The method of claim 1, wherein the plurality of dimensions comprises: a center dimension, a unit dimension, a system dimension, and a micro service group dimension, wherein a unit comprises a plurality of applications, a system comprises a plurality of micro service groups, a micro service group comprises a plurality of applications, the plurality of applications in the micro service group are distributed in the plurality of units, and tasks of the micro service system are split into a plurality of subtasks from the plurality of dimensions, and the method comprises the following steps:
Splitting the task of the micro-service system into a plurality of first subtasks according to the central dimension;
and constructing a task splitting model aiming at each first subtask, wherein the task splitting model comprises a vertical axis and a horizontal axis, the horizontal axis of the task splitting model is used for representing splitting according to the unit dimension, the vertical axis of the task splitting model is used for representing splitting according to the system dimension or splitting according to the micro-service group dimension, and the horizontal axis coordinate and the vertical axis coordinate are used for positioning a target application.
3. The method of claim 1, wherein task deploying each of the subtasks based on different execution strategies comprises:
configuring a gray level release policy, and releasing a target application for a target user based on the gray level release policy, wherein the gray level release policy comprises application data of the target application and a user ID of the target user, and the gray level release policy is a release policy for releasing the target application for the target user;
configuring a full-volume release policy, and releasing the target application for all users based on the full-volume release policy, wherein the full-volume release policy comprises application data of the target application and user IDs of all the users, and the full-volume release policy is a release policy for releasing the target application for all the users.
4. A method according to claim 3, wherein after configuring the gray scale distribution policy, before configuring the full volume distribution policy, the method further comprises:
acquiring first data, wherein the first data is actual running data of the target application after the target application is published based on the gray level publishing strategy;
under the condition that the first data meets the preset condition, issuing the target application for all users based on the full-volume issuing strategy, wherein the preset condition is that the first data meets the client requirement;
and under the condition that the first data does not meet the preset condition, adopting an intelligent rollback strategy to rollback the target application to a first target version.
5. The method of claim 1, wherein the plurality of dimensions comprises a unit dimension, wherein the plurality of first subtasks are serially published, wherein task deployment for each of the subtasks based on different execution strategies comprises:
splitting each unit into a plurality of subunits, wherein one subunit comprises a plurality of nodes, a preset number of the nodes form an atom, and the preset number is smaller than or equal to the total number of the nodes in the subunits;
Acquiring a plurality of target units corresponding to a target application;
the target units are issued in series according to a first sequence, the subunits in the target units are issued according to a first preset rule, the first preset rule is that first type subunits in the target units are issued in series according to a second sequence, second type subunits in the target units are issued in parallel, and the first type subunits and the second type subunits form all subunits in the target units;
the atoms in each subunit in the target unit are issued according to a second preset rule, wherein the second preset rule is that the first type atoms in the subunits are issued in series according to a third sequence, and the second type atoms in the subunits are issued in parallel, and the first type atoms and the second type atoms form all atoms in the subunits.
6. The method according to any one of claims 1 to 5, wherein after performing an anomaly check for each of the subtasks, the method further comprises:
and under the condition that the abnormality check is abnormal in the core service index, sending out first alarm information and stopping the subtask, wherein the abnormal in the core service index comprises at least one of the following components: abnormal transaction amount of core service, abnormal success rate of the core service and abnormal failure rate of the core service,
And under the condition that the abnormality check is an important system index abnormality, sending out second alarm information and stopping the subtask, wherein the important system index abnormality comprises at least one of the following components: application CPU usage abnormality, application MEM usage abnormality, process number abnormality of important system, log abnormality of important system,
and under the condition that the abnormality detection is index fluctuation abnormality, sending out third alarm information, and stopping the subtask, wherein the index fluctuation abnormality is determined according to ring ratio data and homonymous data.
7. The method according to any one of claims 1 to 5, wherein in the task deployment of each of the subtasks based on different execution strategies, the method further comprises:
and in the case that the subtask is abnormal, rolling back the subtask with the abnormality to a second target version by adopting an intelligent rollback strategy, wherein the intelligent rollback strategy comprises at least one of the following steps: a first-level rollback strategy, a recommended rollback strategy, a quick rollback strategy and a self-defined rollback strategy;
the primary rollback policy is a rollback policy for performing rollback under the condition of receiving a preset operation, the recommended rollback policy is a rollback policy for automatically determining a rollback application version of the rollback for the micro-service system, the quick rollback policy is a rollback policy with quick arrangement capability and accelerated rollback capability, and the custom rollback policy is a rollback policy for supporting rollback of a specified application and/or supporting rollback of a specified dimension.
8. A deployment apparatus for a micro-service system, comprising:
the splitting unit is used for splitting the task of the micro-service system into a plurality of subtasks from a plurality of dimensions, and the micro-service system is a system constructed based on a micro-service architecture;
a deployment unit, configured to perform task deployment on each of the subtasks based on different execution policies, and perform exception checking on each of the subtasks, where the exception checking includes at least one of: the service preset monitoring index is abnormal, the service performance is fluctuating abnormal, different subtasks correspond to different execution strategies, and the execution strategies comprise at least one of the following: executing an object, a pre-checking task, a post-checking task, a script running task and an observation time.
9. A computer-readable storage medium, characterized in that the computer-readable storage medium comprises a stored program, wherein the program, when run, controls a device in which the computer-readable storage medium is located to perform the deployment method of the micro service system according to any one of claims 1 to 7.
10. An electronic device, comprising: one or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising a deployment method for performing the micro-service system of any of claims 1-7.
CN202310369600.4A 2023-04-07 2023-04-07 Deployment method and device of micro-service system, readable storage medium and electronic equipment Pending CN116466959A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310369600.4A CN116466959A (en) 2023-04-07 2023-04-07 Deployment method and device of micro-service system, readable storage medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310369600.4A CN116466959A (en) 2023-04-07 2023-04-07 Deployment method and device of micro-service system, readable storage medium and electronic equipment

Publications (1)

Publication Number Publication Date
CN116466959A true CN116466959A (en) 2023-07-21

Family

ID=87183614

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310369600.4A Pending CN116466959A (en) 2023-04-07 2023-04-07 Deployment method and device of micro-service system, readable storage medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN116466959A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117076092A (en) * 2023-10-13 2023-11-17 成都登临科技有限公司 Multi-dimensional data task processing method and device, electronic equipment and storage medium
CN117591132A (en) * 2024-01-12 2024-02-23 杭州谐云科技有限公司 Service release method and release system
CN117827684A (en) * 2024-03-05 2024-04-05 数翊科技(北京)有限公司武汉分公司 Early warning method and device for data calculation operation, electronic equipment and storage medium
CN117591132B (en) * 2024-01-12 2024-04-26 杭州谐云科技有限公司 Service release method and release system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117076092A (en) * 2023-10-13 2023-11-17 成都登临科技有限公司 Multi-dimensional data task processing method and device, electronic equipment and storage medium
CN117076092B (en) * 2023-10-13 2024-01-19 成都登临科技有限公司 Multi-dimensional data task processing method and device, electronic equipment and storage medium
CN117591132A (en) * 2024-01-12 2024-02-23 杭州谐云科技有限公司 Service release method and release system
CN117591132B (en) * 2024-01-12 2024-04-26 杭州谐云科技有限公司 Service release method and release system
CN117827684A (en) * 2024-03-05 2024-04-05 数翊科技(北京)有限公司武汉分公司 Early warning method and device for data calculation operation, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
Dang et al. Aiops: real-world challenges and research innovations
US10761810B2 (en) Automating testing and deployment of software code changes
US20190394101A1 (en) Automatic microservice problem detection in enterprise applications
CN108255720A (en) Software automatic test system based on cloud computing framework
CN116466959A (en) Deployment method and device of micro-service system, readable storage medium and electronic equipment
WO2021001845A1 (en) System and method for modelling and monitoring processes in organizations using digital twins
US10872029B1 (en) System, apparatus and method for deploying infrastructure to the cloud
US20200175439A1 (en) Predictive Risk Assessment In Multi-System Modeling
US9319280B2 (en) Calculating the effect of an action in a network
US10785128B1 (en) System, apparatus and method for deploying infrastructure to the cloud
CN109582301A (en) Method for processing business, device, equipment and the medium of task based access control scheduling system
CN105577475B (en) Automated performance testing system and method
US20090089202A1 (en) Algorithmic order management tool for trading financial instruments
US20110004564A1 (en) Model Based Deployment Of Computer Based Business Process On Dedicated Hardware
CN110221962A (en) A kind of centralization software testing management system and method
CN112491608A (en) Disaster recovery solution determination method, disaster recovery solution determination device, disaster recovery solution determination equipment and storage medium
CN110689223B (en) Robot batch management system based on RPA control
US10791033B2 (en) Cloud-native network function assessment tool
CN105938443A (en) Method and system used for performing diagnosis in computating environment
CN108491254A (en) A kind of dispatching method and device of data warehouse
US10417712B2 (en) Enterprise application high availability scoring and prioritization system
CN110780856B (en) Electricity data release platform based on micro-service
CN109101296B (en) Distributed automatic deduction method and system
CN106910004A (en) A kind of overall process blower fan workmanship monitoring system based on workflow
CN110262975A (en) Test data management method, device, equipment and computer readable storage medium

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