CN107172208B - Server deployment method and system - Google Patents

Server deployment method and system Download PDF

Info

Publication number
CN107172208B
CN107172208B CN201710530803.1A CN201710530803A CN107172208B CN 107172208 B CN107172208 B CN 107172208B CN 201710530803 A CN201710530803 A CN 201710530803A CN 107172208 B CN107172208 B CN 107172208B
Authority
CN
China
Prior art keywords
server
cloud computing
management platform
computing management
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.)
Active
Application number
CN201710530803.1A
Other languages
Chinese (zh)
Other versions
CN107172208A (en
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.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing 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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201710530803.1A priority Critical patent/CN107172208B/en
Publication of CN107172208A publication Critical patent/CN107172208A/en
Application granted granted Critical
Publication of CN107172208B publication Critical patent/CN107172208B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

The present disclosure provides a server deployment method, applied to a cloud computing management platform, including: collecting hardware information of a target server through a deployment server, wherein the target server is used for being deployed into a cloud computing management platform to provide corresponding services; acquiring server deployment rules stored in deployment servers, wherein the server deployment rules are used for stipulating rules followed when the servers are deployed in the cloud computing management platform; and determining the service provided by the target server in the cloud computing management platform according to the collected hardware information and the acquired deployment rule. The disclosure also provides a deployment system of the server.

Description

Server deployment method and system
Technical Field
The disclosure relates to a server deployment method and a system thereof.
Background
OpenStack is an open source cloud computing management platform project. Currently, in the related art, the deployment method of OpenStack is mainly that a user manually selects a configuration option to deploy a specified server. In the process of implementing the embodiments of the present disclosure, the inventors found that the related art has at least the following drawbacks: the OpenStack is deployed manually, the requirement on hardware knowledge storage of a user is high, the user needs to know the hardware performance of the server, and otherwise, a good choice is difficult to make.
Disclosure of Invention
One aspect of the present disclosure provides a server deployment method applied to a cloud computing management platform, including: collecting hardware information of a target server through a deployment server, wherein the target server is used for being deployed into the cloud computing management platform to provide corresponding services; acquiring a server deployment rule stored in the deployment server, wherein the server deployment rule is used for stipulating a rule followed when each server is deployed in the cloud computing management platform; and determining the service provided by the target server in the cloud computing management platform according to the collected hardware information and the acquired server deployment rule.
Optionally, after determining the service provided by the target server in the cloud computing management platform, the method further includes: detecting whether a request is added to a newly added server in the cloud computing management platform; if a request for adding a new server to the cloud computing management platform is detected, acquiring a user instruction for indicating a service to be provided by the new server in the cloud computing management platform; and determining the service provided by the newly added server in the cloud computing management platform according to the instruction of the user instruction.
Optionally, before obtaining the user instruction for instructing the newly-added server to provide the service in the cloud computing management platform, the method further includes: detecting whether the user instruction is received; if not, acquiring the hardware information of the newly added server; and determining the service provided by the newly added server in the cloud computing management platform according to the acquired hardware information of the newly added server and the server deployment rule.
Optionally, while determining the service provided by the newly added server in the cloud computing management platform, the method further includes: and re-determining the service provided by the target server in the cloud computing management platform according to the acquired hardware information of the target server and the server deployment rule.
Optionally, after determining the service provided by the target server in the cloud computing management platform, the method further includes: detecting whether a user instruction is received to indicate that the target server is deleted from the cloud computing management platform; and if detecting that a user instruction is received to instruct to delete the target server from the cloud computing management platform, deleting the target server from the cloud computing management platform according to the instruction of the received user instruction.
Optionally, the cloud computing management platform is deployed with other servers besides the target server, and after the target server is deleted from the cloud computing management platform, the method further includes: and re-determining the services provided by the other servers in the cloud computing management platform.
Optionally, after determining the service provided by the target server in the cloud computing management platform, the method further includes: and pushing the starting image of the operating system installed by the target server to the target server.
Another aspect of the present disclosure provides a server deployment system applied to a cloud computing management platform, including: the system comprises a collecting module, a service module and a service module, wherein the collecting module is used for collecting hardware information of a target server through a deployment server, and the target server is used for being deployed in the cloud computing management platform to provide corresponding services; a first obtaining module, configured to obtain a server deployment rule stored in the deployment server, where the server deployment rule is used to specify a rule followed by deploying each server in the cloud computing management platform; and the first determining module is used for determining the service provided by the target server in the cloud computing management platform according to the collected hardware information and the acquired server deployment rule.
Optionally, the system further includes: the first detection module is used for detecting whether a request is made to add a new server in the cloud computing management platform after determining the service provided by the target server in the cloud computing management platform; a second obtaining module, configured to, in a case that a request is made to add to the newly added server in the cloud computing management platform, obtain a user instruction for instructing a service to be provided by the newly added server in the cloud computing management platform; and a second determining module, configured to determine, according to an instruction of the user instruction, a node role that the newly added server serves in the cloud computing management platform.
Optionally, the system further includes: a second detection module, configured to detect whether a user instruction is received before acquiring the user instruction for instructing the newly-added server to provide a service in the cloud computing management platform; a third obtaining module, configured to obtain hardware information of the newly added server when the user instruction is not received; and a third determining module, configured to determine, according to the acquired hardware information of the newly added server and the server deployment rule, a service provided by the newly added server in the cloud computing management platform.
Another aspect of the disclosure provides a non-volatile storage medium storing computer-executable instructions that, when executed, implement a method of deploying a server as recited in any of the above.
Another aspect of the disclosure provides a computer program comprising computer executable instructions for implementing a method of deploying a server as claimed in any one of the preceding claims when executed.
Drawings
For a more complete understanding of the present disclosure and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:
FIG. 1A schematically illustrates a conventional application scenario for deploying a server;
fig. 1B schematically illustrates an application scenario of a deployment method and system of an applicable server according to an embodiment of the present disclosure;
FIG. 2 schematically shows a flow chart of a method of deployment of a server according to an embodiment of the present disclosure;
FIG. 3A schematically illustrates a flow diagram of a method of deployment of a server according to another embodiment of the disclosure;
FIG. 3B schematically illustrates a flow chart of a method of deployment of a server according to another embodiment of the disclosure;
FIG. 3C schematically illustrates a flow diagram of a method of deployment of a server according to another embodiment of the disclosure;
FIG. 3D schematically illustrates a flow diagram of a method of deployment of a server according to another embodiment of the disclosure;
FIG. 4 schematically illustrates a block diagram of a deployment system of servers in accordance with an embodiment of the present disclosure;
FIG. 5A schematically illustrates a block diagram of a deployment system of a server according to another embodiment of the present disclosure;
FIG. 5B schematically illustrates a block diagram of a deployment system of a server according to another embodiment of the present disclosure; and
FIG. 6 schematically shows a block diagram of a deployment server according to an embodiment of the disclosure.
Detailed Description
Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. It should be understood that the description is illustrative only and is not intended to limit the scope of the present disclosure. Moreover, in the following description, descriptions of well-known structures and techniques are omitted so as to not unnecessarily obscure the concepts of the present disclosure.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. The words "a", "an" and "the" and the like as used herein are also intended to include the meanings of "a plurality" and "the" unless the context clearly dictates otherwise. Furthermore, the terms "comprises," "comprising," and the like, as used herein, specify the presence of stated features, steps, operations, and/or components, but do not preclude the presence or addition of one or more other features, steps, operations, or components.
All terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. It is noted that the terms used herein should be interpreted as having a meaning that is consistent with the context of this specification and should not be interpreted in an idealized or overly formal sense.
Some block diagrams and/or flow diagrams are shown in the figures. It will be understood that some blocks of the block diagrams and/or flowchart illustrations, or combinations thereof, 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, or other programmable data processing apparatus, such that the instructions, which execute via the processor, create means for implementing the functions/acts specified in the block diagrams and/or flowchart block or blocks.
Accordingly, the techniques of this disclosure may be implemented in hardware and/or software (including firmware, microcode, etc.). In addition, the techniques of this disclosure may take the form of a computer program product on a computer-readable medium having instructions stored thereon for use by or in connection with an instruction execution system. In the context of this disclosure, a computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the instructions. For example, the computer readable medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. Specific examples of the computer readable medium include: magnetic storage devices, such as magnetic tape or Hard Disk Drives (HDDs); optical storage devices, such as compact disks (CD-ROMs); a memory, such as a Random Access Memory (RAM) or a flash memory; and/or wired/wireless communication links.
The embodiment of the disclosure provides a server deployment method and a system thereof. The deployment method of the server is applied to a cloud computing management platform and comprises the steps of collecting hardware information of a target server through a deployment server, wherein the target server is used for being deployed into the cloud computing management platform to provide corresponding services, obtaining server deployment rules stored in the deployment server, wherein the server deployment rules are used for stipulating rules to be followed when each server is deployed in the cloud computing management platform, and determining the services provided by the target server in the cloud computing management platform according to the collected hardware information and the obtained deployment rules.
Fig. 1A schematically illustrates a conventional application scenario for deploying a server, which is a typical application scenario for deploying OpenStack, as illustrated in fig. 1A. In this scenario, there are 6 servers, and the deployment requirements are as follows: and 1 station is used as a control node, 2 stations are used as a calculation node, and 3 stations are used as a storage node. Before OpenStack deployment, all servers need to be connected to the management network. Generally, such networks use a specialized server Management protocol like Intelligent Platform Management Interface (IPMI). In the application scenario, since a deployment server (a server dedicated to deploy other servers) is not provided, when the OpenStack cloud service is deployed, a user is required to manually configure a node role of each server (that is, a service provided by each server in a network), and at this time, if the user does not know about hardware performance of each server, it is difficult to make a best selection. In addition, under the cloud environment, corresponding hardware indexes are checked according to different node roles. For example, for the server a, the read-write speed of the disk is high, and the processing speed of the CPU is also high, so that the server is suitable for being used as a storage node, because the storage node has a high requirement on the read-write capability of the disk, and the requirement on the processing speed of the CPU is not high. For another example, for the server B, the read-write speed of the disk is slow, but the memory is large, the processing speed of the CPU is fast, and the bandwidth of the network card is high, so that the server is suitable for being used as a network node to provide network services.
Fig. 1B schematically illustrates an application scenario of the deployment method and system of the applicable server according to the embodiment of the present disclosure, as shown in fig. 1B, in this scenario, there are 6 servers, and the deployment requirements are as follows: and 1 station is used as a control node, 2 stations are used as a calculation node, and 3 stations are used as a storage node. In this application scenario, one or more deployment servers (one is illustrated in the figure) are provided, so that when the OpenStack cloud service is deployed, a user does not need to manually configure the node roles of the servers, and the deployment servers can automatically collect the hardware performance indexes/parameters of the servers and determine the node roles of the servers by using a specific algorithm based on the collected related information. Therefore, even if the user does not know the hardware performance index/parameter of each server, the deployment of OpenStack is not hindered. For example, for the server a, the read-write speed of the disk is high, and the processing speed of the CPU is also high, so that the server is suitable for being used as a storage node, because the storage node has a high requirement on the read-write capability of the disk, and the requirement on the processing speed of the CPU is not high, at this time, the deployment server will automatically deploy the storage node as the storage node according to the hardware performance of the deployment server. For another example, for the server B, the read-write speed of the disk is slow, but the memory is large, the processing speed of the CPU is fast, and the bandwidth of the network card is high, so that the server is suitable for being used as a network node to provide network services, and the deployment server can automatically deploy the server into the network node according to the hardware performance of the server.
Fig. 2 schematically shows a flow chart of a deployment method of a server according to an embodiment of the present disclosure.
As shown in fig. 2, the method includes operations S201 to S203, in which:
in operation S201, hardware information of a target server is collected by a deployment server. The target server is used for being deployed into the cloud computing management platform to provide corresponding services.
In operation S202, a server deployment rule stored in the deployment server is obtained. The server deployment rules are used for stipulating rules to be followed when each server is deployed in the cloud computing management platform.
Operation S203 determines, according to the collected hardware information and the obtained server deployment rule, a service provided by the target server in the cloud computing management platform.
In this embodiment of the present disclosure, in implementation, one or more deployment servers (for deploying each server into OpenStack to provide corresponding services, such as storage services, computing services, network services, control services, and the like) may be added to a management network (e.g., a server management network using IPMI protocol).
The deployment server or the deployment servers may be configured to store hardware information of a relevant server to deploy the OpenStack service, where the hardware information specifically may include, but is not limited to: the type and processing speed of the CPU, the type (e.g., SSD or HDD) and read/write speed of the disk, the type and throughput of the network card, and so on. For these information, the deployment server may dynamically obtain the information from the corresponding server through a management protocol such as IPMI. And as the number of servers in the OpenStack service increases or decreases, the information maintained on the deployment server is dynamically updated.
Since the deployment server or the deployment servers are also used for storing deployment rules for deploying the OpenStack service, the deployment rules include, but are not limited to, allocation proportions of roles of nodes, such as allocation proportions of compute nodes, control nodes, storage nodes, and the like. Thus, the server deployment rules may be obtained directly from the deployment server.
After the hardware information and the server deployment rules of each server are obtained, the node roles of each server in the OpenStack service, namely the service provided in the cloud computing management platform, can be calculated through a preset matching algorithm, so that the purpose of automatically determining the node roles of each server when the OpenStack service is deployed is achieved.
According to the method and the device for deploying the server, the deployment server automatically collects and stores the server deployment rules and the hardware information of each server, so that the service provided by the target server in the cloud computing management platform can be automatically determined according to the collected hardware information and the obtained deployment rules, the defects that the OpenStack service is manually deployed in the related technology, the requirement on hardware knowledge storage of a user is high, the user needs to know the hardware performance of the server, and better selection is easily made.
The method shown in fig. 2 is further described with reference to fig. 3A-3D in conjunction with specific embodiments.
According to an embodiment of the disclosure, after determining the service provided by the target server in the cloud computing management platform, the method may further include detecting whether there is a new server requested to be added to the cloud computing management platform, if it is detected that there is a new server requested to be added to the cloud computing management platform, acquiring a user instruction for instructing the new server to provide the service in the cloud computing management platform, and determining the service provided by the new server in the cloud computing management platform according to the instruction of the user instruction.
Fig. 3A schematically shows a flow chart of a deployment method of a server according to another embodiment of the present disclosure. In this embodiment, operations S301 to S303 are included in addition to operations S201 to S203 described above with reference to fig. 2. The description of operations S201 to S203 is omitted here for the sake of brevity of description.
As shown in fig. 3A, after determining the service provided by the target server in the cloud computing management platform, the method may further include operations S301 to S303, where:
in operation S301, it is detected whether there is a new server that is requested to be added to the cloud computing management platform.
In operation S302, if it is detected that a new server requesting to be added to the cloud computing management platform is detected, a user instruction for indicating a service to be provided by the new server in the cloud computing management platform is obtained.
Operation S303, determining, according to the instruction of the user instruction, a service provided by the new server in the cloud computing management platform.
In the embodiment of the present disclosure, in addition to automatically deploying the server, in order to meet the personalized requirements of the user, the user may send a request according to actual needs to instruct the deployment server to configure the newly added server in the network to a designated node role, for example, for the server a, the user may directly designate to set it as the storage node.
Through the embodiment of the disclosure, the servers can be automatically deployed according to the preset matching algorithm and can also be deployed according to the user instruction, so that the server deployment scheme is more flexible, and the personalized requirements of the user can be better met.
According to an embodiment of the disclosure, before obtaining the user instruction for indicating the service to be provided by the newly added server in the cloud computing management platform, the method may further include detecting whether the user instruction is received, if the user instruction is not received, obtaining hardware information of the newly added server, and determining the service provided by the newly added server in the cloud computing management platform according to the obtained hardware information of the newly added server and the server deployment rule.
Fig. 3B schematically shows a flow chart of a deployment method of a server according to another embodiment of the present disclosure. In this embodiment, operations S304 to S306 may be included in addition to the corresponding operations described above with reference to fig. 2 and 3A. For the sake of simplicity of description, descriptions of corresponding operations described in fig. 2 and 3A are omitted here.
As shown in fig. 3B, after determining the service provided by the target server in the cloud computing management platform, the method may further include operations S304 to S306, wherein:
in operation S304, it is detected whether a user instruction is received.
In operation S305, if not, the hardware information of the newly added server is obtained.
Operation S306 is to determine, according to the acquired hardware information of the newly added server and the server deployment rule, a service provided by the newly added server in the cloud computing management platform.
In the embodiment of the present disclosure, for a cloud computing management platform, after a part of servers are deployed according to hardware information and a server deployment rule, if a new server requests to join the cloud computing management platform, it needs to detect whether a user instruction is received to determine whether a user designates a node role of the server. Specifically, if a user instruction is received, configuring according to the instruction of the user; otherwise, if the new server is not received, the new server is configured according to an automatic matching algorithm, namely, the hardware information of the new server is obtained, and the service provided by the new server in the cloud computing management platform is determined according to the obtained hardware information of the new server and the server deployment rule.
According to the embodiment of the disclosure, for a cloud computing management platform, the servers newly added to the cloud computing management platform can be configured in at least two ways. One is that the user designates the node role, and the other is that the node role is calculated according to an automatic matching algorithm, so that the deployment mode of the server is more diversified.
According to an embodiment of the disclosure, while determining the service provided by the newly added server in the cloud computing management platform, the method may further include: and re-determining the service provided by the target server in the cloud computing management platform according to the acquired hardware information of the target server and the server deployment rule.
Since the server deployment rules generally specify the allocation of node roles, in this case, for a cloud computing management platform that has already been deployed, if one or more new servers need to be configured, it is preferable that, for other servers, the one or more new servers may be reconfigured based on the hardware information of the servers and the server deployment rules.
By the embodiment of the disclosure, the node roles of the servers in the cloud computing management platform can be dynamically adjusted according to the increase of the servers in the cloud computing management platform, so that the purpose of optimizing the structure of the cloud computing management platform is achieved.
According to an embodiment of the present disclosure, after determining the service provided by the target server in the cloud computing management platform, the method may further include detecting whether a user instruction is received to instruct deletion of the target server from the cloud computing management platform, and if it is detected that the user instruction is received to instruct deletion of the target server from the cloud computing management platform, deleting the target server from the cloud computing management platform according to the instruction of the received user instruction.
Fig. 3C schematically shows a flow chart of a deployment method of a server according to another embodiment of the present disclosure. In this embodiment, operations S307 and S308 are included in addition to operations S201 to S203 described above with reference to fig. 2. The description of operations S307 to S308 is omitted here for the sake of brevity of description.
As shown in fig. 3C, after determining the service provided by the target server in the cloud computing management platform, the method may further include operations S307 and S308. Wherein:
in operation S307, it is detected whether a user instruction is received to instruct deletion of the target server from the cloud computing management platform.
In operation S308, if it is detected that the user instruction is received, the target server is deleted from the cloud computing management platform according to the instruction of the received user instruction.
That is, for a cloud computing management platform that has already been deployed, servers may be added or existing servers may be deleted.
In the embodiment of the disclosure, the server designated by the user may be deleted from the cloud computing management platform according to the instruction of the user. Through the embodiment of the disclosure, for a cloud computing management platform, similar to the newly added servers, one or more servers can be deleted, so as to achieve the purpose of dynamically adjusting the structure of the cloud computing management platform, and the server deployment scheme is more flexible, so that the personalized requirements of users can be better met.
According to an embodiment of the present disclosure, the cloud computing management platform is deployed with other servers in addition to the target server, and after the target server is deleted from the cloud computing management platform, the method may further include: and re-determining the services provided by other servers in the cloud computing management platform.
That is, for a cloud computing management platform that has already been deployed, servers may be added or existing servers may be deleted. Further, since the server deployment rules generally specify the allocation of node roles, in this case, for an already deployed cloud computing management platform, after deleting one or more servers, preferably, for other servers, the servers may be reconfigured based on the hardware information of the servers and the server deployment rules.
By the embodiment of the disclosure, the node roles of the servers in the cloud computing management platform can be dynamically adjusted according to the reduction of the servers in the cloud computing management platform, so that the purpose of optimizing the structure of the cloud computing management platform is achieved.
According to an embodiment of the present disclosure, after determining the service provided by the target server in the cloud computing management platform, the method may further include: and pushing the starting image of the operating system installed by the target server to the target server.
Fig. 3D schematically shows a flow chart of a method of deployment of a server according to another embodiment of the present disclosure. In this embodiment, operation S309 is included in addition to operations S201 to S203 described above with reference to fig. 2. The description of operations S201 to S203 is omitted here for the sake of brevity of description.
As shown in fig. 3D, after determining the service provided by the target server in the cloud computing management platform, the method may further include operation S309, wherein:
in operation S309, a boot image of the operating system installed by the target server is pushed to the target server.
It should be noted that, by adding a deployment server in the management network, the deployment server may dynamically collect hardware information of each server, and at the same time, some deployment rules (i.e., server deployment rules) for deploying OpenStack are also stored in the deployment server.
When OpenStack deployment is started, a node automatic selection algorithm (i.e., a preset node matching algorithm) may automatically set a server role based on the above two types of information (i.e., hardware information and server deployment rules).
The server deployment rules may include a variety of rules, and are not limited herein. For example:
(1) and selecting a server with the highest disk reading and writing speed as a storage node of the OpenStack.
(2) And selecting a server with large memory, high network card throughput rate and high CPU processing speed as a network node of the OpenStack.
(3) And selecting the server with the fastest CPU processing speed, the greatest memory and the fastest disk reading and writing speed as a control node, and if the server is in the HA environment, selecting the server as a main control node.
(4) The number of control nodes, storage nodes and network nodes in the OpenStack is automatically adjusted according to the number of servers, for example, in an HA mode, the number of required control nodes is an odd number such as 3, 5 and 7, and the storage nodes usually store more than 3 data backups, so at least more than 3 storage nodes are required.
In the embodiment of the present disclosure, after the node role is selected, the deployment server may push the boot image of the operating system installed in the target server to the target server, and the target server may boot from the boot image of the operating system, so as to enter a management network (management network for short) of OpenStack.
By the aid of the method and the device, node roles are automatically selected in the OpenStack environment, a user does not need to manually specify the node roles of the server in the whole deployment process, requirements on hardware knowledge storage of OpenStack operators are lowered, and the method and the device can be suitable for automatic deployment scenarios.
Fig. 4 schematically shows a block diagram of a deployment system of a server according to an embodiment of the present disclosure.
As shown in fig. 4, the server deployment system 400 is applied to a cloud computing management platform, and the server deployment system 400 includes a collection module 410, a first obtaining module 420, and a first determining module 430. The deployment system 400 of the server may perform the methods described above with reference to fig. 2-3D. Wherein:
the collecting module 410 is configured to collect, by the deployment server, hardware information of a target server, where the target server is configured to be deployed into the cloud computing management platform to provide a corresponding service.
The first obtaining module 420 is configured to obtain a server deployment rule stored in the deployment server, where the server deployment rule is used to specify a rule to be followed for deploying each server in the cloud computing management platform.
The first determining module 430 is configured to determine, according to the collected hardware information and the acquired deployment rule, a service provided by the target server in the cloud computing management platform.
In this embodiment of the present disclosure, in implementation, one or more deployment servers (for deploying each server into OpenStack to provide corresponding services, such as storage services, computing services, network services, control services, and the like) may be added to a management network (e.g., a server management network using IPMI protocol).
The deployment server or the deployment servers may be configured to store hardware information of a relevant server to deploy the OpenStack service, where the hardware information specifically may include, but is not limited to: the type and processing speed of the CPU, the type (e.g., SSD or HDD) and read/write speed of the disk, the type and throughput of the network card, and so on. For these information, the deployment server may dynamically obtain the information from the corresponding server through a management protocol such as IPMI. And as the number of servers in the OpenStack service increases or decreases, the information maintained on the deployment server is dynamically updated.
Since the deployment server or the deployment servers are also used for storing deployment rules for deploying the OpenStack service, the deployment rules include, but are not limited to, allocation proportions of roles of nodes, such as allocation proportions of compute nodes, control nodes, storage nodes, and the like. Thus, the server deployment rules may be obtained directly from the deployment server.
After the hardware information and the server deployment rules of each server are obtained, the node roles of each server in the OpenStack service, namely the service provided in the cloud computing management platform, can be calculated through a preset matching algorithm, so that the purpose of automatically determining the node roles of each server when the OpenStack service is deployed is achieved.
According to the method and the device for deploying the server, the deployment server automatically collects and stores the server deployment rules and the hardware information of each server, so that the service provided by the target server in the cloud computing management platform can be automatically determined according to the collected hardware information and the obtained deployment rules, the defects that the OpenStack service is manually deployed in the related technology, the requirement on hardware knowledge storage of a user is high, the user needs to know the hardware performance of the server, and better selection is easily made.
Fig. 5A schematically illustrates a block diagram of a deployment system of a server according to another embodiment of the present disclosure. In this embodiment, in addition to the modules described above with reference to fig. 4, a first detection module 440, a second acquisition module 450, and a second determination module 460 may be included. For the sake of brevity of description, a description of the modules described with reference to fig. 4 is omitted here.
As shown in fig. 5A, the deployment system 400 of the server may further include a first detection module 440, a second acquisition module 450, and a second determination module 460 according to an embodiment of the present disclosure.
The first detection module 440 is configured to detect whether there is a request to add a new server to the cloud computing management platform after determining the service provided by the target server in the cloud computing management platform.
The second obtaining module 450 is configured to, in a case that a request is made to add to a newly added server in the cloud computing management platform, obtain a user instruction for indicating a service that the newly added server will provide in the cloud computing management platform.
The second determining module 460 is configured to determine, according to an instruction of the user instruction, a node role that the newly added server serves in the cloud computing management platform.
In the embodiment of the present disclosure, in addition to automatically deploying the server, in order to meet the personalized requirements of the user, the user may send a request according to actual needs to instruct the deployment server to configure the newly added server in the network to a designated node role, for example, for the server a, the user may directly designate to set it as the storage node.
Through the embodiment of the disclosure, the servers can be automatically deployed according to the preset matching algorithm and can also be deployed according to the user instruction, so that the server deployment scheme is more flexible, and the personalized requirements of the user can be better met.
Fig. 5B schematically illustrates a block diagram of a deployment system of a server according to another embodiment of the present disclosure. In this embodiment, in addition to the modules described above with reference to fig. 4 and 5A, a second detection module 470, a third acquisition module 480, and a third determination module 490 are included. For the sake of simplicity of description, descriptions of the modules described with reference to fig. 4 and 5A are omitted herein.
As shown in fig. 5B, the deployment system 400 of the server further includes a second detection module 470, a third acquisition module 480, and a third determination module 490 according to the embodiment of the present disclosure.
The second detecting module 470 is configured to detect whether a user instruction is received before acquiring the user instruction for instructing a service to be provided by the newly added server in the cloud computing management platform.
The third obtaining module 480 is configured to obtain the hardware information of the newly added server when the user instruction is not received.
The third determining module 490 is configured to determine, according to the acquired hardware information of the newly added server and the server deployment rule, a service provided by the newly added server in the cloud computing management platform.
In the embodiment of the present disclosure, for a cloud computing management platform, after a part of servers are deployed according to hardware information and a server deployment rule, if a new server requests to join the cloud computing management platform, it needs to detect whether a user instruction is received to determine whether a user designates a node role of the server. Specifically, if a user instruction is received, configuring according to the instruction of the user; otherwise, if the new server is not received, the new server is configured according to an automatic matching algorithm, namely, the hardware information of the new server is obtained, and the service provided by the new server in the cloud computing management platform is determined according to the obtained hardware information of the new server and the server deployment rule.
According to the embodiment of the disclosure, for a cloud computing management platform, the servers newly added to the cloud computing management platform can be configured in at least two ways. One is that the user designates the node role, and the other is that the node role is calculated according to an automatic matching algorithm, so that the deployment mode of the server is more diversified.
It is understood that the modules may be combined into one module, or any one of the modules may be split into a plurality of modules. Alternatively, at least part of the functionality of one or more of these modules may be combined with at least part of the functionality of the other modules and implemented in one module. According to an embodiment of the present invention, at least one of the above modules may be implemented at least partially as a hardware circuit, such as a Field Programmable Gate Array (FPGA), a Programmable Logic Array (PLA), a system on a chip, a system on a substrate, a system on a package, an Application Specific Integrated Circuit (ASIC), or may be implemented in hardware or firmware in any other reasonable manner of integrating or packaging a circuit, or in a suitable combination of three implementations of software, hardware, and firmware. Alternatively, at least one of the above modules may be implemented at least partly as a computer program module, which, when executed by a computer, may perform the functions of the respective module.
Another aspect of the disclosure provides a non-volatile storage medium storing computer-executable instructions that, when executed, implement a method of deploying a server as recited in any of the above.
Another aspect of the disclosure provides a computer program comprising computer executable instructions for implementing a method of deploying a server as claimed in any one of the preceding claims when executed.
FIG. 6 schematically shows a block diagram of a deployment server according to an embodiment of the disclosure.
As shown in FIG. 6, deployment server 600 includes processor 610, memory 620. The deployment server 600 may perform the methods described above with reference to fig. 2-3D.
In particular, the processor 610 may comprise, for example, a general purpose microprocessor, an instruction set processor and/or related chip set and/or a special purpose microprocessor (e.g., an Application Specific Integrated Circuit (ASIC)), or the like. The processor 610 may also include onboard memory for caching purposes. Processor 610 may be a single processing unit or a plurality of processing units for performing the different actions of the method flows according to embodiments of the present disclosure described with reference to fig. 2-3D.
The memory 620, for example, can be any medium that can contain, store, communicate, propagate, or transport the instructions. For example, a readable storage medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. Specific examples of the readable storage medium include: magnetic storage devices, such as magnetic tape or Hard Disk Drives (HDDs); optical storage devices, such as compact disks (CD-ROMs); a memory, such as a Random Access Memory (RAM) or a flash memory; and/or wired/wireless communication links.
The memory 620 may include a computer program 621, which computer program 621 may include code/computer-executable instructions that, when executed by the processor 610, cause the processor 610 to perform a method flow such as that described above in connection with fig. 2-3D, and any variations thereof.
The computer program 621 may be configured with, for example, computer program code comprising computer program modules. For example, in an example embodiment, code in computer program 621 may include one or more program modules, including 621A, 621B, … …, for example. It should be noted that the division and number of modules are not fixed, and those skilled in the art may use suitable program modules or program module combinations according to actual situations, and when the program modules are executed by the processor 610, the processor 610 may execute the method flows described above in conjunction with fig. 2 to 3D, for example, and any variations thereof.
According to an embodiment of the present invention, at least one of the collection module 410, the first obtaining module 420, the first determining module 430, the first detecting module 440, the second obtaining module 450, the second determining module 460, the second detecting module 470, the third obtaining module 480 and the third determining module 490 may be implemented as a computer program module described with reference to fig. 6, which when executed by the processor 610 may implement the respective operations described above.
Those skilled in the art will appreciate that various combinations and/or combinations of features recited in the various embodiments and/or claims of the present disclosure can be made, even if such combinations or combinations are not expressly recited in the present disclosure. In particular, various combinations and/or combinations of the features recited in the various embodiments and/or claims of the present disclosure may be made without departing from the spirit or teaching of the present disclosure. All such combinations and/or associations are within the scope of the present disclosure.
While the disclosure has been shown and described with reference to certain exemplary embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the disclosure as defined by the appended claims and their equivalents. Accordingly, the scope of the present disclosure should not be limited to the above-described embodiments, but should be defined not only by the appended claims, but also by equivalents thereof.

Claims (7)

1. A deployment method of a server is applied to a cloud computing management platform and comprises the following steps:
collecting hardware information of a target server from the target server through a deployment server, wherein the target server is used for being deployed into the cloud computing management platform to provide corresponding services;
acquiring server deployment rules stored in the deployment servers, wherein the server deployment rules are used for stipulating rules followed when the servers are deployed in the cloud computing management platform;
determining the service provided by the target server in the cloud computing management platform according to the collected hardware information and the acquired server deployment rule;
after determining the services provided by the target server in the cloud computing management platform, the method further comprises:
detecting whether a request is added to a newly added server in the cloud computing management platform;
if yes, obtaining a user instruction for indicating the service to be provided by the newly added server in the cloud computing management platform;
determining the service provided by the newly added server in the cloud computing management platform according to the instruction of the user instruction;
while determining the service provided by the newly added server in the cloud computing management platform, the method further includes:
and re-determining the service provided by the target server in the cloud computing management platform according to the acquired hardware information of the target server and the server deployment rule.
2. The method of claim 1, wherein prior to obtaining user instructions for indicating a service to be provided by the newly added server in the cloud computing management platform, the method further comprises:
detecting whether the user instruction is received;
if not, acquiring the hardware information of the newly added server; and
and determining the service provided by the newly added server in the cloud computing management platform according to the acquired hardware information of the newly added server and the server deployment rule.
3. The method of claim 1, wherein after determining the services provided by the target server in the cloud computing management platform, the method further comprises:
detecting whether a user instruction is received to indicate that the target server is deleted from the cloud computing management platform; and
and if so, deleting the target server from the cloud computing management platform according to the received instruction of the user instruction.
4. The method of claim 3, wherein the cloud computing management platform has other servers deployed in addition to the target server, and after removing the target server from the cloud computing management platform, the method further comprises:
and re-determining the services provided by the other servers in the cloud computing management platform.
5. The method of claim 1, wherein after determining the services provided by the target server in the cloud computing management platform, the method further comprises:
and pushing the starting image of the operating system installed by the target server to the target server.
6. A deployment system of a server is applied to a cloud computing management platform and comprises:
the collection module is used for collecting hardware information of a target server from the target server through a deployment server, wherein the target server is used for being deployed into the cloud computing management platform to provide corresponding services;
a first obtaining module, configured to obtain a server deployment rule stored in the deployment server, where the server deployment rule is used to specify a rule followed by deploying each server in the cloud computing management platform; and
the first determining module is used for determining the service provided by the target server in the cloud computing management platform according to the collected hardware information and the acquired server deployment rule;
the system further comprises:
the first detection module is used for detecting whether a request is made to add a new server in the cloud computing management platform after determining the service provided by the target server in the cloud computing management platform;
a second obtaining module, configured to, in a case that a request is made to add to the newly added server in the cloud computing management platform, obtain a user instruction for indicating a service to be provided by the newly added server in the cloud computing management platform; and
a second determining module, configured to determine, according to an instruction of the user instruction, a node role that the newly added server serves in the cloud computing management platform;
the second determining module is configured to determine the service provided by the newly added server in the cloud computing management platform, and at the same time, re-determine the service provided by the target server in the cloud computing management platform according to the acquired hardware information of the target server and the server deployment rule.
7. The system of claim 6, wherein the system further comprises:
the second detection module is used for detecting whether a user instruction is received before the user instruction used for indicating the service to be provided by the newly added server in the cloud computing management platform is obtained;
a third obtaining module, configured to obtain hardware information of the newly added server when the user instruction is not received; and
and the third determining module is used for determining the service provided by the newly added server in the cloud computing management platform according to the acquired hardware information of the newly added server and the server deployment rule.
CN201710530803.1A 2017-06-30 2017-06-30 Server deployment method and system Active CN107172208B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710530803.1A CN107172208B (en) 2017-06-30 2017-06-30 Server deployment method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710530803.1A CN107172208B (en) 2017-06-30 2017-06-30 Server deployment method and system

Publications (2)

Publication Number Publication Date
CN107172208A CN107172208A (en) 2017-09-15
CN107172208B true CN107172208B (en) 2021-09-14

Family

ID=59826860

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710530803.1A Active CN107172208B (en) 2017-06-30 2017-06-30 Server deployment method and system

Country Status (1)

Country Link
CN (1) CN107172208B (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109697142B (en) * 2017-10-20 2022-05-13 中移(苏州)软件技术有限公司 Method and device for detecting bare metal server in cloud computing environment
CN108874398A (en) * 2017-10-30 2018-11-23 北京旷视科技有限公司 Dispositions method, device, system and the storage medium of service product
CN109067877B (en) * 2018-08-03 2021-08-24 平安科技(深圳)有限公司 Control method for cloud computing platform deployment, server and storage medium
CN108989123A (en) * 2018-08-08 2018-12-11 郑州云海信息技术有限公司 A kind of server configuration method and device
CN108989474B (en) * 2018-09-29 2023-07-28 三六零科技集团有限公司 Service role distribution method of distributed node and distributed data transmission system
CN110096226B (en) * 2019-02-28 2022-09-09 新华三信息技术有限公司 Disk array deployment method and device
CN110381148A (en) * 2019-07-23 2019-10-25 深圳忆联信息系统有限公司 Server system arrangement method, apparatus and computer equipment based on low bandwidth
US11307887B2 (en) * 2019-12-02 2022-04-19 American Megatrends International, Llc Server deployment method and system in hypervisor architecture
CN111198696B (en) * 2019-12-30 2021-06-29 湖南大学 OpenStack large-scale deployment method and system based on bare computer server
CN115473779B (en) * 2022-07-21 2024-01-09 浪潮通信技术有限公司 Server management method and system
CN116684282B (en) * 2023-07-27 2024-01-16 深圳高灯计算机科技有限公司 Method and device for initializing newly-added cloud server and computer equipment

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1744047A (en) * 2005-09-27 2006-03-08 浪潮电子信息产业股份有限公司 Method for realizing dynamic layout of high-performance server based on group structure
CN1851686A (en) * 2005-04-22 2006-10-25 天津曙光计算机产业有限公司 Method for self-constructing group operating system core and intelligent constructor
CN102164184A (en) * 2011-04-22 2011-08-24 广州杰赛科技股份有限公司 Computer entity access and management method for cloud computing network and cloud computing network
CN103428241A (en) * 2012-05-18 2013-12-04 中兴通讯股份有限公司 Method and system for deploying services
CN103475521A (en) * 2013-09-10 2013-12-25 杭州华为数字技术有限公司 Method and device for deploying server
CN105490849A (en) * 2015-12-08 2016-04-13 中电科华云信息技术有限公司 Automatic deployment method and system of application system
CN106533753A (en) * 2016-11-07 2017-03-22 广州视源电子科技股份有限公司 Role configuration method and device of distributed system
CN106681956A (en) * 2016-12-27 2017-05-17 北京锐安科技有限公司 Method and device for operating large-scale computer cluster
CN106789200A (en) * 2016-12-07 2017-05-31 国云科技股份有限公司 A kind of method of the self-defined automatic deployment of cloud platform

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3776072B2 (en) * 2002-09-26 2006-05-17 株式会社アイエスエイ Cluster system and operation management apparatus and method thereof
CN1848787A (en) * 2006-04-30 2006-10-18 西安交通大学 Automatic fast dispositioning method for aggregated server system node
CN101183975B (en) * 2007-12-04 2010-06-09 浙江大学 Distributed heat dispositions method of cluster application server
EP2427022B1 (en) * 2010-09-06 2016-11-09 ABB Research Ltd. Method for reassigning the role of a wireless node in a wireless network
CN102646062B (en) * 2012-03-20 2014-04-09 广东电子工业研究院有限公司 Flexible capacity enlargement method for cloud computing platform based application clusters
CN103905226B (en) * 2012-12-26 2018-07-06 中兴通讯股份有限公司 The automatic deployment method and device of a kind of business platform
CN104660522A (en) * 2013-11-22 2015-05-27 英业达科技有限公司 Automatic node configuration method and server system
US20170171021A1 (en) * 2015-12-09 2017-06-15 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Automatic deployment of a new server in a peer-to-peer network of servers
CN106657167B (en) * 2017-03-10 2020-05-26 联想(北京)有限公司 Management server, server cluster, and management method

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1851686A (en) * 2005-04-22 2006-10-25 天津曙光计算机产业有限公司 Method for self-constructing group operating system core and intelligent constructor
CN1744047A (en) * 2005-09-27 2006-03-08 浪潮电子信息产业股份有限公司 Method for realizing dynamic layout of high-performance server based on group structure
CN102164184A (en) * 2011-04-22 2011-08-24 广州杰赛科技股份有限公司 Computer entity access and management method for cloud computing network and cloud computing network
CN103428241A (en) * 2012-05-18 2013-12-04 中兴通讯股份有限公司 Method and system for deploying services
CN103475521A (en) * 2013-09-10 2013-12-25 杭州华为数字技术有限公司 Method and device for deploying server
CN105490849A (en) * 2015-12-08 2016-04-13 中电科华云信息技术有限公司 Automatic deployment method and system of application system
CN106533753A (en) * 2016-11-07 2017-03-22 广州视源电子科技股份有限公司 Role configuration method and device of distributed system
CN106789200A (en) * 2016-12-07 2017-05-31 国云科技股份有限公司 A kind of method of the self-defined automatic deployment of cloud platform
CN106681956A (en) * 2016-12-27 2017-05-17 北京锐安科技有限公司 Method and device for operating large-scale computer cluster

Also Published As

Publication number Publication date
CN107172208A (en) 2017-09-15

Similar Documents

Publication Publication Date Title
CN107172208B (en) Server deployment method and system
US9843485B2 (en) Monitoring dynamic networks
TW202131661A (en) Device and method for network optimization and non-transitory computer-readable medium
US10951692B1 (en) Deployment of microservices based on back-end resource affinity
CA2856882A1 (en) System for transferring states between electronic devices
US20170054803A1 (en) Information processing device, method, and system
US10776097B2 (en) Hierarchical spanning tree software patching with fragmentation support
CN103491152A (en) Metadata obtaining method, device and system in distributed file system
CN113961510B (en) File processing method, device, equipment and storage medium
US10691357B2 (en) Consideration of configuration-based input/output predictions in multi-tiered data storage system management
US10129330B2 (en) Attachment of cloud services to big data services
US9686202B2 (en) Network-specific data downloading to a mobile device
CN110780887A (en) Method and equipment for providing application installation package
US9720755B2 (en) Information processing device
WO2012042724A1 (en) Systems and methods for managing a virtual tape library domain
CN109753229B (en) Data migration method and device, network attached storage equipment and storage medium
CN109144403B (en) Method and equipment for switching cloud disk modes
CN111158881B (en) Data processing method, device, electronic equipment and computer readable storage medium
JP2023503232A (en) Data loss risk detection for 5G enabled devices
KR20180080450A (en) Apparatus for malware detection based on cloud and method using the same
US9268496B2 (en) Choosing a multipath I/O (MPIO) path control module (PCM) for a logical unit number (LUN) on a host that supports multiple PCMS
JP2017143407A (en) Communication management device, communication management method, and communication management program
US20160373464A1 (en) Communication system, method and base station
CN110058790B (en) Method, apparatus and computer program product for storing data
US9444891B2 (en) Data migration in a storage network

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
GR01 Patent grant
GR01 Patent grant