Configuration data processing method and device, electronic equipment and storage medium
By querying and determining the target configuration data that needs to be cleaned in the storage area network (SAN), and performing cleaning operations, the problem of garbage configuration data in SAN cannot be cleaned in time is solved, and the comprehensive cleaning of configuration data and SAN performance is achieved.
Patent Information
- Application Number
- CN202411796797.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-05
- Publication Date
- 2025-04-25
- Estimated Expiration
- 2044-12-05
AI Technical Summary
In the prior art, garbage configuration data generated by long-term operation in the storage area network (SAN) cannot be cleaned in time, resulting in incomplete cleaning of configuration data, affecting the performance and reliability of SAN.
By responding to preset query instructions, query the area configuration data corresponding to each switch of the storage area network, determine the target configuration data that needs to be cleaned, and output a cleaning script according to the user's confirmation operation, and perform the cleaning operation automatically or manually.
It realizes automatic identification and timely cleaning of garbage configuration data that needs to be cleaned in SAN, ensuring that the configuration data is in a healthy state, and improving SAN's performance and business utilization.
Smart Images

Figure CN119892764A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technology, and more specifically, to a configuration data processing method, device, electronic device and storage medium. Background Art
[0002] With the advancement of computer technology, Storage Area Network (SAN) has become a network architecture that provides high-speed data storage services. SAN can connect several servers, storage devices (such as disk arrays, tape libraries, etc.) and switches to form a data network, which is connected through a dedicated interconnection method to form a high-speed, dedicated, centralized management and secure storage system architecture.
[0003] During the long-term operation of the SAN, a lot of junk configuration data will be generated. In the related art, the zone configuration data of the switch is usually manually cleaned up according to the offline list of servers and / or storage devices submitted by the business department, but the timeliness of the cleanup cannot be guaranteed. Summary of the invention
[0004] One object of the present disclosure is to provide a new technical solution for processing configuration data.
[0005] According to a first aspect of an embodiment of the present disclosure, a configuration data processing method is provided, including:
[0006] In response to a preset query instruction being triggered, querying first area configuration data corresponding to each switch of the storage area network; wherein the first area configuration data includes at least one of submitted configuration data and locked and suspended configuration data;
[0007] According to the queried first area configuration data, target configuration data is determined; wherein the target configuration data represents configuration data that needs to be cleared in the switch.
[0008] Optionally, the first area configuration data includes submitted configuration data, and determining the target configuration data according to the queried first area configuration data includes:
[0009] querying the first area configuration data for activated second area configuration data;
[0010] In the case where the second area configuration data is found, the second area configuration data is removed from the first area configuration data to obtain third area configuration data;
[0011] The third region configuration data is used as the target configuration data.
[0012] Optionally, the first area configuration data includes submitted configuration data, and determining the target configuration data according to the queried first area configuration data includes:
[0013] querying the first area configuration data for activated second area configuration data;
[0014] In case the second area configuration data is queried, querying the second area configuration data for a first device member connected to the switch; wherein the first device member includes a server and / or a storage device in the storage area network;
[0015] In the case where the first device member is found, the regional configuration data corresponding to the first device member is removed from the second regional configuration data to obtain fourth regional configuration data;
[0016] The target configuration data is determined according to the fourth region configuration data.
[0017] Optionally, determining the target configuration data according to the fourth region configuration data includes:
[0018] Acquire a first duration of disconnection between each second device member and the switch in the fourth area configuration data;
[0019] When the first duration is greater than a first threshold, the area configuration data corresponding to the second device member is used as the target configuration data.
[0020] Optionally, determining the target configuration data according to the fourth region configuration data includes:
[0021] detecting whether the deregistration information sent by each second device member in the fourth area configuration data is received;
[0022] When the deregistration information is received, the area configuration data corresponding to the second device member is used as the target configuration data.
[0023] Optionally, the first area configuration data includes locked suspended configuration data, and determining the target configuration data according to the queried first area configuration data includes:
[0024] Obtaining a second time length during which the locked and suspended configuration data is suspended;
[0025] When the second time period is greater than a second threshold, the locked and suspended configuration data is used as the target configuration data.
[0026] Optionally, the method further comprises:
[0027] In response to receiving a confirmation operation from the user, outputting a cleaning script for cleaning the target configuration data;
[0028] According to the cleanup script, a cleanup operation is performed on the target configuration data.
[0029] According to a second aspect of an embodiment of the present disclosure, there is provided a configuration data processing device, including:
[0030] A query module, configured to query first area configuration data corresponding to each switch of the storage area network in response to a preset query instruction being triggered; wherein the first area configuration data includes at least one of submitted configuration data and locked and suspended configuration data;
[0031] The determination module is used to determine target configuration data according to the first area configuration data queried; wherein the target configuration data represents the configuration data that needs to be cleared in the switch.
[0032] According to a third aspect of an embodiment of the present disclosure, an electronic device is provided, comprising a memory and a processor, wherein the memory is used to store computer instructions, and the processor is used to call the computer instructions from the memory to execute a method as described in any one of the first aspects.
[0033] According to a fourth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the method according to any one of the first aspects is implemented.
[0034] In response to a preset query instruction being triggered, the embodiment of the present disclosure queries the regional configuration data corresponding to each switch of the storage area network, and determines the target configuration data in the switch based on the queried regional configuration data to process the target configuration data. Through the method of the embodiment of the present disclosure, the target configuration data can be automatically determined, so that cleaning can be actively initiated as needed, and the target configuration data can be ensured to be cleaned up in time. In addition, the embodiment of the present disclosure can query the submitted configuration data and the locked and suspended configuration data at the same time. According to the queried submitted configuration data and the locked and suspended configuration data, more comprehensive target configuration data can be obtained, thereby achieving comprehensive cleaning of the target configuration data.
[0035] Other features and advantages of the present disclosure will become apparent from the following detailed description of exemplary embodiments of the present disclosure with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the present disclosure and, together with the description, serve to explain the principles of the present disclosure.
[0037] Figure 1 It is a structural diagram of a storage system provided according to an embodiment of the present disclosure.
[0038] Figure 2 It is a flowchart of a configuration data processing method provided by an embodiment of the present disclosure.
[0039] Figure 3 It is a schematic diagram for displaying target configuration data provided by an embodiment of the present disclosure.
[0040] Figure 4 It is a structural diagram of a configuration data processing device provided by an embodiment of the present disclosure.
[0041] Figure 5 It is a structural schematic diagram of an electronic device provided by an embodiment of the present disclosure. DETAILED DESCRIPTION
[0042] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that unless otherwise specifically stated, the relative arrangement of the components and steps, numerical expressions and numerical values described in these embodiments do not limit the scope of the present disclosure. The following description of at least one exemplary embodiment is actually only illustrative and is not intended to limit the present disclosure and its application or use.
[0043] Figure 1 Schematic diagram of a storage system provided according to an embodiment of the present disclosure. Figure 1 As shown, the storage system 100 may include one or more of a storage area network SAN 150 , a network management device 160 , and a client 170 .
[0044] The SAN 150 may include multiple network element devices. For example, the SAN 150 may include a server 151, a switch 152, and a storage device 153. The server 151 may include a physical server and / or a virtual server. The server 151 is connected to the storage device 153 via the switch 152, and can quickly access the data on the storage device 153. The server 151 can also be connected to the client 170 to receive and process the client's data request or execute an application. The storage device 153 may include a disk array, a tape library, or other types of storage media, and can provide high-capacity, high-performance storage functions to meet the needs of enterprise-level data storage. The switch can provide high-speed data transmission functions. For example, the switch can be a fiber switch or other switch that supports high-speed data transmission. Among them, the above-mentioned servers, switches, and storage devices can be one or more.
[0045] The network management device 160 can be connected to the SAN to manage the network element devices of the SAN. For example, the network management device 160 can perform maintenance management functions such as data configuration management, fault management, resource management, performance management, and security management on the network element devices of the SAN. The network management device can be one or more, and the network management device can also be called a network management system (Network Management System, NMS).
[0046] The client 170 can be connected to a server of the SAN, can send a data request to the server, and receive data returned by the server. The client can be one or more.
[0047] In some embodiments, the client 170 can also be connected to the network management device 160, send instructions to the network management device or receive management data to perform corresponding maintenance and management of the SAN. In one implementation, the client connected to the network management device 160 and the client connected to the server 151 can be the same client, which can facilitate the operation of the client. In another implementation, the client connected to the network management device 160 and the client connected to the server 151 can be different clients, that is, the same client is not allowed to be connected to both the network management device and the server, so that management and business can be separated to improve the security of the storage system.
[0048] In SAN 150, it is usually necessary to configure the server 151 and / or the storage device 153, create a switch area zone in which the server 151 and / or the storage device 153 can communicate, and associate and add the ports of the server 151 and the storage device 153 in the zone to generate zone configuration data. The associated ports of the server 151 and the storage device 153 are globally unique names that uniquely identify the server 151 and / or the storage device 153, such as PWWN (Port World Wide Name).
[0049] The regional configuration data may include the regional name, and the names of the network element device members in the region and / or the ports of the network element device members. When the regional configuration data includes the names of the network element device members and the ports of the network element device members, the names of the network element device members may be used as device aliases to replace the ports of the real network element device members.
[0050] In one example, the zone configuration data may be as follows:
[0051] "zone name
[0052] P780C-SJFXDB26-DS8870-I0032-20220829vsan 2
[0053] member device-alias H-P780C-SJFXDB26
[0054] member device-alias S-DS8870-I0032
[0055] device-alias name H-P780C-SJFXDB26 pwwn c0:50:76:07:e1:78:00:1e
[0056] device-alias name S-DS8870-I0032 pwwn 50:05:07:63:05:03:96:93”
[0057] In this example, "P780C-SJFXDB26-DS8870-I0032-20220829" is the area name, "H-P780C-SJFXDB26" and "S-DS8870-I0032" are the names of the NE device members, and "device-alias name H-P780C-SJFXDB26 pwwn c0:50:76:07:e1:78:00:1e" indicates that "H-P780C-SJFXDB26" is the alias of the NE device member and is used to replace the real PWWN "c0:50:76:07:e1:78:00:1e".
[0058] In one example, the regional configuration data defined or modified by the user in real time on the client 170 may be received. The regional configuration data submitted by the user by clicking the Save button on the client 170 may be received, and the regional configuration data saved by the user by using the command keyword "save" on the client 170 may also be received. The regional configuration data submitted by the user by clicking the Submit button on the client 170 may also be received, and the regional configuration data submitted by the user by using the command keyword "commit" on the client 170 may also be received. In this example, the regional configuration data may be received through the switch, and the regional configuration data may also be received through the network management device. That is, the configuration data may be uploaded to the switch or the network management device in real time or at a scheduled time during the definition or modification process. When the configuration data is saved or submitted, the configuration data may be uploaded to the switch or the network management device.
[0059] After receiving the submitted zone configuration data, the zone configuration data needs to be activated. In one example, the user can click an activation button on the client 170 to activate the zone configuration data, or the user can activate the zone configuration data on the client 170 using the command keyword active. After the zone configuration data is successfully activated, the zone-associated server 151 and storage device 153 can access each other normally. In this example, the zone configuration data can be activated through a switch or through a network management device.
[0060] During the long-term operation of SAN 150, a lot of useless junk configuration data will be generated. In one example, the zone configuration data has been submitted but not successfully activated. Or, the zone configuration data has been successfully activated, but the storage device and / or server associated with the zone has been offline. At this time, the configuration data corresponding to the zone will lose its meaning of existence and become junk configuration data.
[0061] At present, there is generally no special statistics for the garbage configuration data in the SAN. In addition, the operation and maintenance department is worried that the cleanup will affect the business, so it rarely cleans up the zone garbage configuration data. In the related technology, the switch zone garbage configuration data is usually manually cleaned up according to the offline list of servers and / or storage devices submitted by the business department. However, this cleaning solution only passively waits for the business department to initiate the cleanup, and cannot actively initiate the cleanup, resulting in the inability to guarantee the timeliness of the cleanup. Moreover, this cleaning solution is not thorough, and only cleans up according to the offline list, and cannot guarantee the comprehensive cleaning of the garbage configuration data.
[0062] Based on this, an embodiment of the present disclosure provides a configuration data processing method, which can be applied to the zone configuration data cleaning scenario. Figure 2 1 is a flow chart of a configuration data processing method provided by an embodiment of the present disclosure. The method can be executed by a network management device in the above storage system, or by a switch in a SAN. Figure 2 As shown, the configuration data processing method of this embodiment may include steps S210 to S220.
[0063] Step S210: in response to a preset query instruction being triggered, query the first area configuration data corresponding to each switch of the storage area network.
[0064] The first area configuration data includes at least one of submitted configuration data and locked and suspended configuration data.
[0065] In the disclosed embodiment, submitted and locked pending are two states of the regional configuration data. The submitted configuration data may include at least any one of the following: submitted but not activated regional configuration data, submitted and activated regional configuration data. The locked pending configuration data may include at least any one of the following: configured but not saved regional configuration data, saved but not submitted regional configuration data.
[0066] In the embodiments of the present disclosure, the regional configuration data may include initial regional configuration data and / or changed regional configuration data. The initial regional configuration data may be understood as newly defined regional configuration data. The changed regional configuration data may be understood as configuration data obtained by changing the already defined regional configuration data.
[0067] In one example, the configured but unsaved regional configuration data may include initial regional configuration data that is not saved after definition and / or modified regional configuration data that is not saved after modification. In this example, unsaved may mean executing a cancel operation or not executing any operation.
[0068] In the disclosed embodiment, the first area configuration data may be configuration data that can be stored in a dispersed manner according to the network element type. By way of example, the first area configuration data may be distributed in multiple data tables. For example, the first area configuration data may be distributed in data tables such as a server information table and a storage information table. In this example, a query may be performed from multiple dispersedly stored data tables based on the association relationship between them. By way of example, the first area configuration data may also be distributed in the same data table, and querying the configuration data in one data table may improve query efficiency.
[0069] The first area configuration data may be stored in each switch respectively, or may be stored entirely in a network management device.
[0070] In the embodiment of the present disclosure, the preset query instruction may include a preset query instruction for querying submitted zone configuration data, and may also include a preset query instruction for querying locked pending zone configuration data. In one example, the preset query instruction may include "show run", through which all configuration data of the switch can be queried, and then the zone configuration data can be extracted from all the configuration data of the switch. The preset query instruction may also include "show zone", through which all submitted zone configuration data of the switch can be directly queried. In one example, the preset query instruction may also include "show zone pending vsan<vsan_ID> ", through this preset query command, the lock-suspended area configuration data of the switch can be queried.
[0071] The preset query instruction may be pre-stored in the switch or in the network management device. When the preset query instruction is stored in the network management device, the network management device may communicate with the switch to obtain the regional configuration data of the switch.
[0072] The step of triggering the preset query instruction may include: presetting a specific time; when the system time reaches the specific time, triggering the preset query instruction. Triggering the preset query instruction may also include: presetting a specific time interval, and triggering the preset query instruction every time interval.
[0073] This embodiment is triggered by timing response to a preset query instruction, and the first area configuration data corresponding to each switch of the storage area network can be queried in time.
[0074] Step S220: determining target configuration data according to the queried first area configuration data.
[0075] The target configuration data indicates the configuration data that needs to be cleared in the switch.
[0076] The embodiment of the disclosure responds to the preset query instruction being triggered, queries at least one of the submitted configuration data and the locked and suspended configuration data corresponding to each switch of the SAN, and according to the queried configuration data, can timely determine the junk configuration data that needs to be cleaned up in the switch, ensuring that the junk configuration data is identified. The embodiment of the disclosure does not need to rely on the offline list provided by the business department, and provides a basis for timely cleaning of junk configuration data.
[0077] In some embodiments, the first region configuration data may include submitted configuration data. In this embodiment, step S220 may include steps S221 to S223.
[0078] Step S221: query the first area configuration data for activated second area configuration data.
[0079] Step S222: when the second region configuration data is found, the second region configuration data is removed from the first region configuration data to obtain third region configuration data.
[0080] Step S223: Use the third region configuration data as target configuration data.
[0081] In one example, the third region configuration data may be inactivated configuration data among the submitted configuration data.
[0082] The disclosed embodiment removes activated configuration data from submitted configuration data and uses the remaining configuration data as target configuration data, so that junk configuration data that needs to be cleaned up can be discovered in a timely manner.
[0083] In some embodiments, the first region configuration data may include submitted region configuration data. In this embodiment, step S220 may further include steps S224 to S226.
[0084] Step S224: when the second area configuration data is found, query the second area configuration data for a first device member connected to the switch.
[0085] The first device member includes a server and / or a storage device in a storage area network.
[0086] In one example, being connected to a switch may mean having successfully logged into the switch through the FLOGI (Fabric Login) process. It should be noted that FLOGI (Fabric Login) is the process of a device logging into a Fabric in a FC (Fibre Channel) network. Once a device successfully logs in, it will be recorded in the FLOGI database of the FC switch. This database contains relevant information about all devices currently logged into the Fabric, such as interfaces, VSANs, FCIDs, port names, and node names. In this example, querying the first device member connected to the switch may include querying the servers and / or storage devices that have passed FLOGI under the switch port.
[0087] In one example, the device identification of the first device member connected to the storage area network is queried. The device identification can be a globally unique identification number (such as World Wide Name, WWN) of the hardware. In this example, the first device member can be determined based on the queried device identification and the association relationship between the device identification and the device member of the storage area network.
[0088] Step S225: When the first device member is found, the region configuration data corresponding to the first device member is removed from the second region configuration data to obtain fourth region configuration data.
[0089] Step S226: determining target configuration data according to the fourth region configuration data.
[0090] In one example, the queried first device member can be marked as being in an online state. By removing the configuration data corresponding to the first device member marked as being in an online state from the activated configuration data of the switch, the device member disconnected from the switch can be obtained, that is, the device member currently in an offline state can be obtained.
[0091] The disclosed embodiment determines target configuration data from configuration data corresponding to a device member disconnected from the switch, and can timely discover junk configuration data that needs to be cleared.
[0092] Considering that the device member may only be temporarily abnormal and disconnected from the switch, if the configuration data corresponding to the device member is directly regarded as garbage configuration data at this time, it will lead to misjudgment. Therefore, in some embodiments, step S226 may include steps S310 to S320.
[0093] Step S310: Obtain a first duration for each second device member in the fourth area configuration data to be disconnected from the switch.
[0094] Step S320: When the first time duration is greater than a first threshold, the area configuration data corresponding to the second device member is used as target configuration data.
[0095] In one example, when a device member is successfully connected to a switch, the configuration data of the device member will be automatically stored in the database of the switch or the database corresponding to the switch in the network management device. When the device member is disconnected from the switch, the configuration data of the device member will be automatically cleared from the database of the switch or the network management device. In this example, the database may be, for example, a FLOGI database.
[0096] In this example, step S310 may include steps S311 to S316.
[0097] Step S311: acquiring, from the activated second area configuration data, a third device member corresponding to the second area configuration data at a first moment.
[0098] Step S312: acquiring, from the activated second area configuration data, a fourth device member corresponding to the second area configuration data at the second moment.
[0099] Step S313: determining, according to the third device member and the fourth device member, a second device member disconnected from the switch at a second moment, and acquiring a first time when the second device member is disconnected from the switch.
[0100] Step S314: acquiring, from the activated second area configuration data, a fifth device member corresponding to the second area configuration data at the third moment.
[0101] Step S315: when the fifth device member does not include the second device member, determine a second time when the second device member is disconnected from the switch, and use the difference between the second time and the first time as the first duration.
[0102] Step S316: When the first duration is less than or equal to the threshold, repeat step S314.
[0103] In this example, when the first time length is greater than the threshold, step S320 is executed.
[0104] In this example, the third moment can be understood as the current moment. Taking the current moment as the Tth moment as an example, the third moment can be the Tth moment, the first moment can be the T-2th moment, and the second moment can be the T-1th moment.
[0105] The embodiment of the present disclosure adds a judgment on the duration of disconnection between a device member and a switch, which can avoid the occurrence of misjudgment caused by temporary disconnection between a device member and a switch.
[0106] In some embodiments, step S226 may include steps S330 to S340.
[0107] Step S330: Detect whether the deregistration information sent by each second device member in the fourth area configuration data is received.
[0108] In the disclosed embodiment, when a device member actively disconnects from a switch, it may actively send a logout message to the switch or a network management device, and notify the switch or the network management device to disconnect from the switch through the logout message.
[0109] Step S340: When the deregistration information is received, the area configuration data corresponding to the second device member is used as the target configuration data.
[0110] In the embodiment of the present disclosure, when the deregistration information is not received, the target configuration data may be determined according to steps S310 to S320.
[0111] The disclosed embodiment adds a judgment on whether the deregistration information actively sent by the device member is received. When the deregistration information is received, the configuration data corresponding to the device member is used as the target configuration data, thereby avoiding the occurrence of misjudgment caused by temporary disconnection of the device member from the switch.
[0112] In some embodiments, the first region configuration data may include lock-suspended configuration data. In this embodiment, step S220 may also include using the lock-suspended configuration data as target configuration data.
[0113] In order to prevent the configuration data being defined or modified from being misjudged as junk configuration data, in some embodiments, the first region configuration data may include locked and suspended configuration data. In this embodiment, step S220 may further include steps S227 to S228.
[0114] Step S227, obtaining a second time length during which the locked and suspended configuration data is suspended.
[0115] Step S228: When the second time duration is greater than a second threshold, the locked and suspended configuration data is used as target configuration data.
[0116] In one example, step S227 may include steps S350 to S380.
[0117] Step S350: when the lock-suspended configuration data is queried, a third time is obtained.
[0118] Step S360: After a preset time interval, obtain the fifth area configuration data of the storage area network corresponding to each switch.
[0119] Step S370: When the fifth area configuration data includes the lock suspension configuration data, a fourth time is obtained, and a difference between the fourth time and the third time is used as a second duration.
[0120] Step S380: When the second duration is less than or equal to the second threshold, repeat step S360.
[0121] In this example, when the second time length is greater than the second threshold, step S228 is executed.
[0122] In this example, the preset time interval is not specifically limited, and for example, may be consistent with the time interval at which the preset query instruction is triggered.
[0123] The disclosed embodiment adds a judgment on the duration of suspension of locked and suspended configuration data, so that configuration data being defined or being modified may be mistakenly judged as junk configuration data.
[0124] In some embodiments, after the target configuration data is determined, the configuration data processing method of the embodiment of the present disclosure may further include step S230: performing a cleanup operation on the target configuration data.
[0125] Step S230 may include directly performing a cleanup operation on the target configuration data after determining the target configuration data, or may include performing a cleanup operation on the target configuration data in response to the execution instruction being triggered. The execution instruction may be triggered manually by a user or automatically triggered by a pre-configured system.
[0126] The disclosed embodiment can proactively initiate the cleaning of junk configuration data, ensure that target configuration data can be cleaned up in a timely manner, ensure that the configuration data of the SAN network is in a healthy state, and improve the zone service utilization and performance of the SAN network element equipment.
[0127] In one example, step S230 may include providing a display function of the target configuration data, so as to confirm whether to perform a cleaning operation on all or part of the target configuration data through the display function.
[0128] In one example, the display function can display each target configuration data, or can display each type of target configuration data (such as locked and suspended target configuration data, inactivated target configuration data, and target configuration data of device members offline), and display each type of target configuration data corresponding to each type in a submenu of each type of target configuration data (such as Figure 3 In this example, the user can clearly understand whether there is garbage configuration data of the zone in the SAN and the data and detailed information of each type of garbage zone configuration data.
[0129] In one example, the display function can also display a confirmation function for each or each type of target configuration data. Through the confirmation function, the target configuration data can be further manually reviewed to avoid configuration data being mistakenly cleared.
[0130] The system pre-configuration in step S230 of the embodiment of the present disclosure may be in response to receiving a confirmation operation from the user. Step S230 may include steps S240 to S250.
[0131] Step S240: In response to receiving a confirmation operation from the user, outputting a cleaning script for cleaning the target configuration data.
[0132] In one example, a cleaning script corresponding to each type of target configuration data may be output, or a corresponding cleaning script may be output according to a type of target configuration data preset by a user.
[0133] Step S250: performing a cleanup operation on the target configuration data according to the cleanup script.
[0134] In one example, the user in step S240 may be a first user who does not have review authority or only has preliminary review authority. In this example, step S240 may include outputting a cleaning script for cleaning target configuration data in response to receiving a first confirmation operation from the first user.
[0135] In this example, before step S250, the configuration data processing method of the embodiment of the present disclosure may further include: sending the cleanup script to a pre-configured second user; and receiving a second confirmation operation of the second user. The second user is a user with final review authority. Sending the cleanup script to the pre-configured second user may, for example, be sending the cleanup script to a mailbox or other system of the pre-configured second user.
[0136] In this example, step S250 may include, in response to a second confirmation operation of the second user, performing a cleanup operation on the target configuration data according to the cleanup script.
[0137] After the target configuration data is determined, the embodiment of the present disclosure provides a function for the user to confirm. After the user confirms, a cleaning script can be generated with one click, without the need to manually write the cleaning script. In addition, the cleaning time of the junk configuration data can be determined according to actual needs, which increases the flexibility of the configuration data processing method disclosed in the present disclosure and adapts to the actual cleaning scenario of junk configuration data.
[0138] In the embodiment of the present disclosure, the regional configuration data of the switch can be stored in the first memory to generate a first regional configuration data set, and the regional configuration data of the switch can be stored in the second memory to generate a second regional configuration data set. The first memory can be a volatile memory that supports fast reading and writing, such as a random access memory (RAM), a cache memory, etc. The second memory can be a non-volatile memory, such as a disk array, etc. For example, the second memory can be a disk array of a network management device, and the first memory can be a memory RAM of the network management device.
[0139] After the regional configuration data of the switch is changed, the first regional configuration data set and the second regional configuration data set are synchronized, which can improve the reliability of the configuration data.
[0140] In one example, after junk configuration data of the switch is cleaned, the first zone configuration data set and the second zone configuration data set are synchronized.
[0141] In the embodiments of the present disclosure, synchronization of regional configuration data may be achieved based on an event or periodic manner. For example, synchronization of the first regional configuration data set and the second regional configuration data set may be achieved by at least one of the following methods:
[0142] Method 1: After the junk configuration data of the switch is cleared, the second regional configuration data set is updated according to the changed regional configuration data, and the candidate data entries of the updated second regional configuration data set are synchronized to the first regional configuration data set.
[0143] Optionally, based on the first method, the candidate data entries that have changed in the second regional configuration data set can be determined according to the regional configuration data that has changed in the switch, and only the candidate data entries that have changed in the second regional configuration data set are synchronized to the first regional configuration data set. In this way, full data synchronization is not required, which can improve the efficiency of data synchronization.
[0144] Method 2: when the current time is a preset scheduled synchronization time, the candidate data entries of the updated second regional configuration data set are synchronized to the first regional configuration data set.
[0145] The current time is the current time of the network management device, and the preset scheduled synchronization time may be a scheduled synchronization time set by a user or a system default, such as a specific time of each hour, a specific time of each day, a specific time of each week, or a specific time of each month. For example, if the scheduled synchronization time is 3 a.m. every day, when the current time of the network management device is 3 a.m., scheduled synchronization may be performed to synchronize the updated candidate data entries of the second regional configuration data set to the first regional configuration data set.
[0146] In one implementation, based on the second approach, full data synchronization may be performed to synchronize all candidate data entries of the second region configuration data set to the first region configuration data set, so as to ensure the accuracy of the first region configuration data set.
[0147] In another implementation, the second area configuration data set and the first area configuration data set may be compared to see whether the candidate data entries are the same. For different candidate data entries, the candidate data entries in the second area configuration data set may be updated to the first area configuration data set. In this way, the efficiency of data synchronization may be improved.
[0148] In the second manner, the specific manner of updating the candidate data entry of the second area configuration data set to the first area configuration data set may also include at least one of the following implementation manners:
[0149] In one implementation, if the regional configuration data of the switch is in a steady state, the candidate data entries of the second regional configuration data set are synchronized to the first regional configuration data set; the steady state can be used to indicate that the regional configuration data of the switch is not in the process of being changed. In one example, the steady state can be used to indicate that the regional configuration data of the switch is not in the process of being cleared.
[0150] In another implementation, if the regional configuration data of the switch is in a non-stable state, the regional configuration data of the switch is waited to enter a steady state, and then the second regional configuration data set is updated according to the regional configuration data after entering the steady state, and the candidate data entries of the updated second regional configuration data set are synchronized to the first regional configuration data set. In this way, it is possible to avoid the configuration data being in a non-stable state causing the data in the synchronized first regional configuration data set to be abnormal. Furthermore, in the process of waiting for the regional configuration data of the switch to enter a steady state, the switch can be prohibited from executing new configuration data changes. In this way, the switch only needs to complete the configuration data change currently being executed before entering a steady state, thereby reducing the waiting time for data synchronization.
[0151] In another implementation, when the current time is a preset scheduled synchronization time, the switch may be prohibited from executing new configuration data changes. After determining that the configuration data of the switch is in a steady state, the second area configuration data set is updated according to the configuration data of the switch, and the candidate data entries of the updated second area configuration data set are synchronized to the first area configuration data set. After completing the synchronization of the first area configuration data set, the switch is allowed to execute new configuration data changes.
[0152] For example, the network management device can implement the timing synchronization data based on the following steps:
[0153] First, when the current time is a preset scheduled synchronization time, the network management device sends a data synchronization indication message to each switch of the SAN.
[0154] The data synchronization indication message can be used to instruct the switch to prohibit the execution of new configuration data changes. After receiving the data synchronization indication message, each network element device can send a data synchronization response message to the network management device after the configuration data of the switch is in a steady state or the current configuration data change is completed and enters a steady state. And the switch can prohibit the execution of new configuration data changes after receiving the data synchronization indication message.
[0155] Secondly, after receiving the data synchronization response messages sent by all switches, the network management device updates the second area configuration data set according to the configuration data of each switch, and synchronizes the candidate data entries of the updated second area configuration data set to the first area configuration data set.
[0156] Finally, after completing the synchronization of the first area configuration data set, the network management device sends a data synchronization completion message to each switch of the SAN.
[0157] The data synchronization completion message can be used to indicate that the switch can execute a new configuration data change. In this way, the switch can start executing a new configuration data change after receiving the data synchronization completion message.
[0158] In this way, it is possible to avoid the configuration data being in an unsteady state during the timing synchronization, which may cause abnormal data in the synchronized first region configuration data set, thereby improving the accuracy of the first region configuration data set.
[0159] In some embodiments, after receiving a data synchronization indication message, the switch prohibits the execution of new configuration data changes. The switch can cache the received configuration data change commands in chronological order. After receiving a data synchronization completion message, the switch can execute the cached configuration data change commands in chronological order. In this way, the problem of failure to execute the configuration data change command during the scheduled synchronization process can be avoided.
[0160] In other embodiments, after receiving the data synchronization indication message and sending the data synchronization response message, the switch may start a timer, and after the timer reaches a preset time, if the data synchronization completion message is still not received, the execution of new configuration data changes may no longer be prohibited. The preset time may be any pre-configured time, such as 1 minute, 5 minutes, or 10 minutes.
[0161] This can avoid the problem of configuration data changes being unable to be executed for a long time, especially when the data synchronization completion message is lost, and can improve the reliability of the SAN configuration.
[0162] In the embodiment of the present disclosure, the first memory and the second memory may also store configuration data of other network element devices besides the switch. After the configuration data of the other network element devices is changed, the first configuration data set in the first memory and the second configuration data set in the second memory may also be updated according to the changed configuration data. The specific implementation method may refer to the synchronization process of the regional configuration data of the above-mentioned switch, which will not be elaborated in detail here.
[0163] Figure 4 Schematic diagram of a data query device provided by an embodiment of the present disclosure. Figure 4 As shown, the configuration data processing device 400 may include:
[0164] A query module 401 is configured to query first area configuration data corresponding to each switch of the storage area network in response to a preset query instruction being triggered; wherein the first area configuration data includes at least one of submitted area configuration data and locked and suspended configuration data;
[0165] The determination module 402 is used to determine target configuration data according to the first area configuration data found, wherein the target configuration data represents the configuration data that needs to be cleared in the switch.
[0166] Optionally, the determination module 402 is specifically used to query the first area configuration data for activated second area configuration data; when the second area configuration data is queried, remove the second area configuration data from the first area configuration data to obtain third area configuration data; and use the third area configuration data as the target configuration data.
[0167] Optionally, the determination module 402 is specifically configured to query the first regional configuration data for activated second regional configuration data; when the second regional configuration data is queried, query the second regional configuration data for a first device member connected to the switch; wherein the first device member includes a server and / or storage device in the storage area network; when the first device member is queried, remove the regional configuration data corresponding to the first device member from the second regional configuration data to obtain fourth regional configuration data; and determine the target configuration data based on the fourth regional configuration data.
[0168] Optionally, the determination module 402 is specifically configured to obtain a second duration for which the locked and suspended configuration data is suspended; when the second duration is greater than a second threshold, use the locked and suspended configuration data as the target configuration data.
[0169] Optionally, the configuration data processing device may further include:
[0170] An output module 403, configured to output a cleaning script for cleaning target configuration data in response to receiving a confirmation operation from a user;
[0171] The cleaning module 404 is used to perform a cleaning operation on the target configuration data according to the cleaning script.
[0172] Regarding the device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.
[0173] Figure 5 Schematic diagram of the structure of an electronic device provided by an embodiment of the present disclosure. Figure 5As shown, the electronic device 900 may include a memory 910 and a processor 920. The memory 910 may be used to store computer instructions, and the processor 920 may be used to call computer instructions from the memory 910 to execute any method in the foregoing embodiments of the present disclosure. It should be noted that the processor 920 may include one or more processors to execute instructions, and the memory 910 may also include one or more memories to store computer instructions. In some embodiments, the electronic device may be Figure 1 A network management device or switch in the illustrated embodiment.
[0174] In some embodiments, the processor 920 can be used to control the overall operation of the electronic device 900. For example, the processor 920 can execute instructions to implement all or part of the steps of the method in any of the foregoing embodiments of the present disclosure, thereby realizing one or more of operations such as voice communication, data communication, database operation, display control, component control, multimedia processing, etc., wherein the above-mentioned components may include sensors, cameras, headphones, input and output devices, etc., and the component may be an internal component of the electronic device itself, or an external component connected to the electronic device wirelessly or by wire, and the above-mentioned multimedia may include one or more of voice, image, video, and text.
[0175] In some embodiments, the memory 910 may include one or more memories, and the contents stored in different memories may be the same or different. The memory 910 may be configured to store various types of data to support operations on the electronic device 900. Examples of these data include instructions for any application or method operating on the electronic device 900, contact data, phone book data, messages, pictures, videos, etc. The memory 910 may be implemented by any type of temporary or non-temporary storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.
[0176] In some embodiments, the memory 910 may include a first memory, which is a volatile memory and can be used to store the first configuration data set in the foregoing embodiments of the present disclosure. Further, the memory may also include a second memory, which is a non-volatile memory and can be used to store the second configuration data set in the foregoing embodiments of the present disclosure.
[0177] The embodiments of the present disclosure also provide a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, any method in the aforementioned embodiments of the present disclosure is implemented. Optionally, the computer-readable storage medium may be a non-transitory storage medium, but is not limited thereto, and may also be a transient storage medium.
[0178] The embodiments of the present disclosure further provide a computer program product, which may include a computer program. When the computer program is executed by a processor, any method in the aforementioned embodiments of the present disclosure may be implemented.
[0179] The present disclosure may be a system, a method and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for causing a processor to implement any method in the foregoing embodiments of the present disclosure.
[0180] A computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples of computer-readable storage media (a non-exhaustive list) include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device, such as a punch card or a raised structure in a groove on which instructions are stored, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium is not to be interpreted as a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse through a fiber optic cable), or an electrical signal transmitted through a wire.
[0181] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.
[0182] The computer program instructions for performing the operation of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, which may include object-oriented programming languages, such as Smalltalk, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. Computer-readable program instructions may be executed entirely on a user's computer, partially on a user's computer, as an independent software package, partially on a user's computer, partially on a remote computer, or completely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider to connect via the Internet). In some embodiments, an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), may be personalized by utilizing the state information of the computer-readable program instructions, and the electronic circuit may execute the computer-readable program instructions, thereby realizing various aspects of the present disclosure.
[0183] Various aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of the methods, devices (systems) and computer program products according to the embodiments of the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.
[0184] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so as to produce a machine, so that when these instructions are executed by the processor of the computer or other programmable data processing device, a device for implementing the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions make the computer, programmable data processing device, and / or other equipment work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0185] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0186] The flowcharts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the systems, methods and computer program products according to multiple embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of an instruction, and the module, a program segment or a part of an instruction contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions. It should be noted that implementation by hardware, implementation by software, and implementation by a combination of software and hardware are all equivalent.
[0187] Technologies, methods, and apparatuses known to ordinary technicians in the relevant art may not be discussed in detail, but where appropriate, the above-mentioned technologies, methods, and apparatuses may be considered as part of the specification.
[0188] It should be noted that like reference numerals and letters denote similar items in the drawings of the embodiments of the present disclosure, and thus, once an item is defined in one drawing, it may not need to be further discussed in subsequent drawings.
[0189] Although operations or steps are described in a specific order in the drawings in the embodiments of the present disclosure, it should not be understood that it is required to perform these operations or steps in the specific order shown or in a serial order, or to perform all the operations or steps shown to obtain the desired results. In the embodiments of the present disclosure, these operations or steps can be performed in series; these operations or steps can also be performed in parallel; or some of these operations or steps can be performed.
[0190] In the description of the embodiments of the present disclosure, unless otherwise specified, prefixes such as "first" and "second" are only used to distinguish different description objects and do not constitute any limitation on the position, order, priority, quantity or content of the description objects. For the statement of the description objects, please refer to the description in the context of the claims or embodiments, and no unnecessary limitations should be constituted due to the use of prefixes.
[0191] In the description of the embodiments of the present disclosure, unless otherwise specified, "multiple" refers to two or more than two, and other quantifiers are similar thereto; "at least one item", "one item or multiple items" or similar expressions refer to any combination of these items, including any combination of singular items or plural items. For example, at least one a can represent any number of a; for another example, one or more items of a, b and c can represent: a, b, c, ab, ac, bc, or abc, where a, b, c can be single or multiple; "and / or" is a description of the association relationship of associated objects, indicating that three relationships can exist, for example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character " / " indicates that the associated objects before and after are in an "or" relationship.
[0192] In the description of the embodiments of the present disclosure, unless otherwise specified, elements expressed in the singular may be understood as singular expressions or plural expressions. For example, "a", "an", "the", "above", "said", "aforementioned", "this", etc. may mean "one and only one", or "one or more", "at least one", etc.
[0193] In the description of the embodiments of the present disclosure, unless otherwise specified, terms such as “greater than”, “greater than or equal to”, “not less than”, “more than”, “more than or equal to”, “not less than”, “higher than”, “higher than or equal to”, “not lower than”, and “above” may be replaced with each other, and terms such as “less than”, “less than or equal to”, “not greater than”, “less than”, “less than or equal to”, “not more than”, “lower than”, “lower than or equal to”, “not higher than”, and “below” may be replaced with each other.
[0194] The embodiments of the present disclosure have been described above, and the above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and changes will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The choice of terms used herein is intended to best explain the principles of the embodiments, practical applications, or technical improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein. The scope of the present disclosure is defined by the appended claims.
Claims
1. A configuration data processing method, characterized in that: include: In response to a preset query instruction being triggered, querying first area configuration data corresponding to each switch of the storage area network; wherein the first area configuration data includes at least one of submitted configuration data and locked and suspended configuration data; According to the queried first area configuration data, target configuration data is determined; wherein the target configuration data represents configuration data that needs to be cleared in the switch.
2. The method according to claim 1, characterized in that The first area configuration data includes submitted configuration data, and determining target configuration data according to the queried first area configuration data includes: querying the first area configuration data for activated second area configuration data; In the case where the second area configuration data is found, the second area configuration data is removed from the first area configuration data to obtain third area configuration data; The third region configuration data is used as the target configuration data.
3. The method according to claim 1, characterized in that The first area configuration data includes submitted configuration data, and determining target configuration data according to the queried first area configuration data includes: querying the first area configuration data for activated second area configuration data; In case the second area configuration data is queried, querying the second area configuration data for a first device member connected to the switch; wherein the first device member includes a server and / or a storage device in the storage area network; In the case where the first device member is found, the regional configuration data corresponding to the first device member is removed from the second regional configuration data to obtain fourth regional configuration data; The target configuration data is determined according to the fourth region configuration data.
4. The method according to claim 3, characterized in that The step of determining the target configuration data according to the fourth region configuration data includes: Acquire a first duration of disconnection between each second device member and the switch in the fourth area configuration data; When the first duration is greater than a first threshold, the area configuration data corresponding to the second device member is used as the target configuration data.
5. The method according to claim 3, characterized in that: The step of determining the target configuration data according to the fourth region configuration data includes: detecting whether the deregistration information sent by each second device member in the fourth area configuration data is received; When the deregistration information is received, the area configuration data corresponding to the second device member is used as the target configuration data.
6. The method according to claim 1, characterized in that The first area configuration data includes locked suspended configuration data, and determining target configuration data according to the queried first area configuration data includes: Obtaining a second time length during which the locked and suspended configuration data is suspended; When the second time period is greater than a second threshold, the locked and suspended configuration data is used as the target configuration data.
7. The method according to any one of claims 1 to 6, characterized in that The method further comprises: In response to receiving a confirmation operation from the user, outputting a cleaning script for cleaning the target configuration data; According to the cleanup script, a cleanup operation is performed on the target configuration data.
8. A configuration data processing device, characterized in that: include: A query module, configured to query first area configuration data corresponding to each switch of the storage area network in response to a preset query instruction being triggered; wherein the first area configuration data includes at least one of submitted configuration data and locked and suspended configuration data; The determination module is used to determine target configuration data according to the first area configuration data queried; wherein the target configuration data represents the configuration data that needs to be cleared in the switch.
9. An electronic device, characterized in that: The electronic device comprises a memory and a processor, wherein the memory is used to store computer instructions, and the processor is used to call the computer instructions from the memory to execute the method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: A computer program is stored thereon, and when the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Network management method and device
CN110768818A
Zone automatic configuration method, system and device of SAN switch and medium
CN111245645A
Network data grading method and device, network management server and storage medium
CN113132149A
Data processing method and device, equipment and storage medium
CN113467824A
Data cleaning method and device, computing equipment and storage medium
CN115248806A