EP3243135B1

Rule based continuous drift and consistency management for complex systems

Abstract

This record has no abstract on file.

EP3243135B1, drawing sheet 1
Sheet 1 of 10

Term

9.3 yearsleft in the term

Expires 29 December 2035.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Expires

15 claims: 3 independent, 12 dependent

  1. 1
    A method for monitoring a plurality of targets in a datacenter environment, each target being a host machine, a set of one or more hardware components of a host machine, and/or a set of one or more software resources running on a host machine, the method comprising:storing, in volatile or non-volatile storage, a set of one or more drift rules;wherein a first drift rule in the set of one or more drift rules identifies a set of one or more attributes and a source;wherein the first drift rule is associated with a composite template that specifies a plurality of sub-templates;wherein the source is associated with a plurality of source members having a particular configuration;collecting, by one or more processes that monitor the plurality of targets, attribute data that identifies a current configuration state of each target of the plurality of targets, the attribute data including hardware configuration information and/or software configuration information;applying, by one or more computing devices, the first drift rule from the set of one or more drift rules to a particular target of the plurality of targets, the particular target being associated with the first drift rule, by comparing a first configuration of the set of one or more attributes on the particular target, as specified in the collected attribute data, to a second configuration of the one or more attributes on the source;wherein the particular target is a composite target comprising a plurality of member targets;wherein the set of one or more attributes is a subset of a plurality of attributes for which configuration might change from the source, and wherein the plurality of attributes include other attributes that are not in the subset;storing mapping data that maps each member target of the plurality of member targets to a corresponding source member of the plurality of source members;based on comparing the first configuration of the set of one or more attributes on the particular target to the second configuration of the one or more attributes on the source, determining that the first configuration of the set of one or more attributes on the particular target does not match the second configuration of the one or more attributes on the source;wherein comparing the first configuration of the set of one or more attributes on the particular target to the second configuration of the one or more attributes on the source comprises comparing, based on the plurality of sub-templates, configurations of the plurality of member targets with configurations of the plurality of source members;computing a compliance score based on comparing the first configuration of the set of one or more attributes on the particular target to the second configuration of the one or more attributes on the source;wherein the compliance score indicates a degree by which the particular target has drifted from the source;in response to determining that the first configuration of the set of one or more attributes on the particular target does not match the second configuration of the one or more attributes on the source, outputting, by the one or more computing devices, notification data that indicates that the particular target has drifted from the source, wherein the compliance score is included in the notification data;wherein outputting, by the one or more computing devices, notification data that indicates that the particular target has drifted from the source comprises causing display of the notification data including the compliance score through a user interface for managing the plurality of targets;and wherein the method is performed by one or more computing devices.
  2. 2
    The method of Claim 1, wherein the compliance score expresses a ratio between (i) a total number of configuration items that are compared and that are drifted, and (ii) a total number of configuration items that are compared; and/or wherein the method further comprises:detecting a change in the first configuration of the set of one or more attributes on the particular target;and in response to detecting the change in the first configuration of the set of one or more attributes on the particular target, reapplying the first drift rule to the particular target.
  3. 3
    The method of Claim 1 or Claim 2, wherein the method further comprises:detecting a change to the first drift rule in the set of one or more drift rules;in response to detecting the change to the first drift rule in the set of one or more drift rules, reapplying the drift rule to a set of targets that are associated with the first drift rule;and wherein the set of targets includes the particular target;wherein, in some embodiments, the change to the first drift rule is one of a change to a configuration template associated with the first drift rule or a change in the source identified by the first drift rule.
  4. 4
    The method of any of Claims 1-3, wherein the method further comprises:detecting a change to configuration data of the source identified by the first drift rule;in response to detecting the change to configuration data of the source identified by the first drift rule, reapplying the drift rule to a set of targets that are associated with the first drift rule;and wherein the set of targets includes the particular target;and/or wherein the particular target is associated with the first drift rule and at least one other drift rule from the set of one or more drift rules;and wherein the at least one other drift rule identifies at least one of a different set of attributes or a different source;the method further comprising applying, by the one or more computing devices, the at least one other drift rule from the set of one or more drift rules to the particular target.
  5. 5
    The method of any of Claims 1-4, wherein the particular target belongs to a group of targets that are associated with the first drift rule;and wherein the method further comprises applying the first drift rule to each target that belongs to the group of targets;and/or wherein the source comprises one of a golden target with a recommended configuration, a gold configuration saved snapshot that stores the recommended configuration, or a baseline configuration snapshot that stores a functional configuration for the particular target from a previous point in time.
  6. 6
    The method of any of Claims 1-5, wherein the particular target is a composite target comprising a first set of member targets, the method further comprising:storing, in the volatile or non-volatile storage, a set of one or more consistency rules;and applying a first consistency rule to the particular target to determine whether the first set of member targets are consistent;and/or wherein outputting, by the one or more computing devices, notification data that indicates that the particular target has drifted from the source further comprises one or more of persistently storing the notification data, or sending the notification data to a user over a network.
  7. 7
    A method for monitoring a plurality of targets in a datacenter environment, each target being a host machine, a set of one or more hardware components of a host machine, and/or a set of one or more software resources running on a host machine, the method comprising:storing, in volatile or non-volatile storage, a composite template that includes a plurality of sub-templates;wherein the plurality of sub-templates includes a first sub-template for targets of a first target type and a second sub-template for targets of a second target type;collecting, by one or more processes that monitor the plurality of targets, attribute data that identifies a current configuration state of each target of the plurality of targets, the attribute data including hardware configuration information and/or software configuration information;for a composite target of the plurality of targets, the composite target including a first set of member targets of the first target type and a second set of member targets of the second target type: comparing, based on the first sub-template, configurations of the first set of member targets, as specified in the collected attribute data, to determine whether the first set of member targets is consistent;and comparing, based on the second sub-template, configurations of the second set of member targets, as specified in the collected attribute data, to determine whether the second set of member targets is consistent;computing a compliance score for the composite target based, at least in part, on how many attributes in the first set of member targets and the second set of member targets are inconsistent;in response to determining that the at least one of the first set of member target or the second set of member targets is not consistent, outputting, by the one or more computing devices, notification data that indicates that the composite target is inconsistent, wherein the compliance score is included in the notification data;wherein outputting, by the one or more computing devices, notification data that indicates that the composite target is inconsistent comprises causing display of the notification data including the compliance score through a user interface for managing the plurality of targets;and wherein the method is performed by one or more computing devices.
  8. 8
    The method of Claim 7, wherein comparing, based on the first sub-template, configurations of the first set of member target comprises comparing one or more configurations, of a first set of attributes identified by the first sub-template, on one or more respective member targets in the first set of member targets with a configuration, of the first set of attributes identified by the first sub-template, on a first reference target from the first set of member targets;and wherein comparing, based on the second sub-template, configurations of the second set of member target comprises comparing one or more configurations, of a second set of attributes identified by the second sub-template, on one or more respective member targets in the second set of member targets with a configuration, of the second set of attributes identified by the second sub-template, on a second reference target from the second set of member targets.
  9. 9
    The method of Claim 7 or Claim 8, wherein the compliance score expresses a ratio between (i) a total number of configuration items that are compared and that are different, and (ii) a total number of configuration items that are compared.
  10. 10
    The method of any of Claims 7-9, wherein the composite template further includes a third sub-template for targets of a third target type and the composite target includes a third set of member targets of the third target type; the method further comprising:comparing, based on the third sub-template, configurations of the third target type to determine whether the third set of member targets is consistent;and wherein outputting, by the one or more computing devices, notification data that indicates that the composite target is inconsistent is further responsive to a determination that the third set of member targets is not consistent.
  11. 11
    The method of any of Claims 7-10, wherein the first target type is based on a type of function performed by the first set of member targets and the second target type is based on a type of function performed by the second set of member targets;and/or wherein the first target type and the second target type are at least one of a cluster and high availability service, a database service, a database machine, an application service, or a domain discovery service.
  12. 12
    The method of any of Claims 7-11, wherein the composite template is part of a consistency rule that is associated with the composite target;wherein the consistency rule is applied to the composite target to determine whether the composite target is consistent;wherein applying the consistency rule to the composite target includes said comparing, based on the first sub-template, configurations of the first set of member targets to determine whether the first set of member targets is consistent and said comparing, based on the second sub-template, configurations of the second target type to determine whether the second set of member targets is consistent.
  13. 13
    The method of Claim 12, wherein the method further comprises:detecting at least one of an addition of a member target to the composite target, a removal of a member target from the composite target, or a change in configuration data on the composite target for one or more attributes that are identified by the composite template;and in response to said detecting, reapplying the consistency rule to the composite target;and/or wherein the method further comprises: detecting a change in the composite template;in response to detecting the change to the composite template, reapplying the consistency rule to a set of composite targets that are associated with the consistency rule.
  14. 14
    The method of any of Claims 1-13, wherein the notification data further includes at least one recommended corrective action.
  15. 15
    One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in any of Claims 1-14.