CN111934904B - Capacity expansion method, controller and system - Google Patents

Capacity expansion method, controller and system Download PDF

Info

Publication number
CN111934904B
CN111934904B CN202010614194.XA CN202010614194A CN111934904B CN 111934904 B CN111934904 B CN 111934904B CN 202010614194 A CN202010614194 A CN 202010614194A CN 111934904 B CN111934904 B CN 111934904B
Authority
CN
China
Prior art keywords
controller
expanded
cluster
configuration information
expansion
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
CN202010614194.XA
Other languages
Chinese (zh)
Other versions
CN111934904A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202010614194.XA priority Critical patent/CN111934904B/en
Publication of CN111934904A publication Critical patent/CN111934904A/en
Application granted granted Critical
Publication of CN111934904B publication Critical patent/CN111934904B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The embodiment of the application discloses a capacity expansion method, a controller and a system. The method comprises the following steps: when finding a to-be-expanded controller, acquiring application information of the to-be-expanded controller; and adding the to-be-expanded controller into a cluster where the controller is located according to the application information so as to expand the cluster. The embodiment of the application also correspondingly discloses a controller and a system. By adopting the embodiment of the application, the cluster can automatically expand the capacity of the controller, the capacity expansion efficiency is improved, the user operation is simple and convenient, and the user experience is improved.

Description

Capacity expansion method, controller and system
The application relates to a capacity expansion method, a controller and a system, which are classified application with patent application number 201410752019.1 and application date 2014, 12 and 10.
Technical Field
The present application relates to the field of storage, and in particular, to a capacity expansion method, a controller, and a system.
Background
With the acceleration of the informatization process and the continuous expansion of the service scale, huge information volume increases the service data, which causes that the capacity of the initial configuration of the storage array is likely to not meet the existing service requirement.
Therefore, in order to increase the storage capacity of the storage array, the storage array needs to be expanded. At present, the capacity of the storage array is mainly expanded by adopting the following modes: 1. inserting a newly added hard disk into the hard disk slot of the existing hard disk frame of the storage array to increase the capacity of the storage array; 2. under the condition that the storage array has no free hard disk slot position or the free hard disk slot position can not meet the existing service requirement, the capacity of the storage array is increased by adding a hard disk frame in the array; 3. when the number of controllers needs to be increased to improve the overall performance of the storage array, capacity expansion can be performed by increasing the number of controllers, wherein the controllers can carry a plurality of hard disk frames.
From the above, it can be known that, in order to improve the overall performance of the memory array, the capacity expansion can be performed in the 3 rd mode, that is, by adding a controller. However, at present, this expansion mode requires a user to perform manual expansion, for example: the operation user needs to power on the controller and manually configure parameters through the operation page, and the storage array adds the controller into the storage array network according to the manually set parameters, so that the operation of the user is complex, the user needs to know the configured parameter functions deeply to perform the configuration, inconvenience is brought to the user, and more time is occupied for the user.
Disclosure of Invention
The embodiment of the invention provides a capacity expansion method, a controller and a system, which can automatically expand the capacity of the controller, improve the capacity expansion efficiency, simplify the user operation and improve the user experience.
The first aspect of the invention provides a capacity expansion method, which comprises the following steps:
when finding a to-be-expanded controller, acquiring application information of the to-be-expanded controller;
and adding the to-be-expanded controller into a cluster where the controller is located according to the application information so as to expand the cluster.
With reference to the first aspect, in a first possible implementation manner, when the to-be-expanded controller is found, before obtaining application information of the to-be-expanded controller includes:
and when receiving the capacity expansion starting instruction, generating capacity expansion configuration parameters required by capacity expansion.
With reference to the first possible implementation manner of the first aspect, in a second possible implementation manner, when the to-be-amplified controller is found, the acquiring application information of the to-be-amplified controller includes:
transmitting broadcast information;
and receiving application information returned by the to-be-expanded controller in response to the broadcast information.
With reference to the second possible implementation manner of the first aspect, in a third possible implementation manner, the application information carries attribute information of the to-be-amplified controller, where the attribute information includes a serial number SN of the to-be-amplified controller, a MAC address of the to-be-amplified controller, and a version number of the to-be-amplified controller.
With reference to the third possible implementation manner of the first aspect, in a fourth possible implementation manner, the adding the to-be-expanded controller to the cluster of controllers according to the application information includes:
acquiring current configuration information of the cluster;
generating new configuration information according to the attribute information and the current configuration information;
and carrying out automatic configuration according to the new configuration information.
With reference to the fourth possible implementation manner of the first aspect, in a fifth possible implementation manner, the generating new configuration information according to the attribute information and the current configuration information further includes:
and generating the new configuration information according to the attribute information, the current configuration information and the capacity-expansion configuration information.
With reference to the fourth possible implementation manner of the first aspect or the fifth possible implementation manner of the first aspect, in a sixth possible implementation manner, the new configuration information includes first configuration information of the to-be-expanded controller and second configuration information of the cluster;
the automatic configuration according to the new configuration information comprises the following steps:
and broadcasting the first configuration information so that the to-be-expanded controller is configured according to the first configuration information.
With reference to the fourth possible implementation manner of the first aspect or the fifth possible implementation manner of the first aspect, in a seventh possible implementation manner, the configuring the terminal according to the new configuration information includes:
and modifying the configuration of the cluster according to the second configuration information.
With reference to the sixth possible implementation manner of the first aspect or the seventh possible implementation manner of the first aspect, in an eighth possible implementation manner, the first configuration information includes:
the number of controllers of the cluster after capacity expansion, the ID of the controller to be expanded, the IP address of the controller to be expanded, the gateway of the controller to be expanded, the mask of the controller to be expanded, the ID list of the controllers of the cluster after capacity expansion and the IP list of the controllers of the cluster after capacity expansion.
With reference to the sixth possible implementation manner of the first aspect or the seventh possible implementation manner of the first aspect, in a ninth possible implementation manner, the second configuration information includes: the number of the controllers of the cluster after the expansion, the ID list of the controllers of the cluster after the expansion and the IP list of the controllers of the cluster after the expansion.
With reference to the first aspect or the first possible implementation manner of the first aspect to the ninth possible implementation manner of the first aspect, in a tenth possible implementation manner, after adding the to-be-expanded controller to the cluster where the controller is located according to the application information, the method further includes:
judging whether the version number of the to-be-expanded controller is consistent with the version number of the cluster;
and when the version number of the to-be-expanded controller is inconsistent with the version number of the cluster, updating the version of the to-be-expanded controller so that the version of the to-be-expanded controller is consistent with the version of the cluster.
A second aspect of the present invention provides a controller comprising:
the device comprises an acquisition unit, a control unit and a control unit, wherein the acquisition unit is used for acquiring application information of a to-be-expanded controller when the to-be-expanded controller is found;
and the adding unit is used for adding the to-be-expanded controller into the cluster where the controller is located according to the application information so as to expand the capacity of the cluster.
With reference to the second aspect, in a first possible implementation manner, the expansion control module further includes:
and the generating unit is used for generating capacity expansion configuration parameters required by capacity expansion when receiving the capacity expansion starting instruction.
With reference to the first possible implementation manner of the second aspect, in a second possible implementation manner, the acquiring unit includes:
a transmitting subunit configured to transmit broadcast information;
and the receiving subunit is used for receiving the application information returned by the to-be-expanded controller in response to the broadcast information.
With reference to the second possible implementation manner of the second aspect, in a third possible implementation manner, the application information carries attribute information of the to-be-amplified controller, where the attribute information includes a serial number SN of the to-be-amplified controller, a MAC of the to-be-amplified controller, and a version number of the to-be-amplified controller.
With reference to the third possible implementation manner of the second aspect, in a fourth possible implementation manner, the adding unit includes:
the sub-unit is used for acquiring the current configuration information of the cluster;
a first generating subunit, configured to generate new configuration information according to the attribute information and the current configuration information;
and the configuration subunit is used for carrying out automatic configuration according to the new configuration information.
With reference to the fourth possible implementation manner of the second aspect, in a fifth possible implementation manner, the first generating subunit is specifically configured to:
And generating the new configuration information according to the attribute information, the current configuration information and the capacity-expansion configuration information.
With reference to the fourth possible implementation manner of the second aspect or the fifth possible implementation manner of the second aspect, in a sixth possible implementation manner, the new configuration information includes first configuration information of the to-be-expanded controller and second configuration information of the controller;
the configuration subunit is specifically configured to:
and broadcasting the first configuration information so that the to-be-expanded controller can be automatically configured according to the first configuration information.
With reference to the fourth possible implementation manner of the second aspect or the fifth possible implementation manner of the second aspect or the sixth possible implementation manner of the second aspect, in a seventh possible implementation manner, the configuration subunit is specifically configured to:
and modifying the configuration of the cluster according to the second configuration information.
With reference to the sixth possible implementation manner of the second aspect or the seventh possible implementation manner of the second aspect, in an eighth possible implementation manner, the first configuration information includes: the number of controllers of the cluster after capacity expansion, the ID of the controller to be expanded, the IP address of the controller to be expanded, the gateway of the controller to be expanded, the mask of the controller to be expanded, the ID list of the controllers of the cluster after capacity expansion and the IP list of the controllers of the cluster after capacity expansion.
With reference to the sixth possible implementation manner of the second aspect or the seventh possible implementation manner of the second aspect, in a ninth possible implementation manner, the second configuration information includes: the number of the controllers of the cluster after the expansion, the ID list of the controllers of the cluster after the expansion and the IP list of the controllers of the cluster after the expansion.
With reference to the second aspect or the first possible implementation manner of the second aspect to the ninth possible implementation manner of the second aspect, in a tenth possible implementation manner, the controller further includes:
the judging unit is used for judging whether the version number of the to-be-expanded controller is consistent with the version number of the cluster;
and the updating unit is used for updating the version of the to-be-expanded controller when the judging unit judges that the version number of the to-be-expanded controller is inconsistent with the version number of the cluster, so that the version of the to-be-expanded controller is consistent with the version of the cluster.
A third aspect of the present invention provides a capacity expansion system comprising a controller as described above and a controller to be expanded connected to the controller, wherein,
the to-be-expanded controller is used for receiving the broadcast information sent by the controller, responding to the broadcast information and returning application information to the controller.
With reference to the third aspect, in a first possible implementation manner, the system further includes a terminal device connected to the controller to be controlled,
the terminal equipment is used for displaying the expansion control state of the real-time controller, receiving an operation instruction of a user, and sending the operation instruction to the controller so as to control the expansion control process of the controller.
The embodiment of the invention has the following beneficial effects:
in the embodiment of the invention, when the controller discovers the to-be-expanded controller, the application information of the to-be-expanded controller is acquired, and the to-be-expanded controller is added into the cluster where the controller is located according to the application information, so that the automatic expansion of the cluster is performed. The controller can automatically expand the capacity of the clusters, the capacity expansion efficiency is improved, the user operation is simple and convenient, and the user experience is improved.
Drawings
In order to more clearly illustrate the embodiments of the invention or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, it being obvious that the drawings in the following description are only some embodiments of the invention, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a schematic flow chart of a capacity expansion method according to an embodiment of the present invention;
fig. 2 is a flow chart of another capacity expansion method according to an embodiment of the present invention.
FIG. 3 is a block diagram of a controller according to an embodiment of the present invention;
FIG. 4 is a block diagram of yet another controller provided by an embodiment of the present invention;
fig. 5 is a block diagram of a capacity expansion system according to an embodiment of the present invention;
fig. 6 is a block diagram of yet another capacity expansion system according to an embodiment of the present invention;
Detailed Description
The following description of the embodiments of the present invention will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present invention, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The execution subject of embodiments of the present invention may be a controller that includes a dedicated controller for a storage array and a generic server that installs the associated software for the storage array. In particular, the controller may also include a master controller in the storage array and a pending controller to be added to the storage array.
Fig. 1 is a schematic flow chart of a capacity expansion method according to an embodiment of the present invention. As shown in fig. 1, a capacity expansion method in this embodiment includes the steps of:
s100, when a to-be-expanded controller is found, acquiring application information of the to-be-expanded controller.
In an embodiment of the present invention, the execution body controller may be a master controller of a cluster in the storage array, where the cluster may be a controller cluster composed of a plurality of controllers in the storage array. The storage array described herein may be comprised of a plurality of controllers, each of which may comprise a plurality of hard disk frames, each of which may comprise a plurality of hard disks, and a hard disk frame, wherein a master controller in the storage array may be generated by automatic election between the various controllers in the storage array, the master controller being operable to control the other controllers in the storage array. In the embodiment of the invention, the controller to be expanded can be a controller carrying at least one hard disk frame.
In the embodiment of the invention, the main controller can send broadcast information to the cluster network at regular intervals, wherein the main controller sends the broadcast information through a UDP (User Datagram Protocol, datagram protocol) broadcast mechanism. Preferably, the main controller may transmit broadcast information to the to-be-expanded controller. When a to-be-expanded controller connected with the main controller in a network exists in the cluster network, the to-be-expanded controller receives the broadcast information and responds to the broadcast information to return application information. The application information is used for applying for adding the cluster to the main controller. Specifically, the application information includes: attribute information of a to-be-expanded controller, wherein the attribute information comprises an SN (Serial Number) of the to-be-expanded controller, a MAC address (Media Access Control) of the to-be-expanded controller and a version Number of the to-be-expanded controller.
Preferably, in the embodiment of the present invention, when an operating user is to add a to-be-expanded controller to a cluster to perform controller expansion on the cluster, the operating user may first connect the to-be-expanded controller to the cluster network and power up the to-be-expanded controller. For example: when the cluster network is provided with 5 interfaces for connecting the controllers, and 4 interfaces are connected with the controllers, an operating user can connect the network of the controllers to be expanded to the rest interface of the cluster network, so that the controllers to be expanded are connected with the cluster network formed by the controllers in the storage array.
S101, adding the to-be-expanded controller into a cluster where the controller is located according to the application information so as to expand the cluster.
In the embodiment of the invention, when the main controller receives the application information sent by the to-be-expanded controller, the main controller can acquire the current configuration information of the cluster. The current configuration information may include relevant configuration information of the controllers of the cluster, an (Identity, identity code) ID list of the controllers of the cluster, an (Internet Protocol, protocol of interconnection between networks) IP list of the controllers of the cluster, etc.
In the embodiment of the invention, after the main controller acquires the current configuration information, the main controller can generate new configuration information according to the attribute information carried by the application information sent by the to-be-expanded controller and the current configuration information. The new configuration information may include first configuration information of the to-be-expanded controller and second configuration information of the cluster. The first configuration information may be configuration information that the to-be-expanded controller needs to change in order for the to-be-expanded controller to join the cluster. The first configuration information may include second configuration information, and the first configuration information may be the number of controllers of the cluster after capacity expansion, the to-be-expanded controller ID, the to-be-expanded controller IP address, the to-be-expanded controller gateway information, the to-be-expanded controller mask, an ID list of the controllers of the cluster after capacity expansion, and an IP list of the controllers of the cluster after capacity expansion. The second configuration information may be used to configure each controller of the current cluster, where each controller includes a master controller and other controllers, and the second configuration information may be a configuration that the master controller and other controllers of the current cluster need to change in order for the cluster to add the to-be-expanded controller. The second configuration information may include the number of controllers of the cluster after expansion, an ID list of the controllers of the cluster after expansion, and an IP list of the controllers of the cluster after expansion.
Further, after the main controller generates the first configuration information and the second configuration information, the main controller may broadcast the first configuration information in the trunking network, so that the to-be-expanded controller accessing the trunking network obtains the first configuration information, and performs configuration according to the first configuration information, so as to meet the configuration requirement of the to-be-expanded controller of the trunking. The first configuration information may include second configuration information, and the configuration of the to-be-expanded controller according to the first configuration information may be: the to-be-expanded controller can carry out IP configuration according to the IP address included in the first configuration information, the to-be-expanded controller can carry out gateway configuration according to the gateway information included in the first configuration information, the to-be-expanded controller can carry out mask configuration according to the mask included in the first configuration information, the to-be-expanded controller can carry out ID configuration according to the to-be-expanded controller ID included in the first configuration information, the to-be-expanded controller can carry out controller quantity configuration according to the quantity of the controllers of the clusters after capacity expansion included in the first configuration information, and the like. Further, the master controller can modify the configuration of each controller of the cluster according to the second configuration information so as to meet the configuration requirement required by adding the to-be-expanded controller to the cluster. Wherein, the main controller modifies the configuration of each controller of the cluster according to the second configuration information: the main controller may modify the number of controllers of the clusters configured by each controller in the cluster according to the number of controllers of the clusters after capacity expansion included in the second configuration information, the main controller may modify the ID list of the controllers of the clusters configured by each controller in the cluster according to the ID list of the controllers of the clusters after capacity expansion included in the second configuration information, and the main controller may modify the IP list of the controllers of the clusters configured by each controller in the cluster according to the IP list of the controllers of the clusters after capacity expansion included in the second configuration information.
In the embodiment of the invention, after the main controller modifies the configuration of each controller and the to-be-expanded controller of the cluster, the main controller can further operate the to-be-expanded controller so as to enable the to-be-expanded controller to join the cluster, thereby expanding the cluster. The further operation of the main controller to the to-be-expanded controller is the prior art, and is not described herein.
In the embodiment of the invention, after the main controller adds the controllers to be expanded into the cluster, the main controller can store the service data on the storage unit of the controllers to be expanded according to the requirement, namely, the online expansion control is realized, and the operation user does not participate in the expansion process, so that the operation of parameter configuration errors can not occur in the expansion process, the safety of online expansion is improved, and the normal and stable operation of the service system is ensured.
In the embodiment of the invention, it can be understood that an operation user can connect the interface of the controller to be expanded with the network interface of the cluster, the main controller can automatically identify the controller to be expanded and automatically configure the configuration parameters of each controller and the controller to be expanded in the cluster network, so that the controller to be expanded is added into the cluster according to the obtained configuration parameters, and immediately becomes a part of the cluster after the expansion control is finished, and can share the business processing of the cluster, thereby realizing the 'plug and play' of the cluster to the controller to be expanded in the whole expansion process, improving the expansion efficiency, simplifying the user operation and improving the user experience.
In the embodiment of the invention, after the main controller carries out configuration modification on each controller and the to-be-expanded controller of the cluster, the main controller can add the to-be-expanded controller into the cluster according to the configured configuration parameters, so that the capacity of the controller is expanded for the cluster.
In the embodiment of the invention, when the controller discovers the to-be-expanded controller, the application information of the to-be-expanded controller is acquired, and the to-be-expanded controller is added into the cluster where the controller is located according to the application information, so that the automatic expansion of the cluster is performed. The controller can automatically expand the capacity of the clusters, the capacity expansion efficiency is improved, the user operation is simple and convenient, and the user experience is improved.
Fig. 2 is a schematic flow chart of another capacity expansion method according to an embodiment of the invention. As shown in fig. 2, a capacity expansion method in this embodiment includes the steps of:
and S200, when receiving the capacity expansion starting instruction, generating capacity expansion configuration parameters required by capacity expansion.
In the embodiment of the invention, when the operation user needs to expand the cluster of the controller, the operation user can input an expansion start instruction through the terminal equipment for managing the cluster. The terminal equipment can be internally provided with management software, and an operation user can input a capacity expansion starting instruction through an input device of the terminal equipment. The input device may include a touch screen, keys, and the like.
In the embodiment of the invention, when the main controller receives the capacity expansion starting instruction, the main controller can perform pre-expansion control check to check whether the current state of the storage array can implement controller expansion control. For example: and judging whether the storage array operates normally, whether the controllers in the controller cluster in the storage array reach the upper limit or not, and the like. After judging that the storage array can implement expansion control, the main controller can prepare expansion configuration parameters required by the expansion control. For example, an ID and an IP address allocated to the to-be-expanded controller may be prepared.
S201, when a to-be-expanded controller is found, acquiring application information of the to-be-expanded controller.
In the embodiment of the present invention, referring to the structure diagram of one controller shown in fig. 3, each controller in the storage array may be built with an Expansion control module (EXP), where the Expansion control module may be used to automatically configure configuration parameters of the controller and the controller to be expanded of the cluster, so as to implement the function of automatically expanding and controlling the controller for the cluster. The expansion control module of each controller is in a closed state at ordinary times, when an operation user performs expansion, the expansion control module of the main controller can be started to realize the function of automatically configuring the configuration parameters of the cluster and the controllers to be expanded, and the expansion control modules of other controllers are kept in the closed state. The expansion control module can be used for finding the controller to be expanded through a UDP broadcasting mechanism. Meanwhile, an IP address is allocated to the to-be-expanded controller; the expansion control module can also be used for generating new configuration parameters of the cluster during expansion control; the expansion control module can be used for respectively issuing new configuration parameters to the to-be-expanded controller and each controller of the cluster, and detecting whether the to-be-expanded controller is added into the cluster; the expansion control module can also be used for checking whether the current state of the storage array can be subjected to expansion control by the controller before the expansion control and checking whether the current state of the storage array is normal after the expansion control; the expansion control module can also be used for realizing an interface communication function of issuing configuration parameters for the controllers to be expanded and each controller in the cluster; the spread control module can also be used for realizing broadcasting information through a UDP broadcasting mechanism; the expansion control module can also be used for controlling the working flow of the main controller and providing an interface for the external module or the terminal to inquire the state of the expansion control process or the expansion control result.
In the embodiment of the present invention, referring to fig. 3, the controller may further have a SYS (System Control) module connected to the expansion Control module, and in this embodiment, the first SYS module is used to represent the SYS module for distinguishing from the SYS module of the controller to be expanded described below. The first SYS module is used for cluster management, and the expansion control module can realize functions of expansion control checking, configuration generation, configuration execution and the like through the first SYS module. May include: the expansion control module calls a first SYS module interface to perform checking before expansion control and verification after expansion control; the expansion control module can call a first SYS module interface to generate first configuration information and second configuration information required by expansion control; the expansion control module may invoke a first SYS module interface to modify the configuration of the cluster.
In the embodiment of the invention, the master controller can discover the controller to be expanded through the expansion control module. And the expansion control module transmits broadcast information through the UDP broadcasting unit, wherein the broadcast information is used for finding the controller to be expanded. When the to-be-amplified controller returns the application information according to the broadcast information, the amplifying control module can receive the application information returned by the to-be-amplified controller. The application information is used for applying for adding the cluster to the main controller. Specifically, the application information includes: attribute information of a to-be-expanded controller, wherein the attribute information comprises SN of the to-be-expanded controller, MAC address of the to-be-expanded controller and version number of the to-be-expanded controller.
In an embodiment of the present invention, in order to facilitate operation of the user management controller, as shown in fig. 3, the main controller may further include a management monitoring module connected to the expansion control module and the first SYS module, respectively, where the management monitoring module may be used to monitor or control operation of the main controller. The operation user can interact with the main controller through an input device of the terminal equipment connected with the management monitoring module, so that the operation user can send an operation instruction to the management monitoring module through the terminal equipment. The operation user can control the expansion control module through the management monitoring module. For example: when an operation user needs to implement capacity expansion, the capacity expansion starting instruction can be sent to the management monitoring module by the operation user through the terminal equipment, so that the management monitoring module obtains the instruction to control the starting of the capacity expansion module to prepare for automatic capacity expansion of the cluster, and the capacity expansion starting instruction can be used for starting the capacity expansion module. When an operating user starts a 'expansion control mode' through the terminal equipment, the management monitoring module acquires an expansion start instruction to start the expansion control module, and monitors the operation process of the expansion control module, wherein the management monitoring module starts the expansion control module, and the management monitoring module can send the expansion start instruction to the expansion control module, so that the expansion control module starts in response to the instruction. When the expansion control module receives an expansion start instruction, the expansion control module can perform pre-expansion control checking to check whether the current state of the storage array can be subjected to expansion control by the controller. For example: and judging whether the storage array operates normally, whether the controllers in the controller cluster in the storage array reach the upper limit or not, and the like. The checking before the expansion control module performs the expansion control may be that the expansion control module invokes an interface of a first SYS module of the controller to implement the checking before the expansion control. After judging that the storage array can implement expansion control, the expansion control module can prepare expansion configuration parameters required by the expansion control. For example: an ID and an IP address allocated to the to-be-expanded controller, etc. may be prepared. After the expansion control inspection of the expansion control module is finished, the expansion control module can find the controller to be expanded. The controller to be expanded can be found by the expansion control module according to the specific embodiment.
S202, adding the to-be-expanded controller into a cluster where the controller is located according to the application information so as to expand the cluster.
In the embodiment of the invention, when the expansion control module receives the application information sent by the to-be-expanded controller, the expansion control module can acquire the current configuration information. The current configuration information may include the number of controllers of the cluster, an ID list of the controllers of the cluster, an IP list of the controllers of the cluster, and the like.
In the embodiment of the invention, after the expansion control module acquires the current configuration information, the expansion control module can generate the first configuration information of the to-be-controlled controller and the second configuration information of the cluster according to the attribute information, the current configuration information and the expansion configuration parameter carried by the application information sent by the to-be-expanded controller, wherein the expansion control module can call the first SYS module of the controller to generate the first configuration parameter and the second configuration parameter required by expansion control. The first configuration information may be configured to configure the to-be-expanded controller, and the first configuration information may be configuration information that the to-be-expanded controller needs to change in order for the to-be-expanded controller to join the cluster. The first configuration information may include second configuration information, and the first configuration information may be the number of controllers of the cluster after capacity expansion, the to-be-expanded controller ID, the to-be-expanded controller IP address, the to-be-expanded controller gateway information, the to-be-expanded controller mask, an ID list of the controllers of the cluster after capacity expansion, and an IP list of the controllers of the cluster after capacity expansion. The second configuration information may be used to configure each controller of the current cluster, where each controller may include a master controller and other controllers. The second configuration information may be configuration information that the cluster needs to change in order to add the pending controller, the master controller and other controllers of the current cluster. The second configuration information may include the number of controllers of the cluster after expansion, an ID list of the controllers of the cluster after expansion, and an IP list of the controllers of the cluster after expansion.
After the expansion control module generates the first configuration information and the second configuration information, the expansion control module can modify the configuration of the controllers to be expanded and the controllers of the cluster according to the first configuration information and the second configuration information. The expansion control module can broadcast the first configuration information in the cluster so that the to-be-expanded controller accessed to the cluster can be configured according to the first configuration information to meet the configuration requirement of the to-be-expanded controller of the cluster. Further, the expansion control module may modify the configuration of each controller of the cluster by calling the first SYS module to modify the configuration of each controller of the cluster to conform to the configuration requirement required by the cluster to add the controller to be expanded.
In the embodiment of the invention, after the configuration of the controller to be expanded and each controller of the cluster is modified by the expansion control module, the expansion control module can inform the first SYS module to add the controller to be expanded into the cluster. The first SYS module communicates with the to-be-expanded controller in a heartbeat mode, and the to-be-expanded controller is added into the cluster.
In the embodiment of the invention, the expansion control module can monitor the state of the controller and the state of the controller to be expanded at the same time when the expansion control module performs the above implementation mode until the controller to be expanded joins the cluster. After the controller to be expanded joins the cluster, the main controller can acquire the end of the expansion control, and close the expansion control module.
In the embodiment of the invention, an operation user can control the starting and the suspension of the expansion control module through the management monitoring module. And in the process of the expansion control by the expansion control module, the operation user can inquire the expansion control process through the management monitoring module, for example: the current running state of the expansion control, the success or failure of each step of the expansion control process, which flow the main controller is in the expansion control, and the like. Furthermore, the management monitoring module can also automatically display state information in the expansion control process through the terminal equipment, so that an operation user can master the expansion control process.
In the embodiment of the invention, the controller can implement the mode of adding the controller to be expanded into the cluster of the main controller according to the application information through the interaction of the built-in expansion control module and other modules.
In an embodiment of the present invention, referring to fig. 3, the master controller may further include a maintenance module connected to the first SYS module. And the maintenance module is used for updating the version of the to-be-expanded controller. In the embodiment of the invention, when the cluster performs expansion control, the first SYS module of the main controller can detect and judge whether the version number of the to-be-expanded controller is consistent with the version number of the cluster, and when the SYS module judges that the version number of the to-be-expanded controller is inconsistent with the version number of the cluster, the maintenance module updates the version of the to-be-expanded controller so as to enable the version of the to-be-expanded controller to be consistent with the version of the cluster.
In the embodiment of the invention, when the expansion control module of the controller discovers the to-be-expanded controller, the application information of the to-be-expanded controller is acquired, and the to-be-expanded controller is added into the cluster of the controller according to the application information so as to expand the cluster. The controller can automatically expand the capacity of the clusters through the expansion control module, the capacity expansion efficiency is improved, the user operation is simple and convenient, and the user experience is improved.
In order to facilitate better implementation of the above-described aspects of embodiments of the present invention, the following provides relevant means for implementing the above-described aspects in a matching manner.
Referring to fig. 4, a block diagram of another controller according to an embodiment of the present invention is shown. Wherein, as shown in fig. 4, the controller includes:
an obtaining unit 10, configured to obtain application information of a to-be-amplified controller when the to-be-amplified controller is found;
and the adding unit 20 is connected with the acquiring unit 10, and is configured to add the to-be-expanded controller to the cluster where the controller is located according to the application information, so as to expand the cluster.
Wherein the controller further comprises:
and a generating unit 30 connected to the joining unit 20, configured to generate capacity expansion configuration parameters required for capacity expansion when receiving a capacity expansion start instruction.
Wherein the acquisition unit 10 includes:
a transmitting subunit 1, configured to transmit broadcast information;
and the receiving subunit 2 is used for receiving the application information returned by the to-be-expanded controller in response to the broadcast information.
The application information carries attribute information of the to-be-expanded controller, wherein the attribute information comprises a serial number SN of the to-be-expanded controller, a MAC of the to-be-expanded controller and a version number of the to-be-expanded controller.
Wherein the joining unit 20 includes:
a subunit 3 is configured to obtain current configuration information of the cluster;
a generating subunit 4, configured to generate new configuration information according to the attribute information and the current configuration information;
and the configuration subunit 5 is used for automatically configuring according to the new configuration information.
Wherein the generating subunit 4 is specifically configured to:
and generating the new configuration information according to the attribute information, the current configuration information and the capacity-expansion configuration information.
The new configuration information comprises first configuration information of the to-be-expanded controller and second configuration information of the controller;
the configuration subunit 5 is specifically configured to:
and broadcasting the first configuration information so that the to-be-expanded controller can be automatically configured according to the first configuration information.
Wherein, the configuration subunit 5 is specifically configured to:
and modifying the configuration of the cluster according to the second configuration information.
Wherein the first configuration information includes: the number of controllers of the cluster after capacity expansion, the ID of the controller to be expanded, the IP address of the controller to be expanded, the gateway of the controller to be expanded, the mask of the controller to be expanded, the ID list of the controllers of the cluster after capacity expansion and the IP list of the controllers of the cluster after capacity expansion.
Wherein the second configuration information includes: the number of the controllers of the cluster after the expansion, the ID list of the controllers of the cluster after the expansion and the IP list of the controllers of the cluster after the expansion.
Wherein the joining unit 20 further comprises:
a judging subunit 6, configured to judge whether the version number of the to-be-expanded controller is consistent with the version number of the cluster;
and the updating subunit 7 is used for updating the version of the to-be-expanded controller when the judging unit judges that the version number of the to-be-expanded controller is inconsistent with the version number of the cluster, so that the version of the to-be-expanded controller is consistent with the version of the cluster.
It may be understood that the functions of each functional module of the apparatus of this embodiment may be specifically implemented according to the method in the foregoing method embodiment, and the specific implementation process may refer to the relevant description of the foregoing method embodiment, which is not repeated herein.
In the embodiment of the invention, when the controller discovers the to-be-expanded controller, the application information of the to-be-expanded controller is acquired, and the to-be-expanded controller is added into the cluster where the controller is located according to the application information, so that the automatic expansion of the cluster is performed. The controller can automatically expand the capacity of the clusters, the capacity expansion efficiency is improved, the user operation is simple and convenient, and the user experience is improved.
Referring to fig. 5, a block diagram of a capacity expansion system according to an embodiment of the present invention is provided. As shown in fig. 5, a capacity expansion system according to this embodiment may include the controller 1000 and the to-be-expanded controller 2000 described in the above embodiments.
The to-be-expanded controller 2000 is configured to receive the broadcast information sent by the controller, respond to the broadcast information, and return application information to the controller.
In the embodiment of the invention, after the to-be-expanded controller is powered on to access the cluster, the to-be-expanded controller can detect whether the broadcast information sent by the main controller exists. And when the broadcast information is detected, the to-be-expanded controller returns application information to the main controller. The method comprises the steps that a to-be-amplified controller returns application information through a UDP mechanism, wherein the application information carries attribute information of the to-be-amplified controller, and the attribute information comprises a serial number SN of the to-be-amplified controller, an MAC of the to-be-amplified controller and a version number of the to-be-amplified controller. The attribute information may be preset by the operation user at the factory stage.
In the embodiment of the invention, the to-be-expanded controller can be internally provided with an expansion control Agent module (EXP-Agent), wherein the expansion control Agent module can be set to automatically run after being electrified in a factory stage. When the expansion control proxy module starts to operate, the expansion control proxy module automatically discovers broadcast information sent by the main controller, so that the controller to be expanded automatically joins the cluster. After the cluster expansion control is completed, the second SYS module built in the controller to be expanded can be closed, and the operation is not performed any more.
In the embodiment of the invention, the second SYS module may be a SYS module of the controller to be expanded, and the second SYS module is used for communicating with the first SYS module of the controller in a heartbeat manner after the controller is expanded, and joining the cluster.
In the embodiment of the invention, the to-be-expanded controller can further comprise an operation maintenance module. The operation maintenance module is used for changing the system version of the to-be-expanded controller. In the embodiment of the invention, the second SYS module can judge whether the system version operated by the to-be-expanded controller is consistent with the system version operated by each controller of the cluster, and if not, the second SYS module triggers the operation maintenance module to communicate with the operation maintenance module of the main controller so as to realize that the system version of the to-be-expanded controller is consistent with the system version of each controller of the cluster.
In the embodiment of the invention, when the controller discovers the to-be-expanded controller, the application information of the to-be-expanded controller is acquired, and the to-be-expanded controller is added into the cluster of the controller according to the application information so as to expand the cluster. The controller can automatically expand the capacity of the controller, the capacity expansion efficiency is improved, the user operation is simple and convenient, and the user experience is improved.
Fig. 6 is a block diagram of another capacity expansion system according to an embodiment of the present invention. As shown in fig. 6, a capacity expansion system according to this embodiment may include the controller 1000 described in the above embodiment, the to-be-expanded controller 2000 described in the above embodiment, and the terminal device 3000 connected to the controller.
The terminal device 3000 is configured to display a control expansion state of a controller, receive an operation instruction of a user, and send the operation instruction to the controller to control a control expansion process of the controller.
In the embodiment of the invention, in order to facilitate the operation user to manage the cluster, the operation user can interact with the main controller of the cluster through the terminal equipment, so that the operation user can monitor the operation state of the main controller through the terminal equipment or control the operation of the main controller through the terminal equipment. The terminal device 3000 may be connected to a management monitoring module of the main controller, where the management monitoring module may obtain an operation state of the main controller and display the operation state through the terminal device 3000, and the management monitoring module obtains an operation instruction of the operation control through the terminal device 3000, and issues the operation instruction to a corresponding functional module for executing. The terminal device 300 may be a mobile phone, a computer, a tablet computer, or other terminal devices.
In the embodiment of the invention, when the controller discovers the to-be-expanded controller, the application information of the to-be-expanded controller is acquired, and the to-be-expanded controller is added into the cluster where the controller is located according to the application information, so that the automatic expansion of the cluster is performed. The controller can automatically expand the capacity of the clusters, the capacity expansion efficiency is improved, the user operation is simple and convenient, and the user experience is improved.
Those skilled in the art will appreciate that implementing all or part of the above-described methods in accordance with the embodiments may be accomplished by way of a computer program stored on a computer readable storage medium, which when executed may comprise the steps of the embodiments of the methods described above. The storage medium may be a magnetic disk, an optical disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), or the like.
The foregoing disclosure is illustrative of the present invention and is not to be construed as limiting the scope of the invention, which is defined by the appended claims.

Claims (13)

1. A method of expanding a volume, the method comprising:
When a to-be-expanded controller is actively found through broadcasting, acquiring attribute information of the to-be-expanded controller, wherein the to-be-expanded controller carries at least one hard disk frame, and each hard disk frame comprises at least one hard disk;
obtaining current configuration information of a cluster, wherein the cluster is a controller cluster, and the controller cluster comprises a plurality of controllers in a storage array;
generating new configuration information according to the attribute information and the current configuration information, and configuring the to-be-expanded controller and the cluster according to the new configuration information so that the to-be-expanded controller joins the cluster, wherein the new configuration information comprises first configuration information of the to-be-expanded controller and second configuration information of the cluster, the first configuration information is used for configuring the to-be-expanded controller, and the second configuration information is used for configuring each controller of the current cluster.
2. The method of claim 1, wherein when a to-be-expanded controller is found, the acquiring attribute information of the to-be-expanded controller comprises:
and when receiving the capacity expansion starting instruction, generating capacity expansion configuration parameters required by capacity expansion.
3. The method of claim 1, wherein the attribute information comprises a sequence number SN of the to-be-expanded controller, a medium access control MAC address of the to-be-expanded controller, and a version number of the to-be-expanded controller.
4. The method of claim 3, wherein generating new configuration information from the attribute information and the current configuration information further comprises:
and generating the new configuration information according to the attribute information, the current configuration information and the capacity expansion configuration information.
5. The method of claim 1, wherein the new configuration information comprises:
the number of controllers of the cluster after capacity expansion, the identity identification code ID of the to-be-expanded controller, the protocol IP address of interconnection between networks of the to-be-expanded controller, the gateway of the to-be-expanded controller, the mask of the to-be-expanded controller, the ID list of the controllers of the cluster after capacity expansion or the IP list of the controllers of the cluster after capacity expansion.
6. The method of any one of claims 1-5, further comprising:
judging whether the version number of the to-be-expanded controller is consistent with the version number of the cluster;
and when the version number of the to-be-expanded controller is inconsistent with the version number of the cluster, updating the version of the to-be-expanded controller so that the version of the to-be-expanded controller is consistent with the version of the cluster.
7. A controller, the controller comprising:
The device comprises an acquisition unit, a control unit and a control unit, wherein the acquisition unit is used for acquiring attribute information of a to-be-expanded controller when the to-be-expanded controller is actively found through broadcasting, the to-be-expanded controller carries at least one hard disk frame, and each hard disk frame comprises at least one hard disk;
the device comprises a joining unit, a storage unit and a processing unit, wherein the joining unit is used for obtaining current configuration information of a cluster, the cluster is a controller cluster, and the controller cluster comprises a plurality of controllers in a storage array; generating new configuration information according to the attribute information and the current configuration information, configuring the to-be-expanded controller and the cluster according to the new configuration information so as to enable the to-be-expanded controller to join the cluster,
the new configuration information comprises first configuration information of the to-be-expanded controller and second configuration information of the cluster, wherein the first configuration information is used for configuring the to-be-expanded controller, and the second configuration information is used for configuring each controller of the current cluster.
8. The controller of claim 7, wherein the controller further comprises:
and the generating unit is used for generating capacity expansion configuration parameters required by capacity expansion when receiving the capacity expansion starting instruction.
9. The controller of claim 7, wherein the attribute information includes a sequence number SN of the to-be-expanded controller, a MAC of the to-be-expanded controller, and a version number of the to-be-expanded controller.
10. The controller of claim 7, wherein the new configuration information comprises: the number of controllers of the cluster after capacity expansion, the identity identification code ID of the to-be-expanded controller, the protocol IP address of interconnection between networks of the to-be-expanded controller, the gateway of the to-be-expanded controller, the mask of the to-be-expanded controller, the ID list of the controllers of the cluster after capacity expansion or the IP list of the controllers of the cluster after capacity expansion.
11. The controller according to any one of claims 7 to 10, wherein the joining unit includes:
the judging subunit is used for judging whether the version number of the controller to be expanded is consistent with the version number of the cluster;
and the updating subunit is used for updating the version of the to-be-expanded controller when the judging subunit judges that the version number of the to-be-expanded controller is inconsistent with the version number of the cluster, so that the version of the to-be-expanded controller is consistent with the version of the cluster.
12. A capacity expansion system, characterized in that the system comprises a controller according to any one of claims 7-11 and a controller to be expanded connected to the controller, wherein,
the to-be-expanded controller is used for receiving the broadcast information sent by the controller, responding to the broadcast information and returning application information to the controller.
13. The system of claim 12, further comprising a terminal device coupled to the controller,
the terminal equipment is used for displaying the expansion control state of the real-time controller, receiving an operation instruction of a user, and sending the operation instruction to the controller so as to control the expansion control process of the controller.
CN202010614194.XA 2014-12-10 2014-12-10 Capacity expansion method, controller and system Active CN111934904B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010614194.XA CN111934904B (en) 2014-12-10 2014-12-10 Capacity expansion method, controller and system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410752019.1A CN105743671B (en) 2014-12-10 2014-12-10 Capacity expansion method, controller and system
CN202010614194.XA CN111934904B (en) 2014-12-10 2014-12-10 Capacity expansion method, controller and system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201410752019.1A Division CN105743671B (en) 2014-12-10 2014-12-10 Capacity expansion method, controller and system

Publications (2)

Publication Number Publication Date
CN111934904A CN111934904A (en) 2020-11-13
CN111934904B true CN111934904B (en) 2023-11-03

Family

ID=56238462

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202010614194.XA Active CN111934904B (en) 2014-12-10 2014-12-10 Capacity expansion method, controller and system
CN201410752019.1A Active CN105743671B (en) 2014-12-10 2014-12-10 Capacity expansion method, controller and system

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201410752019.1A Active CN105743671B (en) 2014-12-10 2014-12-10 Capacity expansion method, controller and system

Country Status (1)

Country Link
CN (2) CN111934904B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562382B (en) * 2017-08-30 2020-05-29 郑州云海信息技术有限公司 Automatic dynamic disk capacity expansion method and system based on timed task
CN109787792B (en) * 2017-11-10 2022-05-13 阿里巴巴集团控股有限公司 System for managing distributed service cluster
CN108418863B (en) * 2018-01-31 2021-06-04 深信服科技股份有限公司 Management method of controller cluster, SDN controller and storage medium
CN111782147A (en) * 2020-06-30 2020-10-16 北京百度网讯科技有限公司 Method and apparatus for cluster scale-up
CN112506444A (en) * 2020-12-28 2021-03-16 南方电网深圳数字电网研究院有限公司 Kubernetes cluster-based expansion and contraction capacity control method and device and electronic equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101873237A (en) * 2010-06-13 2010-10-27 用友软件股份有限公司 Method and system for dynamically maintaining member servers in cluster
CN103931138A (en) * 2011-10-17 2014-07-16 阿尔卡特朗讯 Scalable distributed multicluster device management server architecture and method of operation thereof
CN104092718A (en) * 2013-12-12 2014-10-08 腾讯数码(天津)有限公司 Distributed system and configuration information updating method in distributed system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100538617C (en) * 2006-07-11 2009-09-09 任永坚 Storage medium processing method and system
CN101493795A (en) * 2008-01-24 2009-07-29 杭州华三通信技术有限公司 Storage system, storage controller, and cache implementing method in the storage system
CN102148850B (en) * 2010-08-09 2014-08-06 华为软件技术有限公司 Cluster system and service processing method thereof
CN102819535A (en) * 2011-06-10 2012-12-12 戴尔产品有限公司 Data block migration
CN102412988A (en) * 2011-11-14 2012-04-11 浪潮(北京)电子信息产业有限公司 Service information system and method for realizing continuous operation by using same
CN102402616B (en) * 2011-12-22 2015-01-14 北京新媒传信科技有限公司 Method and system for realizing database cluster
CN203502802U (en) * 2013-09-27 2014-03-26 阳光电源股份有限公司 Converter module control system
CN103634375B (en) * 2013-11-07 2017-01-11 华为技术有限公司 Method, device and equipment for cluster node expansion
CN103826243B (en) * 2014-03-07 2017-04-12 东方通信股份有限公司 Rapid and flexible capacity adjusting method for digital trunked communication system base stations
CN104133776B (en) * 2014-07-14 2017-07-14 华为技术有限公司 Storage array automatic configuration method, device and storage system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101873237A (en) * 2010-06-13 2010-10-27 用友软件股份有限公司 Method and system for dynamically maintaining member servers in cluster
CN103931138A (en) * 2011-10-17 2014-07-16 阿尔卡特朗讯 Scalable distributed multicluster device management server architecture and method of operation thereof
CN104092718A (en) * 2013-12-12 2014-10-08 腾讯数码(天津)有限公司 Distributed system and configuration information updating method in distributed system

Also Published As

Publication number Publication date
CN111934904A (en) 2020-11-13
CN105743671B (en) 2020-07-14
CN105743671A (en) 2016-07-06

Similar Documents

Publication Publication Date Title
CN107995215B (en) Control method and device of intelligent household equipment and cloud platform server
CN111934904B (en) Capacity expansion method, controller and system
US20160191267A1 (en) Information Processing Method and Central Control Device
CN112738805A (en) Device control method and apparatus, storage medium, and electronic device
US10417061B2 (en) Operating method of routing device, routing device, and terminal device
EP3761605B1 (en) Vehicle diagnosis method, related device and system
CN110278568B (en) Method and network system for constructing networking based on network equipment
CN109981360B (en) Internet of things equipment site opening method, device and system and storage medium
CN110740460A (en) device network access method, device, network device and storage medium
CN112804730B (en) Equipment interconnection method, device, server, intelligent equipment and storage medium
CN106339236A (en) Software upgrading method, client, interphone and soft upgrading system
CN110769033A (en) Intelligent networking method and system
CN104956353A (en) Automatic determination of device specific interoperability
CN113572862A (en) Cluster deployment method and device, electronic equipment and storage medium
CN115514667A (en) Access service processing method, system, device, electronic equipment and storage medium
CN112202877A (en) Gateway linkage method, gateway, cloud server and user terminal
TWI482461B (en) Device management system and method
CN106452828A (en) Provision protocol transmission-based terminal configuration method and system
CN113794996A (en) Device communication method, device control method, device communication apparatus, electronic device, and storage medium
CN104601679B (en) Equipment soft method, mobile terminal and server
KR20150088462A (en) Method for linking network device in cloud environment and apparatus therefor
CN111935651B (en) Cluster service implementation method, device, medium, base station and system
CN112351074A (en) Network distribution method and device, electronic equipment and storage medium
CN106302046A (en) Control method for remote controller and device
CN114125883A (en) Network access method and device of intelligent device, electronic device and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant