Server layout method, device, computer equipment and storage medium

By obtaining the requirements parameters and important level parameters of the software project, determining the server identification and layout conditions, and combining rack configuration data for server layout, the problem of difficult to take into account both resource utilization and high availability in the existing technology is solved, and an efficient server layout is achieved.

CN112131010BActive Publication Date: 2025-07-08TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202011071198.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-10-09
Publication Date
2025-07-08
Estimated Expiration
2040-10-09

AI Technical Summary

Technical Problem

The existing server layout method is difficult to take into account both the maximization of resource utilization and the high availability of software products on server deployment.

Method used

By obtaining the requirements parameters of the software project, extracting the server requirements parameters and important level parameters of the software project, determining the server identity and layout conditions of the server to be laid out, generating server layout results that meet layout requirements, and combining preset rack configuration data to generate server layout results that meet layout requirements.

Benefits of technology

It realizes the maximization of resource utilization and high availability of software products in server deployment, and improves the efficiency and resource utilization of server layout.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112131010B_ABST
    Figure CN112131010B_ABST
Patent Text Reader

Abstract

The present application relates to a server layout method, device, computer equipment and storage medium. The method includes: obtaining the demand parameters of the software project, extracting the server demand parameters and the software project importance level parameters in the demand parameters, determining the server identification of the server to be laid out and the layout conditions of the server to be laid out according to the server demand parameters and the software project importance level parameters, generating the layout requirements corresponding to the software project according to the server identification and the layout conditions, collecting the server identifications in the layout requirements, obtaining the server identification set, laying out the server identifications according to the preset rack configuration data, and generating the server layout results that meet the layout requirements. The layout results are made to achieve the effect of maximizing resource utilization and high availability of software products deployed on servers at the same time, so as to realize intelligent hardware planning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and particularly to a server layout method, device, computer device, and storage medium. Background Art

[0002] With the rapid development of the Internet industry, servers, as the center of data processing, play a crucial role in the data processing process, providing data processing services for various software products. Machine rooms including a large number of physical servers have emerged accordingly. The reasonable placement of servers is an important foundation for realizing intelligent hardware. For business parties that specifically provide data processing services for various software products, finding suitable racks and rack positions for the servers in the machine room is the key to server layout.

[0003] The existing method for determining servers generally involves manually surveying the machine room to obtain information and data about the racks and servers, importing the information and data of the racks and servers into the planning system, and evenly placing the servers on different racks according to a pre-determined placement order. However, this planning method is difficult to simultaneously achieve the maximization of resource utilization and high availability of software products in server deployment. Summary of the Invention

[0004] Based on this, in view of the above technical problems, it is necessary to provide a server layout method, device, computer device, and storage medium that can simultaneously achieve the maximization of resource utilization and high availability of software products in server deployment.

[0005] A server layout method, the method comprising:

[0006] Obtaining requirement parameters of a software project, and extracting server requirement parameters and software project importance level parameters from the requirement parameters;

[0007] Determining the server identifier of the server to be laid out and the layout conditions of the server to be laid out according to the server requirement parameters and the software project importance level parameters;

[0008] Generating a layout requirement corresponding to the software project according to the server identifier and the layout conditions;

[0009] Laying out the server identifier according to preset rack configuration data to generate a server layout result that meets the layout requirement.

[0010] A server layout device, the device comprising:

[0011] A requirement parameter acquisition module, configured to obtain requirement parameters of a software project, and extract server requirement parameters and software project importance level parameters from the requirement parameters;

[0012] A layout condition determination module, configured to determine the server identifier of the server to be laid out and the layout conditions of the server to be laid out according to the server requirement parameters and the software project importance level parameters;

[0013] A layout requirement generation module, configured to generate layout requirements corresponding to the software project according to the server identifier and the layout conditions;

[0014] A layout result generation module, configured to layout the server identifier according to the preset rack configuration data, and generate a server layout result that meets the layout requirements.

[0015] A computer device, including a memory and a processor, where the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:

[0016] Obtain the requirement parameters of the software project, and extract the server requirement parameters and the software project importance level parameters in the requirement parameters;

[0017] According to the server requirement parameters and the software project importance level parameters, determine the server identifier of the server to be laid out and the layout conditions of the server to be laid out;

[0018] According to the server identifier and the layout conditions, generate layout requirements corresponding to the software project;

[0019] According to the preset rack configuration data, layout the server identifier, and generate a server layout result that meets the layout requirements.

[0020] A computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:

[0021] Obtain the requirement parameters of the software project, and extract the server requirement parameters and the software project importance level parameters in the requirement parameters;

[0022] According to the server requirement parameters and the software project importance level parameters, determine the server identifier of the server to be laid out and the layout conditions of the server to be laid out;

[0023] According to the server identifier and the layout conditions, generate layout requirements corresponding to the software project;

[0024] According to the preset rack configuration data, layout the server identifier, and generate a server layout result that meets the layout requirements.

[0025] The above server layout method, device, computer device, and storage medium use the requirement parameters of a software project as input data. Based on the server requirement parameters and software project importance level parameters in the requirement parameters, the servers to be laid out and their layout conditions are determined to generate layout requirements, and meeting the layout requirements is used as the layout goal to achieve high availability of the software product in server deployment. At the same time, based on the preset rack configuration data, the server identifiers are laid out to generate a server layout result that meets the layout requirements, taking into account the maximization of resource utilization, so that the layout result achieves the effect of simultaneously maximizing resource utilization and high availability of the software product in server deployment. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 It is an application environment diagram of the server layout method in an embodiment;

[0027] Figure 2 It is a flowchart of the server layout method in an embodiment;

[0028] Figure 3 It is a flowchart of the server layout method in another embodiment;

[0029] Figure 4 It is a flowchart of the server layout method in still another embodiment;

[0030] Figure 5 It is a flowchart of the server layout method in yet another embodiment;

[0031] Figure 6 It is a data processing flowchart of determining the number of racks in the server layout method in an embodiment;

[0032] Figure 7 It is a flowchart of the server layout method in still another embodiment;

[0033] Figure 8 It is an architecture diagram of the server layout system in an embodiment;

[0034] Figure 9 It is a data processing flowchart of the server layout method in an embodiment;

[0035] Figure 10 It is a flowchart of the server layout method in another embodiment;

[0036] Figure 11 It is a structural block diagram of the server layout device in an embodiment;

[0037] Figure 12 It is an internal structure diagram of a computer device in an embodiment. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0038] In order to make the objectives, technical solutions, and advantages of the present application clearer and more understandable, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0039] The server layout method provided by the present application can be applied to an application environment as Figure 1 shown. Among them, the terminal 102 communicates with the server 104 through a network. The server 104 obtains the requirement parameters of the software project uploaded by the terminal 102, extracts the server requirement parameters and the software project importance level parameters in the requirement parameters, determines the server identifier of the server to be laid out and the layout conditions of the server to be laid out according to the server requirement parameters and the software project importance level parameters, generates a layout requirement corresponding to the software project according to the server identifier and the layout conditions, aggregates the server identifiers in the layout requirement to obtain a server identifier set, performs layout on the server identifiers according to the preset rack configuration data, generates a server layout result that meets the layout requirement, and transmits the server layout result back to the terminal 102. Among them, the server 104 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. The terminal 102 can be a smart phone, a tablet computer, a laptop computer, a desktop computer, a smart speaker, a smart watch, etc., but is not limited thereto. The terminal and the server can be directly or indirectly connected through wired or wireless communication methods, and the present application does not make any restrictions here.

[0040] In one embodiment, as Figure 2 shown, a server layout method is provided. Taking the server in Figure 1 as an example, the method includes the following steps 202 to step 208.

[0041] Step 202, obtain the requirement parameters of the software project, and extract the server requirement parameters and the software project importance level parameters in the requirement parameters.

[0042] A software project refers to a software product that requires server support for data processing. The requirement parameters of a software project include server requirement parameters and software project importance level parameters. The server requirement parameters include the data information of each server that supports the operation of the software product for data processing. Specifically, the server requirement parameters can be a server list that records the information of each server in the form of a data list. The server list contains information such as the functions supported by each server and the model of the server.

[0043] In an embodiment, a software project can be a collection of one or more (≥2) software for implementing various functions in a certain field, such as the financial field, the medical field, etc. For example, a set of systems to be launched in the financial field includes multiple software for implementing various functions. The operation and data processing of each software in this system require the support of servers. Different servers are used to implement different functions, such as data storage, data calculation, etc. Therefore, one software may require multiple corresponding servers, and one server may also be used to implement the same function of multiple software.

[0044] The software project importance level parameter is used to determine the priority level during layout, and the priority level can be reflected through layout conditions and other means. In an embodiment, the software project importance level parameter can specifically be the high-availability conditions of each server required for the operation of the software project, such as achieving high availability when the servers cross switch groups, cross rack groups, cross racks, are in the same switch, or in the same rack.

[0045] Step 204: Determine the server identifier of the server to be laid out and the layout conditions of the server to be laid out according to the server requirement parameters and the software project importance level parameters.

[0046] Among them, different layout conditions correspond to different priorities, and the layout condition of the server to be laid out is one of multiple layout conditions with different priorities.

[0047] In an embodiment, the same software product can be divided into different modules according to functions, such as storage functions, calculation functions, etc. The same module can be further divided according to the different models of servers to be used. Finally, a software product is divided into several sub-modules. It should be noted that the concept of this sub-module is only used for server layout and does not have actual physical meaning.

[0048] For example, software product A is divided into sub-module a and sub-module b. Among them, sub-module a needs to be deployed to n servers of model x, and these n servers achieve high availability across switches. Sub-module b needs to be deployed to m servers of model y, and these m servers achieve high availability across racks.

[0049] Step 206: Generate a layout requirement corresponding to the software project according to the server identifier and the layout conditions.

[0050] The server data corresponding to the sub - modules divided according to software products, taking each sub - module as a unit, configures a corresponding layout requirement for each sub - module.

[0051] The server identifier in the layout requirement refers to the code that can uniquely identify the server in the server data, such as the unique fixed - asset number or serial number corresponding to the server. In the embodiment, the server identifier can be the logical name used to represent the server. The logical name is used to represent the logical device, which is a relative concept to the physical device. It is used to simulate the device layout in the layout planning stage. After the device is purchased, the logical device is made to correspond one - to - one with the physical device, and the layout planning result can be used as a reference for on - site implementation.

[0052] The layout condition is used to characterize the connection between each server in this layout requirement. In the embodiment, the layout condition includes one of cross - switch - group, cross - rack - group, cross - rack, same - switch, and same - rack. The layout condition in each layout requirement is the best layout condition determined based on the sub - module of the software project. Each best layout condition has a corresponding alternative layout condition.

[0053] For example, n servers in the a sub - module of software product A achieve high availability through cross - switches. Therefore, the best layout condition corresponding to the a sub - module is cross - switch - group, where the switch - group refers to one or two switches or two switches that are mutual primary - backup switches.

[0054] In other embodiments, the layout requirement may also include a layout order. The layout order can refer to the layout condition. For those with mandatory layout condition requirements, the layout order should be as high as possible. The layout order is represented by a number. The smaller the number, the earlier the layout. For example, the layout order of the layout requirement A_a corresponding to the a sub - module of software product A is 1, indicating that the layout order of requirement A_a is ranked first.

[0055] For example, software product A includes the layout requirement corresponding to the a sub - module and the layout requirement corresponding to the b sub - module. Then the layout requirements can be configured as:

[0056] [{"requirement":"A_a","model":"x","quantity":"n","layout priority":"cross - switch","logical name":[...]}

[0057] {"requirement":"A_b","model":"y","quantity":"m","layout priority":"cross - rack","logical name":[...]}]

[0058] The layout requirements are configured on a software project basis. Each software project corresponds to one or more layout requirements, and each layout requirement includes one or more server identifiers (i.e., logical names). By aggregating the server identifiers configured in the layout requirements of each software project and performing a deduplication process, a server identifier set can be obtained.

[0059] In the embodiment, different modules of different software products may be deployed to the same server. For example, the c module of software product B and the a module of software product A share the server kk. Then the layout requirements can be configured as:

[0060] [{"requirement": "A_a", "model": "x", "quantity": "n", "layout priority": "cross-switch", "logical name": [kk, ll, …]},

[0061] {"requirement": "A_b", "model": "y", "quantity": "m", "layout priority": "cross-rack", "logical name": […]}

[0062] {"requirement": "B_c", "model": "x", "quantity": "m", "layout priority": "cross-switch", "logical name": [kk, pp, …]}].

[0063] During the aggregation of software product A and software product B, since the c module of software product B and the a module of software product A share the server kk, the two logical names kk will only appear once in the aggregation result. Through the deduplication process, duplicate server layouts are avoided. In addition, the aggregation result also includes the total number of server identifiers corresponding to each software project.

[0064] Step 208: Based on the preset rack configuration data, perform a layout on the server identifiers to generate a server layout result that meets the layout requirements.

[0065] In the embodiment, the preset rack configuration data includes rack specification information and switch specification information. Among them, there is a specific ratio between the rack and the switch. The rack specification information may include rack height, rack power, etc., and the switch specification information may include the number of switch ports, etc. The ratio between the rack and the switch can be n:1, such as 1:1 or 2:1 or 3:1. The preset rack configuration data can be specifically updated according to actual needs.

[0066] According to the preset rack configuration data, the server capacity of each rack can be determined. Then, based on the ratio between the rack and the switch, the server capacity of each rack, and the total number of server identifiers, the minimum number of racks required for the server layout can be determined. Thus, based on the minimum number of racks required, the target number of racks in the layout process can be determined.

[0067] Based on the target number of racks and the total number of target servers, an automatic layout algorithm is called to trigger the layout of the servers to be laid out, and a server layout result is automatically generated. Specifically, the server layout result can be a layout cabinet diagram.

[0068] The above server layout method takes the requirement parameters of a software project as input data. Based on the server requirement parameters and software project importance level parameters in the requirement parameters, the servers to be laid out and their layout conditions are determined to generate layout requirements, and meeting the layout requirements is taken as the layout goal to achieve high availability of the software product in server deployment. At the same time, based on the preset rack configuration data, the server identifiers are laid out to generate a server layout result that meets the layout requirements, taking into account the maximization of resource utilization, so that the layout result achieves the effect of simultaneously taking into account the maximization of resource utilization and the high availability of the software product in server deployment.

[0069] In one embodiment, the number of layout requirements is multiple; the layout requirements further include a layout order, and the layout order is obtained based on the server requirement parameters and software project importance level parameters. As Figure 3 shown, based on the server requirement parameters and software project importance level parameters, the server identifiers of the servers to be laid out and the layout conditions of the servers to be laid out are determined, that is, step 204 includes step 302.

[0070] Step 302, based on the server requirement parameters and software project importance level parameters, determine the server identifiers of the servers to be laid out, the layout conditions of the servers to be laid out, and the layout order.

[0071] Based on the server identifiers and layout conditions, generate layout requirements corresponding to the software project, that is, step 206 includes step 304.

[0072] Step 304, based on the server identifiers, layout conditions, and layout order of the servers to be laid out, generate layout requirements corresponding to the software project.

[0073] Based on the preset rack configuration data, layout the server identifiers to generate a server layout result that meets the layout requirements, that is, step 208 includes steps 306 to 310.

[0074] Step 306, according to the layout order in each layout requirement, determine the target layout requirement and the target server identifier in the target layout requirement.

[0075] Step 308, based on the preset rack configuration data, layout the target server identifier to generate a target server layout result that meets the target layout requirement.

[0076] Step 310: Aggregate the server layout results corresponding to each layout requirement to obtain the server layout results corresponding to multiple layout requirements.

[0077] The layout order is determined based on the requirement parameters of the software project. The layout conditions can be referred to, and the layout order of the sub-modules with mandatory layout condition requirements should be as early as possible. The layout order is represented by numbers. The smaller the number, the earlier the layout. For example, for software product A, the layout order of layout requirement A_a corresponding to sub-module a is 1, indicating that the layout order of requirement A_a is the first.

[0078] For example, software product A includes the layout requirement corresponding to sub-module a and the layout requirement corresponding to sub-module b. Then the layout requirements can be configured as follows:

[0079] [{"Requirement": "A_a", "Model": "x", "Quantity": "n", "Layout Priority": "Cross-switch", "Layout Order": "1", "Logical Name": [...]}

[0080] {"Requirement": "A_b", "Model": "y", "Quantity": "m", "Layout Priority": "Cross-rack", "Layout Order": "2", "Logical Name": [...]}]

[0081] By configuring the layout order, the backward order of each layout requirement can be determined for layout, and the layout requirements of important software projects can be laid out first to achieve the effective utilization of resources.

[0082] In one embodiment, as Figure 4 shown, according to the preset rack configuration data, layout the target server identifiers to generate the target server layout results that meet the target layout requirements, that is, step 308 includes steps 402 to 406.

[0083] Step 402: According to the preset rack configuration data and the layout conditions in the target layout requirements, layout the target server identifiers to obtain the initial layout results corresponding to the target layout requirements.

[0084] Step 404: When there are server identifiers with layout failures in the target server identifiers in the initial layout results, determine the alternative layout conditions corresponding to the layout conditions according to the priority of the layout conditions.

[0085] Step 406: According to the preset rack configuration data and the alternative layout conditions, layout the server identifiers with layout failures to obtain the target server layout results corresponding to the target layout requirements.

[0086] The layout of the target server identifiers can be achieved by calling the automatic layout algorithm corresponding to the layout conditions. Among them, the automatic layout algorithms include:

[0087] A. Cross-switching unit priority layout algorithm: For each server in the same requirement, it is preferentially laid out on different racks under different access switching units, and the corresponding layout condition is: cross-switching;

[0088] B. Cross-rack group priority layout algorithm: The racks are grouped according to a certain principle. For each server in the same requirement, it is preferentially placed on different racks in different rack groups, and the corresponding layout condition is: cross-rack group;

[0089] C. Same-rack priority layout algorithm: For each server in the same requirement, it is preferentially and evenly placed on different racks, and the corresponding layout condition is: cross-rack;

[0090] D. Same-switching unit priority layout algorithm: For each server in the same requirement, it is preferentially placed on different racks under the same group of access switches, and the corresponding layout condition is: same-switch;

[0091] E. Same-rack priority layout algorithm: For each server in the same requirement, it is preferentially placed on the same rack, and the corresponding layout condition is: same-rack.

[0092] When, for a part of the servers to be laid out in a layout requirement, no suitable positions can be found using the layout algorithm corresponding to the layout condition in this requirement, this layout requirement is marked with a "does not meet the requirement" label, and some of the servers to be laid out need to be downgraded to use another layout algorithm for layout to ensure that all servers to be laid out can have corresponding positions. Downgraded layout means that when the servers in a layout requirement cannot be all laid out at once using the layout algorithm corresponding to this layout condition, the algorithm corresponding to other layout priorities is downgraded for use. For example, if the layout priority of a layout requirement is cross-switching, after the layout is initiated, there are not enough idle positions under different switching units for the servers in this requirement, and a complete cross-switching layout cannot be achieved, then the layout priority can be downgraded for layout to ensure that all servers in this layout requirement have positions. The corresponding relationship between the layout conditions and the layout algorithms is shown in Table 1.

[0093] Table 1: Relationship table between layout conditions and layout algorithms

[0094]

[0095]

[0096] In the embodiment, the layout conditions in each layout requirement are updated according to the priority, and it is implemented in the order of downgrading using the layout condition strategy. The specific downgrading strategy is shown in Table 2.

[0097] Table 2: Layout condition downgrading strategy

[0098] Layout conditions Lower one level Lower two levels Lower three levels A C D E B C D E C D E D E C E D C

[0099] It should be noted that since a plurality of racks corresponding to a switching unit form a rack group, and these multiple racks constitute a rack group, essentially, there is an overlap between cross-switch and cross-rack-group. Therefore, after the cross-switch and cross-rack-group are degraded by one level, they both correspond to cross-rack.

[0100] In one embodiment, as Figure 5 shown, according to the layout conditions in the preset rack configuration data and the target layout requirements, the target server identifiers are laid out to obtain the initial layout result corresponding to the target layout requirements, that is, step 402 includes steps 502 to 508.

[0101] Step 502, obtain the rack server capacity corresponding to the preset rack configuration data, and obtain the ratio of racks to switches from the preset rack configuration data.

[0102] Step 504, aggregate the server identifiers in multiple layout requirements to obtain the total amount of server identifiers.

[0103] Step 506, determine the target number of racks according to the ratio of racks to switches, the rack server capacity, and the total amount of server identifiers.

[0104] Step 508, according to the target number of racks and the layout conditions in the target layout requirements, lay out the target server identifiers to obtain the initial layout result corresponding to the target layout requirements.

[0105] First, the server determines the maximum number of servers Smax that each rack can accommodate according to the preset rack configuration data. By pushing the maximum number of servers that the rack can accommodate to the terminal, the user can, according to the maximum number of servers that the rack can accommodate in the push message, customize the maximum number of servers per rack Srack in this layout rule: 0 < Srack <= Smax, and send it to the server so that the server obtains the server capacity of each rack. It should be noted that in order to obtain a better highly available deployment layout when performing layout multiple times, Srack can be adjusted within the range of [0, Smax].

[0106] Then, the minimum number of racks Rmin required in the requirements of the target software project for the server can be used as the rack planning baseline Rmin for each layout. Assuming that the total number of servers to be laid out is Ssum, the calculation formula for Rmin is Rmin = roundup(Ssum / (Srack * Rnet)) * Rnet. Where Rnet refers to the ratio of racks to switches, and roundup refers to rounding up numbers. For example, roundup(3 / 4) = 4.

[0107] In one embodiment, determining the target number of racks according to the ratio of racks to switches, the capacity of rack servers, and the total amount of server identifiers includes: determining the minimum number of racks required for layout according to the ratio of racks to switches, the capacity of rack servers, and the total amount of server identifiers, and using the minimum number of racks required for server layout as the target number of racks. That is, using the rack planning baseline Rmin as the target number of racks for layout.

[0108] In another embodiment, determining the target number of racks according to the ratio of racks to switches, the capacity of rack servers, and the total amount of server identifiers includes: determining the minimum number of racks required for layout according to the ratio of racks to switches, the capacity of rack servers, and the total amount of server identifiers, and determining the target number of racks according to the ratio of racks to switches and the minimum number of racks required for server layout.

[0109] Specifically, the server can push the rack planning baseline Rmin to the terminal. The user can, according to the rack planning baseline Rmin in the push message, customize the number of racks Rreal. Rreal can be greater than or equal to the rack planning baseline and is an integer multiple of Rnet. Therefore, the customized number of racks can be: Rreal = Rmin + n * Rnet, where Rmin <= Rreal && mod(Rreal, Rnet), and mod refers to taking the modulus. For example, mod(x, y) determines whether x is an integer multiple of y. The terminal sends the customized number of racks to the server, and the server uses this as the target number of racks for layout.

[0110] Finally, the server layouts the target server identifiers according to the target number of racks and the layout conditions, and obtains the initial layout result corresponding to the target layout requirements. By automatically calculating the number of racks, it is possible to maximize the utilization of rack resources while meeting the actual needs.

[0111] In one embodiment, the preset rack configuration data includes rack height, rack power, the ratio of racks to switches, and the number of ports of the switch. Obtaining the rack server capacity corresponding to the preset rack configuration data includes: obtaining the first server capacity, the second server capacity, and the third server capacity of the rack. Among them, the first server capacity is calculated according to the number of ports of the switch and the ratio of racks to switches, the second server capacity is calculated according to the rack height and the server height in the server requirement parameters, and the third server capacity is calculated according to the rack power and the server power in the server requirement parameters; selecting the minimum value among the first server capacity, the second server capacity, and the third server capacity, and using the minimum value as the rack server capacity.

[0112] In an embodiment, the calculation method for the capacity of the first server: The number of servers that can be placed on each rack is calculated from the rack height and the server height. Assume the rack height is Height (unit: U), assume the height occupied by the access switch and cable management rack, etc. is 4U, and the height of each server is h (unit: U). Then the number of servers that can be placed on each rack: Sspace = rounddown((Height - 4) / h), where rounddown means rounding down the number. For example, rounddown(3 / 4) = 3.

[0113] The calculation method for the capacity of the second server: In general, in each software project within the same private cloud project, the same type of rack is used, and the power of each rack is the same. The actual power of the server is less than the theoretical value of the maximum power, generally 80% of the maximum power. Here, the average value of the maximum power is used as the power of the server power supply. The number of servers that can be placed on each rack is calculated from the power of the power supply. Assume the power of the rack power supply is Prack and the power of the server power supply is Pserver. Then the calculation for the number of servers that can be placed on each rack: Spower = rounddown(Prack / Pserver)

[0114] The calculation method for the capacity of the third server: The number of servers that can be placed on each rack is calculated from the number of switch ports and the number of racks corresponding to each group of access switches. Assume each group of access switches can provide Switchport ports, and the number of racks corresponding to each group of access switches is Rnet. For example, the upper limit of the ports for the access switch to connect to the servers can be 48 ports, and the value of the ratio Rnet of the rack to the switch can be 1, 2, or 3. The calculation for the number of servers that can be placed on each rack: Sport = rounddown(Switchport / Rnet).

[0115] Based on the results obtained from the three calculation methods, the maximum number of servers that can be placed on each rack: Smax = min(Sspace, Spower, Sport), where min means taking the minimum value.

[0116] In one embodiment, the data processing process for determining the number of racks is as Figure 6 shown. First, based on the power of the power supply, the switch ports, and the rack height respectively, calculate the maximum server data for each rack. Then, based on the maximum server data for each rack, plan the number of servers for each rack. Based on the total number of servers corresponding to the software project and the number of servers for each rack, calculate the rack planning base number, which is convenient for further customizing the number of racks based on this. Finally, initiate automatic layout multiple times and label the layout results for each requirement, and obtain the optimal number of racks through the evaluation of the layout results.

[0117] In one embodiment, as Figure 7 shown, the server layout method further includes steps 702 to 706.

[0118] Step 702, push the server layout result.

[0119] Step 704, in response to the rack configuration data update operation triggered based on the server layout result, obtain the updated rack configuration data.

[0120] Step 706, according to the updated rack configuration data, layout the server identifiers to obtain the latest server layout result that meets the layout requirements.

[0121] In an embodiment, when the same software project includes multiple layout requirements, or multiple projects include multiple layout requirements, multiple layouts can be initiated by updating the rack configuration data.

[0122] Specifically, when the server detects that the number of layout requirements for which all servers are successfully laid out in the server layout result is less than the preset quantity requirement, or the number of software projects for which all servers are successfully laid out is less than the preset quantity requirement, a rack configuration data update prompt message is pushed, so that the user triggers a rack configuration data update operation based on the rack configuration data update prompt message and the server layout result. It can also be that the user triggers a rack configuration data update operation based on personalized requirements in combination with the server layout result.

[0123] The rack configuration data update operation can specifically include adjusting the value of the ratio Rnet of the rack to the switch, and adjusting the number of racks, such as taking Rmin or Rreal (Rreal can take multiple values). When the value of Rnet is 1, 2, or 3 respectively, and the number of racks takes Rmin or Rreal respectively, different layout results can be obtained. Among multiple layout results, the one with the least number of racks has the maximum resource utilization. The number of racks that best meets the high-availability deployment of software products is the most reasonable number of racks. The user can select a suitable number of racks from multiple results according to the actual project requirements. Because each automatic layout is automatically executed and very fast, even if multiple layouts are executed to obtain the best result, it is still fast.

[0124] This application also provides a server layout system, and this system applies the above-mentioned server layout method.

[0125] As Figure 8As shown in the figure, the server layout system includes: a layout requirement management module, a rack planning module, a layout rule management module, a layout result generation module, a device management module, a layout result evaluation module, and a layout result output module. The server layout system can be used in the preliminary planning stage of software products and hardware devices in proprietary cloud projects. With an automated process and standardized methods, it can be quickly reused for different proprietary cloud projects. It is applicable to the preliminary layout planning stage of various proprietary cloud projects, public clouds, or data centers.

[0126] Among them, the layout requirement management module is used for generating layout requirements and can also respond to operations such as creating, modifying, deleting, importing, and exporting layout requirements by users.

[0127] The rack planning module is used to quickly plan the number of racks based on the device list of servers in the layout requirements, and then generate the corresponding number of logical racks and logical server devices. It can also generate logical switches based on the ratio of racks to switches in the layout rule module.

[0128] The layout rule management module is used to input and configure the configuration data of racks, servers, and switches. Specifically, it can include the ratio of racks to switches Rnet, the number of ports of the switch, the number of a group of switches (such as two switches that are mutually primary and standby as a group), the maximum number of servers that can be placed on each rack, the custom number of servers to be placed (optional), the number of logical switches corresponding to a group of racks, the height of the rack, the rack planning baseline, the custom number of racks (optional); the power of the rack power supply, the power of the server power supply, etc.

[0129] The layout result generation module is used to initiate a layout, call the device planning module, and based on the logical racks, logical server devices, layout rules, and high-availability layout requirements, call the automatic layout algorithm to trigger the logical device layout, automatically generate a layout cabinet diagram, and record whether each layout requirement meets the layout conditions.

[0130] The device management module is used to manage by dimensions such as manufacturer, device role, device model, device classification, and device. A server device belongs to a device model of a manufacturer, and the device classification is a server. This device has a logical device name and a physical device name. The logical device name is used in the planning stage. When there is a physical device, the logical device name and the physical device name can correspond one by one.

[0131] The layout result evaluation module is used to initiate automatic layout for layout requirements multiple times. In this module, the multiple layout results are compared. In each layout result, for the layout requirements that meet the layout conditions, a label of "meeting requirements" is marked, and conversely, a label of "not meeting requirements" is marked. Then, among the multiple layout results of the same layout requirement, the layout result with more "meeting requirements" labels is better.

[0132] The layout result output module is used to export the planning results, including the physical server table, the rack table, and the server layout cabinet diagram. Among them, the necessary factors of the rack table include, but are not limited to: layout rack name, server rack name, rack group, rack role, rack height, rack status, and number of devices. The necessary factors of the physical server table include, but are not limited to: logical name, physical name, logical rack, logical position, logical rack group, corresponding logical switch group, and device height.

[0133] In the server layout system, the user generates the high-availability layout requirements for the server according to the device list of the software product in the layout requirement management module; in the layout rule management module, the user can fine-tune the layout rules as the layout rules for this time; in the layout result generation module, an automatic layout is initiated. During the automatic layout process, the device planning module is called to plan the number of racks and the number of logical switches, and logical racks, logical switches, and logical servers are created. It should be noted that the logical rack is relative to the server rack and is used in the planning stage. Since there is no actual server rack in the planning stage, some racks can be assumed to exist for simulating the layout process, and these racks are called logical racks. After the racks are purchased and the logical racks are corresponded to the server racks one by one, the planning results can be used as a reference for on-site implementation. Similarly, the logical switch corresponds to the physical switch, and the logical server corresponds to the actual server. Then, the automatic layout algorithm is called to trigger the logical device layout and automatically generate the layout cabinet diagram. The user can fine-tune some data in the layout rule management module, initiate the layout multiple times, evaluate the multiple layout results in the layout result evaluation module to select the optimal result, and output the final layout planning results through the planning result output module.

[0134] The main flowchart of this system is as Figure 9As shown in the figure. Taking multiple software products as layout objects as an example, multiple layout requirements can be configured. Based on the pre-configured rack data, the number of racks, the number of servers, and the number of switches can be obtained, and then logical racks and logical servers can be generated. Sort the layout requirements according to the layout order, obtain each layout requirement, select the logical server device corresponding to this requirement, and based on the layout conditions of this layout requirement, call the automatic layout algorithm corresponding to the layout conditions to layout the logical server device. The racks and rack positions after layout are saved as the attributes of the logical server device. If the logical server devices in this layout requirement can be completely placed according to the algorithm corresponding to the layout priority, then record a "meets the requirement" label for this requirement. When the servers cannot be completely placed under the requirements of this layout priority, then record a "does not meet the requirement" label. When there are some logical servers in a requirement that cannot find suitable positions using the layout algorithm corresponding to the layout priority in this requirement, then record a "does not meet the requirement" label for this layout requirement. These logical servers need to be downgraded and another layout algorithm is used for layout to ensure that all logical servers can have corresponding positions. The user can fine-tune some data in the layout rules, initiate layout multiple times, evaluate the results of multiple layouts, and select the optimal result as the final layout result.

[0135] In one embodiment, as Figure 10 shown, a server layout method is provided, including the following steps:

[0136] Step 1002, obtain the requirement parameters of the software project, and extract the server requirement parameters and the software project importance level parameters from the requirement parameters.

[0137] Step 1004, according to the server requirement parameters and the software project importance level parameters, determine the server identifier of the server to be laid out, as well as the layout conditions and layout order of the server to be laid out.

[0138] Step 1006, according to the server identifier, layout conditions, and layout order of the server to be laid out, generate layout requirements corresponding to the software project.

[0139] Step 1008, according to the layout order in each layout requirement, determine the target layout requirement and the target server identifier in the target layout requirement.

[0140] Step 1010, obtain the rack height, rack power, ratio of rack to switch, and number of ports of the switch from the preset rack configuration data.

[0141] Step 1012, according to the number of ports of the switch and the ratio of rack to switch, obtain the first server capacity of the rack.

[0142] Step 1014: Obtain the second server capacity of the rack based on the rack height and the server height in the server data.

[0143] Step 1016: Obtain the third server capacity of the rack based on the rack power and the server power in the server data.

[0144] Step 1018: Take the minimum value among the first server capacity, the second server capacity, and the third server capacity as the rack server capacity.

[0145] Step 1020: Aggregate the server identifiers in the layout requirements to obtain the total number of server identifiers.

[0146] Step 1022: Determine the minimum number of racks required for the server layout based on the ratio of the rack to the switch, the rack server capacity, and the total number of server identifiers.

[0147] Step 1024: Determine the target number of racks based on the ratio of the rack to the switch and the minimum number of racks required for the server layout.

[0148] Step 1026: Layout the target server identifiers according to the target number of racks and the layout conditions to obtain the initial layout result corresponding to the target layout requirements.

[0149] Step 1028: When there are server identifiers with layout failures in the target server identifiers in the initial layout result, determine the alternative layout conditions corresponding to the layout conditions according to the priority of the layout conditions.

[0150] Step 1030: Layout the server identifiers with layout failures according to the preset rack configuration data and the alternative layout conditions to obtain the target server layout result corresponding to the target layout requirements.

[0151] Step 1032: Aggregate the server layout results corresponding to each layout requirement to obtain multiple server layout results corresponding to multiple layout requirements.

[0152] Step 1034: Push the server layout result.

[0153] Step 1036: Respond to the rack configuration data update operation triggered by the server layout result to obtain the updated rack configuration data.

[0154] Step 1038: Layout the server identifiers according to the updated rack configuration data to obtain the latest server layout result that meets the layout requirements.

[0155] It should be understood that although the steps in the above flowcharts are shown sequentially in the direction of the arrows, these steps are not necessarily executed sequentially in the order indicated by the arrows. Unless otherwise clearly stated in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. Moreover, at least a part of the steps in the above flowcharts may include multiple steps or multiple stages. These steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be executed alternately or in turn with at least a part of other steps or steps or stages in other steps.

[0156] In one embodiment, as Figure 11 shown, a server layout device 1100 is provided. This device can be a software module, a hardware module, or a combination of both to form a part of a computer device. Specifically, the device includes: a requirement parameter acquisition module 1102, a layout condition determination module 1104, a standard layout requirement generation module 1106, and a layout result generation module 1108, where:

[0157] The requirement parameter acquisition module 1102 is configured to acquire the requirement parameters of a software project and extract the server requirement parameters and the software project importance level parameters from the requirement parameters;

[0158] The layout condition determination module 1104 is configured to determine the server identifier of the server to be laid out and the layout conditions of the server to be laid out according to the server requirement parameters and the software project importance level parameters;

[0159] The layout requirement generation module 1106 is configured to generate layout requirements corresponding to the software project according to the server identifier and the layout conditions;

[0160] The layout result generation module 1108 is configured to layout the server identifier according to the preset rack configuration data and generate a server layout result that meets the layout requirements.

[0161] In one embodiment, the number of layout requirements is multiple; the layout requirements further include a layout order, which is obtained according to the server requirement parameters and the software project importance level parameters; the layout result generation module is further configured to determine a target layout requirement and the target server identifier in the target layout requirement according to the layout order in each layout requirement; layout the target server identifier according to the preset rack configuration data, generate a target server layout result that meets the target layout requirements; and collect the server layout results corresponding to each layout requirement to obtain a server layout result corresponding to multiple layout requirements.

[0162] In one embodiment, the layout result generation module is further configured to perform layout on the target server identifiers according to the preset rack configuration data and the layout conditions in the target layout requirements to obtain an initial layout result corresponding to the target layout requirements; when there are server identifiers with layout failures among the target server identifiers in the initial layout result, determine alternative layout conditions corresponding to the layout conditions according to the priorities of the layout conditions; and perform layout on the server identifiers with layout failures according to the preset rack configuration data and the alternative layout conditions to obtain a target server layout result corresponding to the target layout requirements.

[0163] In one embodiment, the layout result generation module is further configured to obtain the rack server capacity corresponding to the preset rack configuration data, and obtain the ratio of racks to switches from the preset rack configuration data; collect the server identifiers in multiple layout requirements to obtain the total number of server identifiers; determine the target number of racks according to the ratio of racks to switches, the rack server capacity, and the total number of server identifiers; and perform layout on the target server identifiers according to the target number of racks and the layout conditions in the target layout requirements to obtain an initial layout result corresponding to the target layout requirements.

[0164] In one embodiment, the layout result generation module is further configured to determine the minimum number of racks required for layout according to the ratio of racks to switches, the rack server capacity, and the total number of server identifiers; and determine the target number of racks according to the ratio of racks to switches and the minimum number of racks required for layout.

[0165] In one embodiment, the layout result generation module is further configured to determine the minimum number of racks required for layout according to the ratio of racks to switches, the rack server capacity, and the total number of server identifiers; and use the minimum number of racks required for layout as the target number of racks.

[0166] In one embodiment, the preset rack configuration data includes the rack height, rack power, the ratio of racks to switches, and the number of ports of the switch; the layout result generation module is further configured to obtain the first server capacity, the second server capacity, and the third server capacity of the rack, where the first server capacity is calculated according to the number of ports of the switch and the ratio of racks to switches, the second server capacity is calculated according to the rack height and the server height in the server requirement parameters, and the third server capacity is calculated according to the rack power and the server power in the server requirement parameters; select the minimum value among the first server capacity, the second server capacity, and the third server capacity, and use the minimum value as the rack server capacity.

[0167] In one embodiment, the server layout device further includes a rack configuration data update module, which is used to push the server layout result; respond to the rack configuration data update operation triggered based on the server layout result to obtain updated rack configuration data; according to the updated rack configuration data, by updating the layout conditions in the layout requirements, layout the server identifiers to obtain the latest server layout result that meets the layout requirements.

[0168] The above-mentioned server layout device takes the requirement parameters of a software project as input data, determines the servers to be laid out and their layout conditions based on the server requirement parameters and software project importance level parameters in the requirement parameters to generate layout requirements, and takes meeting the layout requirements as the layout goal to achieve high availability of the software product in server deployment. At the same time, based on the preset rack configuration data, layout the server identifiers to generate a server layout result that meets the layout requirements, taking into account the maximization of resource utilization, so that the layout result achieves the effect of simultaneously taking into account the maximization of resource utilization and the high availability of the software product in server deployment.

[0169] For the specific limitations of the server layout device, reference can be made to the limitations on the server layout method in the above text, which will not be elaborated here. Each module in the above-mentioned server layout device can be implemented in whole or in part by software, hardware and their combination. The above-mentioned modules can be embedded in the processor in the computer device in the form of hardware or be independent of it, or be stored in the memory in the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above-mentioned modules.

[0170] In one embodiment, a computer device is provided. The computer device can be a server, and its internal structure diagram can be as Figure 12 shown. The computer device includes a processor, a memory and a network interface connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store rack configuration data. The network interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, it implements a server layout method.

[0171] Those skilled in the art can understand that Figure 12 the structure shown in is only a block diagram of some structures related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine some components, or have different component arrangements.

[0172] In one embodiment, a computer device is further provided, including a memory and a processor. A computer program is stored in the memory, and when the processor executes the computer program, the steps in the above method embodiments are implemented.

[0173] In one embodiment, a computer-readable storage medium is provided, storing a computer program, and when the computer program is executed by a processor, the steps in the above method embodiments are implemented.

[0174] In one embodiment, a computer program product or a computer program is provided. The computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the steps in the above method embodiments.

[0175] Those of ordinary skill in the art can understand that all or part of the processes of implementing the methods in the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, storage, database, or other medium used in the various embodiments provided in the present application can include at least one of non-volatile and volatile memories. Non-volatile memory may include read-only memory (ROM), magnetic tape, floppy disk, flash memory, or optical memory, etc. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc.

[0176] The technical features of the above embodiments can be combined arbitrarily. For the sake of concise description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded in this specification.

[0177] The above embodiments merely represent several implementation manners of the present application. The description thereof is relatively specific and detailed, but it should not be construed as a limitation on the scope of the invention patent. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all fall within the protection scope of the present application. Therefore, the protection scope of the patent of the present application shall be subject to the appended claims.

Claims

1. A server layout method, characterized in that, The method includes: Obtaining the requirement parameters of a software project, and extracting the server requirement parameters and the software project importance level parameters from the requirement parameters; Determining the server identifier of the server to be laid out and the layout conditions of the server to be laid out according to the server requirement parameters and the software project importance level parameters; Generating a layout requirement corresponding to the software project according to the server identifier and the layout conditions; In the case where the number of the layout requirements is multiple, determining a target layout requirement and the target server identifier in the target layout requirement according to the layout order in each layout requirement; the layout order is obtained according to the server requirement parameters and the software project importance level parameters; Laying out the target server identifier according to the preset rack configuration data and the layout conditions in the target layout requirement to obtain an initial layout result corresponding to the target layout requirement; When there is a server identifier with a failed layout in the target server identifier in the initial layout result, determining an alternative layout condition corresponding to the layout condition according to the priority of the layout conditions; Collecting the server layout results corresponding to each layout requirement to obtain a server layout result corresponding to multiple layout requirements.

2. The method according to claim 1, wherein The laying out the target server identifier according to the preset rack configuration data and the layout conditions in the target layout requirement to obtain an initial layout result corresponding to the target layout requirement includes: Obtaining the rack server capacity corresponding to the preset rack configuration data, and obtaining the ratio of the rack to the switch from the preset rack configuration data; Collecting the server identifiers in multiple layout requirements to obtain the total amount of server identifiers; Determining the target rack number according to the ratio of the rack to the switch, the rack server capacity, and the total amount of server identifiers; Laying out the target server identifier according to the target rack number and the layout conditions in the target layout requirement to obtain an initial layout result corresponding to the target layout requirement.

3. The method according to claim 2, wherein The determining the target rack number according to the ratio of the rack to the switch, the rack server capacity, and the total amount of server identifiers includes: Determining the minimum number of racks required for the layout according to the ratio of the rack to the switch, the rack server capacity, and the total amount of server identifiers; Determining the target rack number according to the ratio of the rack to the switch and the minimum number of racks required for the layout.

4. The method according to claim 2, wherein The preset rack configuration data includes the rack height, the rack power, the ratio of the rack to the switch, and the number of ports of the switch; The obtaining the rack server capacity corresponding to the preset rack configuration data includes: Obtaining the first server capacity, the second server capacity, and the third server capacity of the rack, where the first server capacity is calculated according to the number of ports of the switch and the ratio of the rack to the switch, the second server capacity is calculated according to the rack height and the server height in the server requirement parameters, and the third server capacity is calculated according to the rack power and the server power in the server requirement parameters; Select the minimum value among the capacities of the first server, the second server, and the third server, and use the minimum value as the capacity of the rack server.

5. The method according to claim 1, characterized in that, The method further includes: Push the server layout result; Respond to the rack configuration data update operation triggered based on the server layout result to obtain updated rack configuration data; According to the updated rack configuration data, layout the server identifiers to obtain the latest server layout result that meets the layout requirements.

6. A server layout device, characterized in that The device includes: A requirement parameter acquisition module, configured to acquire the requirement parameters of a software project, and extract the server requirement parameters and the software project importance level parameters from the requirement parameters; A layout condition determination module, configured to determine the server identifiers of the servers to be laid out and the layout conditions of the servers to be laid out according to the server requirement parameters and the software project importance level parameters; A layout requirement generation module, configured to generate layout requirements corresponding to the software project according to the server identifiers and the layout conditions; A layout result generation module, configured to, when the number of the layout requirements is multiple, determine a target layout requirement and the target server identifiers in the target layout requirement according to the layout order in each of the layout requirements; the layout order is obtained according to the server requirement parameters and the software project importance level parameters; layout the target server identifiers according to the preset rack configuration data and the layout conditions in the target layout requirement to obtain an initial layout result corresponding to the target layout requirement; when there are server identifiers with layout failures among the target server identifiers in the initial layout result, determine alternative layout conditions corresponding to the layout conditions according to the priority of the layout conditions; collect the server layout results corresponding to each layout requirement to obtain a server layout result corresponding to multiple layout requirements.

7. The device according to claim 6, characterized in that, The layout result generation module is further configured to obtain the capacity of the rack server corresponding to the preset rack configuration data, and obtain the ratio of the rack to the switch from the preset rack configuration data; collect the server identifiers in multiple layout requirements to obtain the total number of server identifiers; determine the target number of racks according to the ratio of the rack to the switch, the capacity of the rack server, and the total number of server identifiers; layout the target server identifiers according to the target number of racks and the layout conditions in the target layout requirement to obtain an initial layout result corresponding to the target layout requirement.

8. The device according to claim 7, characterized in that, The layout result generation module is further configured to determine the minimum number of racks required for the layout according to the ratio of the rack to the switch, the capacity of the rack server, and the total number of server identifiers; determine the target number of racks according to the ratio of the rack to the switch and the minimum number of racks required for the layout.

9. The device according to claim 7, characterized in that, The preset rack configuration data includes rack height, rack power, the ratio of the rack to the switch, and the number of ports of the switch; the layout result generation module is further configured to: obtain the first server capacity, the second server capacity, and the third server capacity of the rack, wherein the first server capacity is calculated according to the number of ports of the switch and the ratio of the rack to the switch, the second server capacity is calculated according to the rack height and the server height in the server requirement parameters, and the third server capacity is calculated according to the rack power and the server power in the server requirement parameters; select the minimum value among the first server capacity, the second server capacity, and the third server capacity, and use the minimum value as the rack server capacity.

10. The device according to claim 6, characterized in that, The server layout device further includes a rack configuration data update module, configured to push the server layout result; respond to a rack configuration data update operation triggered based on the server layout result to obtain updated rack configuration data; and perform layout on the server identifiers according to the updated rack configuration data to obtain a latest server layout result that meets the layout requirements.

11. A computer device, comprising a memory and a processor, the memory storing a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 5.

12. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Data center and data center design

    CN102204213A