WO2016111890A1

Rule based continuous drift and consistency management for complex systems

Abstract

Techniques are for rule-based continuous drift and consistency management for target systems. In one embodiment, a set of rules is stored in volatile or non-volatile store. The set of rules may include one or more drift rules and/or one or more consistency rules. A rule may be applied to one or more associated targets to detect drift or inconsistency. A drift rule identifies a set of one or more attributes and a source and may be applied by comparing a first configuration of the set of one or more attributes on an associated target with a second configuration of the set of one or more attributes on the source. A consistency rule may be applied to a composite target by comparing member targets that are grouped by target type. Notification data may be output if target drift or inconsistency is detected to alert a user.

WO2016111890A1, drawing sheet 1
Sheet 1 of 6

Term

No projected expiry on record.

  1. Priority
  2. Filed
  3. Published
  4. Today

22 claims: 17 independent, 5 dependent

  1. 1
    CLAIMS What is claimed is:1. A 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;applying, by one or more computing devices, the first drift rule from the set of one or more drift rules to a particular target that is associated with the first drift rule by comparing a first configuration of the set of one or more attributes on the particular target to a second configuration of the one or more attributes on the source;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;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;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.
  2. 3
    The method of any of Claims 1 or 2, further comprising:detecting a change in the first configuration of the set of one or more attributes on the particular target;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. 4
    The method of any of Claims 1 -3, further comprising: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;wherein the set of targets includes the particular target.
  4. 6
    The method of any of Claims 1 -5, further comprising: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;wherein the set of targets includes the particular target.
  5. 7
    The method of any of Claims 1 -6, 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;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.
  6. 8
    The method of any of Claims 1 -7, wherein the particular target belongs to a group of targets that are associated with the first drift rule;the method further comprising applying the first drift rule to each target that belongs to the group of targets.
  7. 9
    The method of any of Claims 1 -9, wherein the particular target is a composite target comprising a plurality of member targets; wherein the source is associated with a plurality of source members having a particular configuration; wherein the first drift rule is associated with a composite template that specifies a plurality of sub-templates; the method further comprising: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;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.
  8. 10
    The method of any of Claims 1-9, 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.
  9. 11
    The method of any of Claims 1-10, 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;applying a first consistency rule to the particular target to determine whether the first set of member targets are consistent.
  10. 12
    The method of any of Claims 1 -1 1, wherein outputting, by the one or more computing devices, notification data that indicates that the particular target has drifted from the source comprises one or more of persistently storing the notification data, sending the notification data to a user over a network, or causing display of the notification data.
  11. 13
    A 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;for a composite target that includes 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 to determine whether the first set of member targets is consistent;and comparing, based on the second sub-template, configurations of the second target type to determine whether the second set of member targets is consistent;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.
  12. 15
    The method of any of Claims 13-14, further comprising 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.
  13. 16
    The method of any of Claims 13-15, 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;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.
  14. 17
    The method of any of Claims 13-16, 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.
  15. 18
    The method of any of Claims 13-17, 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.
  16. 19
    The method of any of Claims 13-18, 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.
  17. 22
    One or more non-transitory storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in any of Claims 1-21. -32-