Search

US-12619415-B2 - Configuration management for non-disruptive update of a data management system

US12619415B2US 12619415 B2US12619415 B2US 12619415B2US-12619415-B2

Abstract

Aspects of data management are described. Information for updating software for a data management cluster from a first version associated with a first configuration for operating multiple storage nodes of the data management cluster and a second version associated with a second configuration for operating multiple storage nodes of the data management cluster may be obtained. Based on the information, an update procedure for the data management cluster may be performed, where after a first portion of the update procedure, the first version may be installed on a first set of the storage nodes and the second version may be installed on a second set of the storage nodes. Based on storage nodes in the data management cluster having different software versions, the data management cluster may be operated using the first configuration, the second configuration, or both, during the update procedure.

Inventors

  • Chak Fai Yuen
  • Muthugopalakrishnan Adiseshan
  • Arvind Batra

Assignees

  • RUBRIK, INC.

Dates

Publication Date
20260505
Application Date
20220919

Claims (20)

  1. 1 . A method, comprising: obtaining, by a data management system, information for updating software for a data management cluster from a first version to a second version, the data management cluster comprising a plurality of storage nodes, wherein the first version is associated with a first set of configuration parameters for operating the plurality of storage nodes and the second version is associated with a second set of configuration parameters for operating the plurality of storage nodes, the first set of configuration parameters indicating a first set of values associated with one or more settings of the first version of the software, one or more settings of one or more services supported by the first version of the software, or both, and the second set of configuration parameters indicating a second set of values associated with one or more settings of the second version of the software, one or more settings of one or more services supported by the second version of the software, or both; performing, by the data management system and using the information, an update procedure for the data management cluster, wherein, after a first portion of the update procedure has occurred, the first version is installed on one or more first storage nodes of the plurality of storage nodes and the second version is installed on one or more second storage nodes of the plurality of storage nodes; and operating, by the data management system, the data management cluster during the update procedure, wherein the one or more first storage nodes operate using the first version of the software and the first set of configuration parameters while the one or more second storage nodes concurrently operate using: the second version of the software, a first subset of the first set of configuration parameters instead of first corresponding configuration parameters included in the second set of configuration parameters, wherein using the first subset of the first set of configuration parameters is based at least in part on the first subset of the first set of configuration parameters being associated with respective indications that non-updated configurations are to be used for the first subset of the first set of configuration parameters during the update procedure, and a second subset of the second set of configuration parameters instead of second corresponding configuration parameters included in the first set of configuration parameters, wherein using the second subset of the second set of configuration parameters is based at least in part on the second subset of the second set of configuration parameters being associated with respective indications that updated configurations are to be used for the second subset of the second set of configuration parameters during the update procedure.
  2. 2 . The method of claim 1 , further comprising: configuring the first subset of the first set of configuration parameters to be used by storage nodes of the plurality of storage nodes that have been updated to the second version during the update procedure and the second subset of the second set of configuration parameters to be used by the storage nodes of the plurality of storage nodes that have been updated to the second version during the update procedure, wherein the respective indications that non-updated configurations are to be used for the first subset of the first set of configuration parameters and the respective indications that updated configurations are to be used for the second subset of the second set of configuration parameters are based at least in part on the configuring.
  3. 3 . The method of claim 1 , further comprising: storing, based at least in part on obtaining the information for updating the software, the first set of configuration parameters and the second set of configuration parameters until the update procedure is complete.
  4. 4 . The method of claim 1 , further comprising: obtaining second information for updating the software for the data management cluster from the second version to a third version associated with a third configuration for operating the plurality of storage nodes, wherein after a second portion of the update procedure that follows the first portion of the update procedure has occurred, the third version is installed on at least one of the one or more second storage nodes.
  5. 5 . The method of claim 1 , wherein after a second portion of the update procedure that follows the first portion of the update procedure has occurred, the second version is installed on at least one of the one or more first storage nodes.
  6. 6 . The method of claim 1 , wherein: after a completion of the update procedure, the second version is installed on each storage node of the plurality of storage nodes, and the method further comprises operating each node of the data management cluster in accordance with the second set of configuration parameters after the completion of the update procedure.
  7. 7 . The method of claim 1 , further comprising: initializing, on at least one of one or more third storage nodes, an application supported by the second version of the software but not the first version of the software based at least in part on operating the one or more third storage nodes in accordance with the second set of configuration parameters.
  8. 8 . The method of claim 1 , wherein a performance metric of the data management cluster after the first portion of the update procedure is improved relative to a beginning of the update procedure as a result of the second version being installed on the one or more second storage nodes.
  9. 9 . The method of claim 1 , wherein the first set of configuration parameters and the second set of configuration parameters comprise common configuration parameters, and wherein one or more values of the common configuration parameters are different.
  10. 10 . An apparatus, comprising: at least one processor; and memory storing instructions that are executable by the at least one processor to cause the apparatus to: obtain information for updating software for a data management cluster from a first version to a second version, the data management cluster comprising a plurality of storage nodes, wherein the first version is associated with a first set of configuration parameters for operating the plurality of storage nodes and the second version is associated with a second set of configuration parameters for operating the plurality of storage nodes, the first set of configuration parameters indicating a first set of values associated with one or more settings of the first version of the software, one or more settings of one or more services supported by the first version of the software, or both, and the second set of configuration parameters indicating a second set of values associated with one or more settings of the second version of the software, one or more settings of one or more services supported by the second version of the software, or both; perform, using the information, an update procedure for the data management cluster, wherein, after a first portion of the update procedure has occurred, the first version is installed on one or more first storage nodes of the plurality of storage nodes and the second version is installed on one or more second storage nodes of the plurality of storage nodes; and operate the data management cluster during the update procedure, wherein the one or more first storage nodes operate using the first version of the software and the first set of configuration parameters while the one or more second storage nodes concurrently operate using: the second version of the software, a first subset of the first set of configuration parameters instead of first corresponding configuration parameters included in the second set of configuration parameters, wherein using the first subset of the first set of configuration parameters is based at least in part on the first subset of the first set of configuration parameters being associated with respective indications that non-updated configurations are to be used for the first subset of the first set of configuration parameters during the update procedure, and a second subset of the second set of configuration parameters instead of second corresponding configuration parameters included in the first set of configuration parameters, wherein using the second subset of the second set of configuration parameters is based at least in part on the second subset of the second set of configuration parameters being associated with respective indications that updated configurations are to be used for the second subset of the second set of configuration parameters during the update procedure.
  11. 11 . The apparatus of claim 10 , wherein the instructions are executable by the at least one processor to further cause the apparatus to: configure the first subset of the first set of configuration parameters to be used by storage nodes of the plurality of storage nodes that have been updated to the second version during the update procedure and the second subset of the second set of configuration parameters to be used by the storage nodes of the plurality of storage nodes that have been updated to the second version during the update procedure, wherein the respective indications that non-updated configurations are to be used for the first subset of the first set of configuration parameters and the respective indications that updated configurations are to be used for the second subset of the second set of configuration parameters are based at least in part on the configuring.
  12. 12 . The apparatus of claim 10 , wherein the instructions are executable by the at least one processor to further cause the apparatus to: store, based at least in part on obtaining the information for updating the software, the first set of configuration parameters and the second set of configuration parameters until the update procedure is complete.
  13. 13 . The apparatus of claim 10 , wherein the instructions are executable by the at least one processor to further cause the apparatus to: obtain second information for updating the software for the data management cluster from the second version to a third version associated with a third configuration for operating the plurality of storage nodes, wherein after a second portion of the update procedure that follows the first portion of the update procedure has occurred, the third version is installed on at least one of the one or more second storage nodes.
  14. 14 . The apparatus of claim 10 , wherein, after a second portion of the update procedure that follows the first portion of the update procedure has occurred, the second version is installed on at least one of the one or more first storage nodes.
  15. 15 . The apparatus of claim 10 , wherein: after a completion of the update procedure, the second version is installed on each storage node of the plurality of storage nodes, and the instructions are executable by the at least one processor to further cause the apparatus to operate each node of the data management cluster in accordance with the second set of configuration parameters after the completion of the update procedure.
  16. 16 . The apparatus of claim 10 , wherein the instructions are executable by the at least one processor to further cause the apparatus to: initialize, on at least one of one or more third storage nodes, an application supported by the second version of the software but not the first version of the software based at least in part on operating the one or more third storage nodes in accordance with the second set of configuration parameters.
  17. 17 . The apparatus of claim 10 , wherein a performance metric of the data management cluster after the first portion of the update procedure is improved relative to a beginning of the update procedure as a result of the second version being installed on the one or more second storage nodes.
  18. 18 . The apparatus of claim 10 , wherein the first set of configuration parameters and the second set of configuration parameters comprise common configuration parameters, and wherein one or more values of the common configuration parameters are different.
  19. 19 . A non-transitory, computer-readable medium, comprising: code that comprises instructions that, when executed by at least one processor of a device, cause the device to: obtain information for updating software for a data management cluster from a first version to a second version, the data management cluster comprising a plurality of storage nodes, wherein the first version is associated with a first set of configuration parameters for operating the plurality of storage nodes and the second version is associated with a second set of configuration parameters for operating the plurality of storage nodes, the first set of configuration parameters indicating a first set of values associated with one or more settings of the first version of the software, one or more settings of one or more services supported by the first version of the software, or both, and the second set of configuration parameters indicating a second set of values associated with one or more settings of the second version of the software, one or more settings of one or more services supported by the second version of the software, or both; perform, using the information, an update procedure for the data management cluster, wherein, after a first portion of the update procedure has occurred, the first version is installed on one or more first storage nodes of the plurality of storage nodes and the second version is installed on one or more second storage nodes of the plurality of storage nodes; and operate the data management cluster during the update procedure, wherein the one or more first storage nodes operate using the first version of the software and the first set of configuration parameters while the one or more second storage nodes concurrently operate using: the second version of the software, a first subset of the first set of configuration parameters instead of first corresponding configuration parameters included in the second set of configuration parameters, wherein using the first subset of the first set of configuration parameters is based at least in part on the first subset of the first set of configuration parameters being associated with respective indications that non-updated configurations are to be used for the first subset of the first set of configuration parameters during the update procedure, and a second subset of the second set of configuration parameters instead of second corresponding configuration parameters included in the first set of configuration parameters, wherein using the second subset of the second set of configuration parameters is based at least in part on the second subset of the second set of configuration parameters being associated with respective indications that updated configurations are to be used for the second subset of the second set of configuration parameters during the update procedure.
  20. 20 . The non-transitory, computer-readable medium of claim 19 , wherein the instructions, when executed by the at least one processor of the device, further cause the device to: store, based at least in part on obtaining the information for updating the software, the first set of configuration parameters and the second set of configuration parameters until the update procedure is complete.

Description

FIELD OF TECHNOLOGY The present disclosure relates generally to data management, including techniques for configuration management for non-disruptive update of a data management system. BACKGROUND A data management system (DMS) may be employed to manage data associated with one or more computing systems. The data may be generated, stored, or otherwise used by the one or more computing systems, examples of which may include servers, databases, virtual machines, cloud computing systems, file systems (e.g., network-attached storage (NAS) systems), or other data storage or processing systems. The DMS may provide data backup, data recovery, data classification, or other types of data management services for data of the one or more computing systems. Improved data management may offer improved performance with respect to reliability, speed, efficiency, scalability, security, or ease-of-use, among other possible aspects of performance. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 shows an example of a computing environment that supports configuration management for non-disruptive update of a data management system in accordance with aspects of the present disclosure. FIG. 2 illustrates an example of a state diagram that supports configuration management for non-disruptive update of a data management system in accordance with aspects of the present disclosure. FIGS. 3A and 3B illustrate examples of configurations that support configuration management for non-disruptive update of a data management system in accordance with aspects of the present disclosure. FIG. 4 illustrates an example of a set of operations that supports configuration management for non-disruptive update of a data management system in accordance with aspects of the present disclosure. FIG. 5 shows a block diagram of an apparatus that supports configuration management for non-disruptive update of a data management system in accordance with aspects of the present disclosure. FIG. 6 shows a block diagram of a storage manager that supports configuration management for non-disruptive update of a data management system in accordance with aspects of the present disclosure. FIG. 7 shows a block diagram of a system including a device that supports configuration management for non-disruptive update of a data management system in accordance with aspects of the present disclosure. FIG. 8 shows a flowchart illustrating methods that support configuration management for non-disruptive update of a data management system in accordance with aspects of the present disclosure. DETAILED DESCRIPTION To update the software of a cluster of storage nodes in a non-disruptive manner, an update procedure may serially update subsets (e.g., one or more) of the storage nodes. Accordingly, the storage nodes that are not being updated may continue to support services provided by the cluster of storage nodes throughout the update procedure. Because a non-disruptive update may be used to update storage nodes (or groups of storage nodes) one-at-a-time, multiple configurations (e.g., a first configuration of a first software version and a second configuration of a second software version) may be associated with the cluster of storage nodes during an update procedure. In some examples, it may be preferred for each storage node of the cluster to operate using the same configuration (e.g., an initial configuration) during the non-disruptive update procedure—e.g., for consistency and ease of operation. In other examples, it may be preferred for updated storage nodes to operate using an updated configuration during the non-disruptive update procedure—e.g., to bring performance improvements, provide additional services, or the like. However, permitting the updated storage nodes to use the updated configuration throughout the update (while the non-updated storage nodes use a different configuration) may result in errors during the update procedure. Accordingly, a system that enables updated storage nodes to use certain configuration parameters from the updated configuration (e.g., parameters that support performance improvements or additional services) during an update procedure may be desired. To enable the storage nodes to use a desired set of configuration parameters while the data management cluster is being updated, configurations associated with different software versions may include an indication of whether the configuration (and/or configuration parameters of the configuration) is to be used by a storage node during an update procedure. FIG. 1 illustrates an example of a computing environment 100 that supports configuration management for non-disruptive update of a data management system in accordance with aspects of the present disclosure. The computing environment 100 may include a computing system 105, a data management system (DMS) 110, and one or more computing devices 115, which may be in communication with one another via a network 120. The computing system 105 may generate, sto