A method, device and medium for deploying a replication network of a distributed block storage system

By distinguishing the local and remote properties of the object manager in the distributed block storage system and using an independent replication network for cross-cluster data transmission, the problems of public network bandwidth occupation and network isolation are solved, and the system performance and stability are improved.

CN119583574BActive Publication Date: 2025-10-17INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411833179.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-12
Publication Date
2025-10-17
Estimated Expiration
2044-12-12

AI Technical Summary

Technical Problem

In existing distributed block storage systems, the integrated deployment of replication networks and public networks causes inter-cluster data transmission to occupy public network bandwidth, affecting system performance and violating the internal network isolation deployment requirements.

Method used

By additionally marking local or remote attributes when creating an object manager in a distributed block storage system, an independent replication network is used for cross-cluster data transmission. The public network is used for data processing within the cluster, and the replication network is used for cross-cluster data processing, ensuring that the two use different network segments.

Benefits of technology

This ensures that cross-cluster data transmission does not occupy public network bandwidth, improves system resource utilization and stability, and meets network isolation requirements in practical applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119583574B_ABST
    Figure CN119583574B_ABST
Patent Text Reader

Abstract

The application discloses a replication network deployment method and device of a distributed block storage system and a medium, relates to the technical field of distributed storage, and aims to provide an independent replication network and a method for solving the problem that a traditional scheme needs to be based on a fusion replication network. When an Objecter is created in the DBS, additional local or remote attributes are indicated. The local Objecter realizes data processing in the cluster through the public network, and the remote Objecter realizes cross-cluster data processing through the replication network. Based on the above setting, the method can be implemented in block remote replication and block dual-live implementation. For cross-cluster data transmission, an independent replication network can be used, the public network bandwidth is not occupied, the overall performance of the system is prevented from being reduced due to the influence of effective data transmission bandwidth, and the resource utilization of the storage system is greatly improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of distributed storage, in particular to a replication network deployment method and device of a distributed block storage system and a medium. BACKGROUND

[0002] With the advancement of the digitalization process of various industries, data has gradually become the core of enterprise operation, and users have increasingly high requirements for the stability of storage systems that carry data. Although storage devices with extremely high stability have appeared, they still cannot prevent the destruction of production systems caused by various natural disasters and other irresistible forces. In order to ensure the continuity, recoverability and high availability of business data, remote disaster recovery backup solutions have emerged, and remote replication and dual-active technology are one of the key technologies in remote disaster recovery backup solutions.

[0003] At present, the block dual-active and block remote replication features only support converged replication networks, that is, the replication (Replica) network and the public (Public) network are deployed in a converged manner, and the two networks use the same network port and Internet Protocol (IP) address. However, under this scheme, cross-cluster data transmission is achieved by connecting the Public networks of the two storage clusters and setting them in the same network segment, that is, the replication service and business process of the local storage cluster (local cluster) directly act as the client of the remote storage cluster (remote cluster), connect the remote storage cluster through the Public network, and write data to the remote storage cluster. However, this scheme has the following defects:

[0004] 1. The data transmission between clusters occupies the Public network bandwidth. In a large-bandwidth business model, the Public network bandwidth often becomes the performance bottleneck of the entire system. If it is used for data transmission between clusters, the effective data transmission bandwidth of the entire system will decrease, and the performance of the entire system will not be optimal.

[0005] 2. In actual project implementation, the Public network and the cluster (Cluster) network are generally deployed in a converged manner (i.e., a back-end converged deployment manner). The back-end network is generally isolated from the outside as an internal network of the storage cluster. However, in the above-mentioned converged replication network manner, data transmission between two clusters is required through the replication network, which violates the original requirement of internal network isolation deployment. Therefore, the above-mentioned scheme is limited in actual application scenarios and cannot meet the needs of external isolation of the back-end network.

[0006] Therefore, there is an urgent need in the art for a replication network deployment method of a distributed block storage system to solve the problems of occupying Public network bandwidth and limited application scenarios in traditional schemes. SUMMARY

[0007] The application aims to provide a replication network deployment method, device and medium for a distributed block storage system, to solve the problem of occupying Public network bandwidth and limited application scenarios in the prior art.

[0008] To solve the above technical problems, the application provides a replication network deployment method for a distributed block storage system, comprising:

[0009] When receiving a data processing request, if a target object of the data processing request belongs to a local cluster, the data processing request is forwarded to a local object manager, and if the target object belongs to a remote cluster, the data processing request is forwarded to a remote object manager; wherein the local object manager and the remote object manager are attributes marked by a database system when creating an object manager for the object manager;

[0010] When the local object manager receives the data processing request, the local cluster is connected through a public network to perform data processing within the cluster;

[0011] When the remote object manager receives the data processing request, the remote cluster is connected through a replication network to perform cross-cluster data processing;

[0012] Wherein, the public network and the replication network use different network segments.

[0013] In a possible embodiment, the method further comprises:

[0014] The object storage daemon creates a message communication module when starting;

[0015] The message communication module interacts with a monitoring service end of the local cluster through the replication network, and the monitoring service end allocates a listening port for the message communication module;

[0016] The object storage daemon obtains an Internet Protocol address of the replication network of the local node according to the network segment of the replication network, and obtains the allocated listening port from the message communication module, and binds the Internet Protocol address of the replication network and the listening port for listening;

[0017] The object storage daemon adds the Internet Protocol address of the replication network and the listening port bound by the object storage daemon in the startup state information reported to the monitoring service end;

[0018] The monitoring server constructs a new object storage daemon information mapping after collecting the startup state information reported by the object storage daemon of each node in the local cluster, and pushes it to all monitoring clients to establish a remote communication connection between clusters through the replication network.

[0019] In a possible embodiment, the method further comprises:

[0020] determining whether the current software version of the local cluster supports the independent replication network, and if not, upgrading the software version of the local cluster to a version that supports the independent replication network;

[0021] debugging the network card according to the preset replication network configuration information to obtain a network card that supports the replication network;

[0022] expanding the network card of each node in the local cluster to increase the network card that supports the replication network;

[0023] configuring the network segment of each node in the local cluster with respect to the replication network;

[0024] restarting each node in the local cluster to make the network segment configuration of the replication network effective.

[0025] In a possible embodiment, each node in the local cluster comprises a plurality of groups; wherein the nodes of different groups are used to create different storage pools;

[0026] The network card expansion of each node in the local cluster to increase the network card that supports the replication network comprises:

[0027] The nodes of each group perform the node expansion process in parallel; the node expansion process comprises: powering off each node in the group in turn, adding the network card that supports the replication network to each node, and powering on each node again;

[0028] When the powered-off node in any group is a monitoring node, the other groups are prohibited from powering off the monitoring node.

[0029] In a possible embodiment, the method further comprises:

[0030] a heartbeat mechanism is established between any node in the local cluster and all nodes in the remote cluster through the replication network;

[0031] each node periodically detects the state of the replication network interface of the node, and detects the state of the replication network path between the node and all nodes in the remote cluster through the heartbeat mechanism;

[0032] If any node detects that the state of the replication network interface of the node is abnormal or recovers after being abnormal, or detects that the state of the replication network path is abnormal or recovers after being abnormal, a database system script or command is called to report abnormal information.

[0033] In a possible embodiment, after the method detects that the state of the replication network interface of the node is abnormal or recovers after being abnormal, or detects that the state of the replication network path is abnormal or recovers after being abnormal, and calls a database system script or command to report fault information, the method further includes:

[0034] If the proportion of the replication network paths that are judged to be abnormal in the total number exceeds a first preset proportion, it is judged that the replication network is faulty, and a database system script or command is called to report fault information.

[0035] If the proportion of the replication network paths that are judged to be normal in the total number exceeds a second preset proportion after the replication network is judged to be faulty, it is judged that the replication network recovers.

[0036] The second preset proportion is greater than the first preset proportion.

[0037] In a possible embodiment, the method further includes:

[0038] If the replication network is faulty in one of the local cluster and the remote cluster, the database system script or command is used to notify all online remote replication pairs to switch, and notify all dual-active pairs to initiate arbitration and switching.

[0039] To solve the above technical problems, the application further provides a replication network deployment device of a distributed block storage system, which includes:

[0040] A request forwarding module is configured to, when receiving a data processing request, forward the data processing request to a local object manager if the target object of the data processing request belongs to a local cluster, or forward the data processing request to a remote object manager if the target object belongs to a remote cluster, wherein the local object manager and the remote object manager are attributes of the object manager marked by a database system when creating the object manager.

[0041] A local processing module is configured to, when the local object manager receives the data processing request, connect the local cluster through a public network to perform data processing in the cluster.

[0042] A remote processing module is configured to replicate a network to connect the remote clusters for cross-cluster data processing when the remote object manager receives the data processing request, wherein the public network and the replication network use different network segments.

[0043] To solve the above technical problems, the application further provides a replication network deployment device of a distributed block storage system, comprising:

[0044] a memory for storing a computer program;

[0045] a processor for executing the computer program to implement the steps of the replication network deployment method of the distributed block storage system.

[0046] To solve the above technical problems, the application further provides a non-volatile storage medium, wherein the non-volatile storage medium stores a computer program, and the computer program is executed by a processor to implement the steps of the replication network deployment method of the distributed block storage system.

[0047] The application provides a replication network deployment method of a distributed block storage system, which comprises the following steps: when an object manager (Objecter) is created in a database system (DBS) in a remote disaster recovery backup system, the property of the local end or the remote end of the Objecter is additionally indicated; a data processing request in a cluster is sent to a local end Objecter, and a data processing request between clusters is sent to a remote end Objecter; when the Objecter is indicated as the local end Objecter, the Objecter realizes data processing in the local end cluster (namely, data or metadata in the local end cluster is accessed) through a public network; when the Objecter is indicated as the remote end Objecter, the Objecter realizes cross-cluster data processing (namely, data or metadata in a remote end cluster is accessed) through a replication network. Based on the above setting, the method can realize block remote replication and block dual-live, and the cross-cluster data transmission can be realized through an independent replication network, so that the public network bandwidth is not occupied, the system overall performance is not affected by the decrease of the effective data transmission bandwidth, and the resource utilization of the storage system is greatly improved.

[0048] The replication network deployment device of the distributed block storage system and the non-volatile storage medium provided by the application correspond to the above method and have the same effect. BRIEF DESCRIPTION OF DRAWINGS

[0049] In order to more clearly illustrate the embodiments of the present application, the drawings needed in the embodiments will be briefly introduced as follows. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative effort on the basis of these drawings.

[0050] Figure 1 A flow chart of a replication network deployment method of a distributed block storage system provided by an embodiment of the present application;

[0051] Figure 2 An architecture and a flow chart of a replication network deployment provided by an embodiment of the present application;

[0052] Figure 3 An OSD processing flow chart provided by an embodiment of the present application;

[0053] Figure 4 A structure diagram of a replication network deployment device of a distributed block storage system provided by an embodiment of the present application;

[0054] Figure 5 A structure diagram of another replication network deployment device of a distributed block storage system provided by an embodiment of the present application. DETAILED DESCRIPTION

[0055] The technical solutions in the embodiments of the present application will be described clearly and completely in combination with the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative effort are within the protection scope of the present application.

[0056] The core of the present application is to provide a replication network deployment method, device and medium of a distributed block storage system.

[0057] In order to make those skilled in the art better understand the present application, the present application will be further described in detail in combination with the drawings and specific embodiments.

[0058] In the related art, the block dual-active and block remote replication features usually only support a converged replication network, that is, a Replica network and a Public network converged deployment, both of which use the same network port and Internet Protocol (IP). In other words, the original Public network is multiplexed as the Replica network to meet the data transmission needs of the block dual-active and block remote replication. In this way, cross-cluster data transmission is achieved by connecting the Public networks of the two storage clusters and setting them in the same network segment, that is, the replication service and other business processes of the local cluster directly serve as the client of the remote cluster, connect the remote cluster through the Public network, and write data to the remote cluster. However, this deployment method has two prominent problems:

[0059] 1) The data transmission between clusters occupies the Public network bandwidth.

[0060] In a large-bandwidth business model, the Public network bandwidth often becomes the performance bottleneck of the entire system. If it is used for data transmission between clusters, the effective data transmission bandwidth of the entire system will decrease, thereby causing the system performance to be unable to reach the best.

[0061] 2) In actual implementation projects, a Public network and Cluster network converged deployment method (that is, a back-end converged deployment method) is generally used. The back-end network as the internal network of the storage cluster generally needs to be isolated from the outside. In the converged replication network method, data transmission needs to be performed between the two clusters through the Replica network, which violates the original internal network isolation deployment requirement.

[0062] Therefore, to solve the above problems, the present application provides a replication network deployment method of a distributed block storage system, as shown in Figure 1 , which comprises:

[0063] S11: When a data processing request is received, if the target object of the data processing request belongs to the local cluster, the data processing request is forwarded to the local object manager, and if the target object belongs to the remote cluster, the data processing request is forwarded to the remote object manager.

[0064] Among them, the local object manager and the remote object manager are attributes marked by the database system when creating the object manager.

[0065] S12: When the local object manager receives the data processing request, the local cluster is connected through the Public network to perform data processing within the cluster.

[0066] S13: When the remote object manager receives the data processing request, the remote cluster is connected through the Replica network to perform cross-cluster data processing.

[0067] wherein the public network and the replication network use different network segments.

[0068] It should be noted that the above-mentioned local cluster and remote cluster are a relative concept, and do not specifically refer to two clusters. In a system composed of multiple clusters deployed with block remote replication and block dual-active, the local cluster to which the object manager belongs is the local cluster for itself. Similarly, other clusters are relatively remote clusters. In actual applications, although block remote replication and block dual-active are generally deployed on two clusters, i.e., the two clusters are the remote clusters of each other. However, in other possible scenarios, if there are three or more clusters in the system, then each cluster has more than one remote cluster.

[0069] As can be seen from the above, the key to solving the problems existing in the traditional replication network fusion deployment scheme is to enable the cross-cluster data transmission in block remote replication and block dual-active to use an independent replication network, so as to not occupy the bandwidth of the original public network. However, it is easy to deploy multiple independent networks, and how to enable block remote replication and block dual-active to use an independent replication network to realize cross-cluster data transmission becomes a more important problem.

[0070] In the present method, whether it is a local cluster or a remote cluster, each cluster needs to additionally specify the local / remote attribute of the object manager when creating an object manager (Objecter). It should be noted that the local / remote attribute is not the original Objecter attribute, and the present method adds an additional Objecter attribute based on the need. Among them, the object manager indicated as local is used to process data processing requests within the cluster. That is, when the cluster receives a data processing request that only involves data stored in the local cluster, the data processing request is handed over to the local object manager for processing. The local object manager connects the local cluster through the public network to perform data processing within the cluster. As for the object manager indicated as remote, it is used to process data processing requests of other clusters (i.e., remote clusters). When the cluster receives a data processing request that requests data stored in other clusters, the data processing request needs to be handed over to the remote object manager for processing. The remote object manager connects the corresponding remote cluster through a replication network independent of the public network, and then performs cross-cluster data processing.

[0071] Based on the above settings, based on the replication network deployment method of the distributed block storage system provided by the application, the cross-cluster data transmission in block remote replication and block dual-active can be performed using an independent replication network, without occupying the bandwidth of the original public network, avoiding the decline of the overall performance of the system caused by the influence of the effective data transmission bandwidth of the system. In addition, the reason why the method specially distinguishes whether the object manager is local or remote is that, in addition to block remote replication or dual-active services, there may be services that are only connected to the local end. For these services, the replication network does not need to be used. In addition, the replication network is only used for cross-cluster data transmission, which is convenient for operation and maintenance personnel to control and monitor network traffic, better meets the needs of actual system operation, and is beneficial to improve the stability and reliability of system operation.

[0072] On the other hand, it should be noted that the replication network deployment method of the distributed block storage system provided by the above embodiment is to provide a method for using the independent replication network to achieve cross-cluster data transmission based on independent replication network in block remote replication and block dual-active after the independent replication network has been deployed. For the deployment and effectiveness process of the replication network, the embodiment also provides a possible implementation scheme, and the above method further comprises:

[0073] S21: The object storage daemon creates a message communication module when starting.

[0074] S22: The message communication module interacts with the monitoring service end of the local cluster through the replication network, and the monitoring service end allocates a listening port for the message communication module.

[0075] S23: The object storage daemon obtains the Internet Protocol address of the replication network of the local node according to the network segment of the replication network, and obtains the allocated listening port from the message communication module, and binds the Internet Protocol address of the replication network and the listening port for listening.

[0076] S24: The object storage daemon adds the Internet Protocol address of the replication network bound by the object storage daemon and the listening port in the startup state information reported to the monitoring service end.

[0077] S25: After collecting the startup state information reported by the object storage daemon of each node in the local cluster, the monitoring service end constructs a new object storage daemon information mapping and pushes it to all monitoring clients to establish a remote communication connection between clusters through the replication network.

[0078] To further illustrate the replication network deployment and effectiveness scheme provided by the embodiment and the relationship between steps S11-S13 provided by the above embodiment, as Figure 2As shown, the embodiment provides a complete fusion replication network modification process. For each cluster in the system, the architecture and process are as shown in Figure 2 It should be noted that Figure 2 The red arrow part in indicates that this step involves cross-cluster interaction.

[0079] 1. Object storage daemon (OSD): The OSD creates a message communication module (Messenger) of the replication network when starting.

[0080] 2. Network (replication network and public network): The Messenger and the monitoring server (MonServer) interact through the replication network. The MonServer assigns a listening port to the Messenger.

[0081] 3. OSD: The OSD obtains the IP address of the replication network of the node according to the pre-configured replication network segment, and obtains the assigned listening port from the Messenger. Then, the OSD binds the IP address and the listening port of the replication network and listens. Then, the OSD adds the replication network information (i.e., the replication network IP address and the listening port corresponding to the node) of the OSD to the boot message reporting the startup state information of the MonServer.

[0082] 4. MonServer: The MonServer cluster collects the startup state information reported by each OSD to construct a new version of object storage daemon information mapping (OSDMap), and pushes the OSDMap to all monitoring clients (MonClient).

[0083] Based on the above steps, the independent replication network is completed and takes effect. Subsequently, the cross-cluster data transmission in block remote replication and block dual-active can be based on the independent replication network. Specifically, as shown in Figure 2 That is, the above process further includes:

[0084] 5. Database system (DBS): The DBS connects the local cluster to create a local object manager (Objecter) through the public network. The DBS connects the remote cluster to create a remote Objecter through the replication network. The local data writing or metadata access is performed through the local Objecter, and the remote data writing or metadata access is performed through the remote Objecter.

[0085] 6、OSD: When the Objecter receives a data or metadata read / write request, if the Objecter is indicated as a local Objecter, a connection is established using the public network (the IP address and listening port of the public network) for intra-cluster data and metadata access. If the Objecter is a remote Objecter, a connection is established using the replication network (the IP address and listening port of the replication network) for cross-cluster data and metadata access.

[0086] On the other hand, based on the above and Figure 2 the flow shown in the figure, the embodiment also provides an OSD-side processing flow from the OSD side. The OSD processing flow is as shown in the figure. Figure 3 Figure 3 A flow is given for how a local Objecter of a cluster establishes a communication connection with a remote cluster through a replication network to perform cross-cluster data interaction.

[0087] In addition, for the boot message sent by the OSD, the embodiment also provides a corresponding implementation scheme. The above method further includes:

[0088] S26: A replication network configuration item is added in the configuration file of the cluster.

[0089] S27: In the main function (main()) of the configuration file, if the replication network configuration item is not empty, it indicates that the replication network has an independent physical network. At this time, a message communication module of the replication network is created and passed to the OSD.

[0090] S28: If the replication network configuration item is empty, it indicates that the replication network uses a converged configuration, and the method is exited.

[0091] That is, when the branch of step S28 is entered, it indicates that the user does not need an independent replication network, and then the traditional converged replication network flow can be used, without creating a Messenger of the replication network and passing the Messenger to the OSD.

[0092] S29: The OSD processes the OSDMap and sends a boot message to the Monitor.

[0093] The boot message carries replication network information, that is, the replication network IP address and listening port allocated to the OSD in step S23.

[0094] The embodiment provides a replication network configuration scheme, based on the configuration of the user in the configuration file, an independent replication network can be deployed. In addition, if the user does not need to deploy an independent replication network, the replication network configuration item can be set as empty by default, and then the traditional converged replication network deployment scheme is used to realize more flexible replication network deployment.​

[0095] On the other hand, as known from the above embodiments, the user can select to deploy the replication network as an independent replication network or a fusion replication network by modifying the replication network configuration item in the configuration file. However, for a replication network that has been deployed in the fusion mode, how to transform it into the independent replication network required by the present method, the present embodiment further provides a replication network transformation scheme. Specifically, the present method further includes:

[0096] S31: determining whether the current software version of the local cluster supports the independent replication network, and if not, upgrading the software version of the local cluster to a version that supports the independent replication network.

[0097] S32: completing the debugging of the network card according to the preset replication network configuration information to obtain a network card that supports the replication network.

[0098] S33: expanding the network card of each node in the local cluster to increase the network card that supports the replication network.

[0099] S34: completing the network segment configuration of the replication network for each node in the local cluster.

[0100] Among them, all nodes (icfs.conf) in all clusters need to complete the configuration of the replication network segment.

[0101] S35: restarting each node in the local cluster to make the network segment configuration of the replication network effective.

[0102] Among them, after step S35, the OSDMAP new version will contain the replication network IP information of each OSD service. The OSD remote connection will determine whether to continue using the original public network IP for connection or to connect through the newly effective replication network IP according to whether the local and remote ends have both made the replication network IP effective.

[0103] Specifically, for step S31, as known from the above embodiments, the present method requires certain additional operations (such as steps S21-S25) to deploy the independent replication network and make it effective. Therefore, before transforming the fusion replication network into an independent replication network, it is first necessary to determine whether the software version of each cluster supports the independent replication network (i.e., whether the software of the cluster has deployed the replication network deployment method provided in the above embodiments). If not, the software version of the cluster is first upgraded (to a version that supports the replication network deployment method provided in the above embodiments), and then the subsequent independent replication network transformation scheme is performed.

[0104] For step S32, the independent replication network implementation needs to insert the newly added network card in the node, and step S32 is the process of debugging the newly added network card. Since the network segment of the replication network is pre-configured, how to debug the network card is known to those skilled in the art, and the embodiment will not be repeated.

[0105] For steps S33-S35, it is the step of powering off the node, inserting the newly added network card, and configuring the newly inserted network card to take effect. The embodiment also does not need to be repeated. However, further, when the node is powered off for network card expansion, the general implementation scheme is to power off one node at a time, power on after adding the network card to the powered-off node, configure the replication network IP of the node, and complete the network debugging before performing the network card expansion of the next node. However, this network card expansion implementation scheme is low in efficiency, and the embodiment provides another node network card expansion scheme based on this:

[0106] Each node in the local cluster includes a plurality of groups. The nodes of different groups are used to create different storage pools.

[0107] And step S33 is specifically:

[0108] The nodes of each group perform the node expansion process in parallel.

[0109] The node expansion process includes powering off the nodes in the group in turn, adding a network card supporting the replication network to each node, and powering on again. When the powered-off node in any group is a monitoring node, the monitoring node of other groups is prohibited from being powered off.

[0110] That is, the embodiment is based on the feature that the storage nodes are usually divided into multiple groups to create storage pools in large-scale clusters. The node grouping unit is used to perform the network card expansion of the nodes of each group in parallel. In addition, only one node in a group is powered off at the same time, but in the embodiment, additional attention is paid to whether the powered-off node is a monitor (MON) node, and it is necessary to ensure that multiple monitor nodes cannot be powered off at the same time in any cluster (powering off is equivalent to node failure). That is, it is ensured that the monitor function of the cluster is always available during the modification of the replication network, and a more stable and reliable independent replication network modification scheme is realized.

[0111] On the other hand, the embodiment also provides a replication network high-availability scheme, and the above method further includes:

[0112] S41: A heartbeat mechanism is established between any node in the local cluster and all nodes of the remote cluster through the replication network.

[0113] S42: Each node periodically detects the state of the replication network port of the node, and detects the state of the replication network path between the node and all nodes in the remote cluster through the heartbeat mechanism.

[0114] S43: If any node detects that the state of the replication network interface of the node is abnormal or recovers after being abnormal, or detects that the state of the replication network path is abnormal or recovers after being abnormal, a database system script or command is called to report abnormal information.

[0115] As can be seen from the above, the embodiment provides a replication network high-availability scheme realized based on a heartbeat mechanism. For all clusters (assuming two clusters) in the system, all nodes in each cluster are taken as a group of nodes, and each group of nodes needs to establish a heartbeat mechanism with all nodes in other groups to detect whether the network path between two nodes is normal (since the two nodes belong to different groups, the network path must be a cross-cluster network path, that is, a replication network path). In addition to periodically detecting the state of the replication network interface of the node, each node also needs to detect the state of the network path with all nodes in another group based on the heartbeat mechanism, based on which the judgment of whether the replication network is abnormal can be realized. A replication network fault and abnormality detection scheme is provided for operation and maintenance personnel, and the high availability of the replication network is realized.

[0116] Further, for how to determine that the replication network is abnormal or recovers, the above embodiment does not make a limitation but a possible implementation scheme is provided in the embodiment, after step S43, the method further includes:

[0117] S44: If the proportion of the replication network paths judged to be abnormal to the total number exceeds a first preset proportion, it is judged that the replication network is faulty, and a database system script or command is called to report fault information.

[0118] S45: If the replication network is judged to be faulty, and the proportion of the replication network paths judged to be normal to the total number exceeds a second preset proportion, it is judged that the replication network recovers.

[0119] The second preset proportion is greater than the first preset proportion. In a possible embodiment, the first preset proportion can be taken as 1 / 2, and the second preset proportion can be taken as 2 / 3. That is, the replication network is considered to be faulty according to the over half principle, and the replication network is considered to have recovered according to the over 2 / 3 principle.

[0120] It is particularly necessary to note that in actual application, block remote replication and block dual-active are generally arranged in dual clusters, and the two clusters are mostly set as one master and one slave, and there is a distinction between the master cluster and the slave cluster between the two clusters. In this scenario, if it is for block remote replication, the above method S41-S45 can be performed only by the master cluster, and meanwhile, the information reporting of step S43 and step S44 can also be reported only by the master cluster. However, for block dual-active, the detection and reporting of the above steps S41-S45 need to be performed by both clusters.

[0121] In addition, this embodiment also provides a further high-availability solution for the replication network. The above method further includes:

[0122] S46: If a replication network failure occurs in one of the local cluster or the remote cluster, all online remote replication pairs are notified through database system scripts or commands to perform a switchover, and all active-active pairs are notified to initiate arbitration and switchover.

[0123] This embodiment provides a solution for situations where a network failure occurs beyond the fault domain of one end of the system. In this case, the high-availability solution provided by this embodiment can quickly identify the failure and notify the business process to perform active-active or remote replication task switching, preventing business interruptions and ensuring business continuity.

[0124] In addition to the embodiments of the method for deploying a replicated network for a distributed block storage system provided in the above embodiments, the present invention also provides corresponding embodiments of a computer program product. The computer program product includes a computer program / instructions that, when executed by a processor, implement the steps of the method for deploying a replicated network for a distributed block storage system as described in any of the above embodiments.

[0125] Since the embodiments of the computer program product part correspond to the embodiments of the method part, please refer to the description of the embodiments of the method part for the embodiments of the computer program product part, and will not be repeated here.

[0126] In the above embodiments, a method for deploying a replication network for a distributed block storage system is described in detail. The present invention also provides a corresponding embodiment of an apparatus for deploying a replication network for a distributed block storage system. It should be noted that the present invention describes the apparatus embodiments from two perspectives: one based on functional modules and the other based on hardware.

[0127] Based on the perspective of functional modules, this embodiment provides a replication network deployment device for a distributed block storage system, such as Figure 4 Shown, including:

[0128] The request forwarding module 11 is used to forward the data processing request to the local object manager when receiving the data processing request if the target object of the data processing request belongs to the local cluster, and to forward the data processing request to the remote object manager if the target object belongs to the remote cluster; wherein the local object manager and the remote object manager are attributes additionally marked for the object manager by the database system when creating the object manager.

[0129] The local processing module 12 is configured to connect to the local cluster via a public network to perform data processing within the cluster when the local object manager receives a data processing request.

[0130] The remote processing module 13 is configured to replicate the network connection remote cluster to perform cross-cluster data processing when the remote object manager receives a data processing request; wherein the public network and the replication network use different network segments.

[0131] Since the embodiments of the device part correspond to the embodiments of the method part, the embodiments of the device part are described in the description of the embodiments of the method part, and will not be described here.

[0132] Figure 5 A structural diagram of a replication network deployment device of a distributed block storage system according to another embodiment of the present application is shown in FIG. 2. The replication network deployment device of the distributed block storage system includes a storage 20 for storing a computer program, a processor 21 for executing the computer program to implement the steps of the replication network deployment method of the distributed block storage system according to any one of the above embodiments. Figure 5

[0133] The processor 21 is configured to execute the computer program to implement the steps of the replication network deployment method of the distributed block storage system according to any one of the above embodiments.

[0134] The replication network deployment device of the distributed block storage system according to the embodiment can include but is not limited to a mobile terminal, a personal computer, a workstation, etc.

[0135] The processor 21 can include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 21 can be implemented in at least one of a hardware form of a digital signal processor (DSP), a field-programmable gate array (FPGA), a programmable logic array (PLA). The processor 21 can also include a main processor and a coprocessor. The main processor is a processor for processing data in an awake state, also known as a central processing unit (CPU). The coprocessor is a low-power processor for processing data in a standby state. In some embodiments, the processor 21 can be integrated with a graphics processor (GPU) for rendering and drawing the content to be displayed by the display screen. In some embodiments, the processor 21 can also include an artificial intelligence (AI) processor for processing machine learning-related computing operations.

[0136] ​The memory 20 can include one or more computer-readable storage media that can be non-transitory. The memory 20 can also include high-speed random access memory and nonvolatile, computer-readable storage media such as one or more magnetic disk storage devices, flash memory devices. In this embodiment, the memory 20 is at least used to store the following computer program 201, wherein the computer program is loaded and executed by the processor 21, and can realize the related steps of the replication network deployment method of the distributed block storage system disclosed in any of the foregoing embodiments. In addition, the resources stored by the memory 20 can also include an operating system 202 and data 203, etc., and the storage mode can be temporary storage or permanent storage. The operating system 202 can include Windows, Unix, Linux, etc. The data 203 can include but is not limited to the replication network deployment method of the distributed block storage system, etc.

[0137] In some embodiments, the replication network deployment apparatus of the distributed block storage system can also include a display screen 22, an input and output interface 23, a communication interface 24, a power supply 25, and a communication bus 26.

[0138] Those skilled in the art can understand that, Figure 5 The structure shown in the above-mentioned embodiments does not constitute a limitation on the replication network deployment apparatus of the distributed block storage system, and can include more or fewer components than those shown in the figure.

[0139] The replication network deployment apparatus of the distributed block storage system provided by the embodiments of the present application includes a memory and a processor, and the processor can realize the following method when executing the program stored in the memory: a replication network deployment method of a distributed block storage system.

[0140] Finally, the present application also provides an embodiment corresponding to a non-volatile storage medium. The non-volatile storage medium stores a computer program, and the computer program is executed by a processor to realize the steps recorded in the above-mentioned method embodiments.

[0141] It can be understood that if the method in the above-mentioned embodiments is realized in the form of a software function unit and sold or used as an independent product, it can be stored in a non-volatile storage medium. Based on such understanding, the technical solutions of the present application essentially or the part that contributes to the prior art or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, and executes all or part of the steps of the method described in each embodiment of the present application. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (Read-Only Memory, ROM), a random access memory (Random Access Memory, RAM), a magnetic disk or an optical disk, and various media that can store program codes.

[0142] The foregoing describes in detail a replication network deployment method, device and medium of a distributed block storage system provided by the present application. Each embodiment in the specification is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be understood by referring to each other. For the device disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple, and the relevant parts can be understood by referring to the method part. It should be pointed out that for ordinary skilled in the art, without departing from the principles of the present application, the present application can be improved and modified in several ways, and these improvements and modifications also fall within the protection scope of the present application.

[0143] It should also be noted that in this specification, the relationship terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between the entities or operations. Moreover, the terms "include", "contain" or any other variants thereof are intended to cover non-exclusive inclusion, so that the process, method, article or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such process, method, article or device. Without further limitation, the element defined by the statement "including a" does not exclude the presence of other identical elements in the process, method, article or device including the element.

Claims

1. A replication network deployment method for a distributed block storage system, characterized in that: include: When receiving a data processing request, if the target object of the data processing request belongs to the local cluster, the data processing request is forwarded to the local object manager; if the target object belongs to the remote cluster, the data processing request is forwarded to the remote object manager; wherein the local object manager and the remote object manager are attributes additionally marked for the object manager by the database system when creating the object manager; When the local object manager receives the data processing request, it connects to the local cluster via a public network to perform data processing within the cluster; When the remote object manager receives the data processing request, it connects to the remote cluster via the replication network to perform cross-cluster data processing; Wherein, the public network and the replication network use different network segments; The method further comprises: The object storage daemon creates a message communication module when it starts; The message communication module interacts with the monitoring server of the local cluster through the replication network, and the monitoring server allocates a listening port to the message communication module; The object storage daemon process obtains the Internet Protocol address of the replication network of the local node according to the network segment of the replication network, obtains the allocated listening port from the message communication module, and binds the Internet Protocol address of the replication network and the listening port for monitoring; The object storage daemon process adds the Internet protocol address of the replication network bound to the object storage daemon process and the listening port to the startup status information reported to the monitoring server; After collecting the startup status information reported by the object storage daemon of each node in the local cluster, the monitoring server constructs a new object storage daemon information map and pushes it to all monitoring clients to establish a remote communication connection between clusters through the replication network; The method further comprises: Completing the debugging of the network card according to the preset duplicate network configuration information to obtain a network card that supports the duplicate network; Expanding the network card capacity of each node in the local cluster to add a network card that supports the replication network; Complete the network segment configuration of the replication network for each node in the local cluster; Restart each node in the local cluster to make the network segment configuration of the replication network take effect.

2. The method for deploying a replication network of a distributed block storage system according to claim 1, wherein: Before completing the debugging of the network card according to the preset duplicate network configuration information to obtain the network card supporting the duplicate network, the method further includes: Determine whether the current software version of the local cluster supports an independent replication network. If not, upgrade the software version of the local cluster to a version that supports an independent replication network.

3. The method for deploying a replication network of a distributed block storage system according to claim 2, wherein: Each node in the local cluster includes multiple groups; wherein nodes in different groups are used to create different storage pools; Then, the step of expanding the network card capacity of each node in the local cluster to add a network card that supports the replication network includes: The nodes of each group perform a node expansion process in parallel; the node expansion process includes: powering off each node in the group in turn, adding a network card supporting the replication network to the node, and then powering it back on; When the node to be powered off in any of the groups is a monitoring node, the other groups are prohibited from powering off the monitoring node.

4. The method for deploying a replication network of a distributed block storage system according to any one of claims 1 to 3, wherein: The method further comprises: A heartbeat mechanism is established between any node in the local cluster and all nodes in the remote cluster via the replication network; Each node periodically detects the status of the replication network port of the node, and detects the status of the replication network path between the node and all nodes in the remote cluster through the heartbeat mechanism; If any node detects that the state of the replication network port of the node is abnormal or recovered after being abnormal, or detects that the state of the replication network path is abnormal or recovered after being abnormal, it calls the database system script or command to report the abnormal information.

5. The method for deploying a replication network of a distributed block storage system according to claim 4, wherein: If any node detects that the state of the replication network port of the node is abnormal or recovers after the abnormality, or detects that the state of the replication network path is abnormal or recovers after the abnormality, after calling the database system script or command to report the fault information, the method further includes: If the proportion of the replication network paths that are judged to be in abnormal state exceeds a first preset proportion, the replication network is judged to be faulty, and a database system script or command is called to report fault information; If, after the duplicate network is determined to be faulty, the proportion of the duplicate network paths that are determined to be in normal condition exceeds a second preset proportion, it is determined that the duplicate network has recovered; The second preset ratio is greater than the first preset ratio.

6. The method for deploying a replication network of a distributed block storage system according to claim 5, wherein: The method further comprises: If the replication network failure occurs in one of the local cluster or the remote cluster, all online remote replication pairs are notified to switch through the database system script or command, and all active-active pairs are notified to initiate arbitration and switch.

7. A replication network deployment device for a distributed block storage system, characterized in that: include: a request forwarding module configured to, upon receiving a data processing request, forward the data processing request to a local object manager if the target object of the data processing request belongs to the local cluster, or to a remote object manager if the target object belongs to a remote cluster; wherein the local object manager and the remote object manager are attributes additionally marked for the object manager by the database system when the object manager is created; a local processing module, configured to connect to the local cluster via a public network to perform data processing within the cluster when the local object manager receives the data processing request; a remote processing module, configured to connect to the remote cluster via a replication network to perform cross-cluster data processing when the remote object manager receives the data processing request; Among them, the public network and the replication network use different network segments; the object storage daemon creates a message communication module when it starts; the message communication module interacts with the monitoring server of the local cluster through the replication network, and the monitoring server allocates a listening port for the message communication module; the object storage daemon obtains the Internet protocol address of the replication network of this node according to the network segment of the replication network, and obtains the allocated listening port from the message communication module, binds the Internet protocol address of the replication network and the listening port for listening; the object storage daemon adds the message address of the replication network bound to the startup status information reported to the monitoring server. the Internet protocol address and the listening port of the replication network; after collecting the startup status information reported by the object storage daemon of each node in the local cluster, the monitoring server constructs a new object storage daemon information mapping and pushes it to all monitoring clients to establish a remote communication connection between clusters through the replication network; completes the debugging of the network card according to the preset replication network configuration information to obtain the network card that supports the replication network; expands the network card capacity of each node in the local cluster to increase the network card that supports the replication network; completes the network segment configuration of each node in the local cluster regarding the replication network; restarts each node in the local cluster to make the network segment configuration of the replication network take effect.

8. A replication network deployment device for a distributed block storage system, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the steps of the replication network deployment method for a distributed block storage system according to any one of claims 1 to 6 when executing the computer program.

9. A non-volatile storage medium, characterized in that: The non-volatile storage medium stores a computer program, which, when executed by a processor, implements the steps of the replication network deployment method for a distributed block storage system according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Method and device for configuring multiple network cards

    CN106953795A

  • Cross-cluster network control method and device, equipment and storage medium

    CN114938394A