Class AnalyzedClusterConfiguration

java.lang.Object
com.aoindustries.aoserv.cluster.analyze.AnalyzedClusterConfiguration

public class AnalyzedClusterConfiguration extends Object
Analyzes the cluster to find anything that is not optimal. This will be ran periodically from our NOC software in order to identify suboptimal configurations.

TODO: Analyze DomUGroups

TODO: Add in the concept of node groups (no more than a certain number of Dom0 per group sharing resources).

Author:
AO Industries, Inc.
  • Constructor Details

    • AnalyzedClusterConfiguration

      public AnalyzedClusterConfiguration(ClusterConfiguration clusterConfiguration)
      Analyzes the cluster looking for any non-optimal configurations. This will create a snapshot of the cluster results, subsequent changes to the cluster will not effect these values.
  • Method Details

    • getClusterConfiguration

      public ClusterConfiguration getClusterConfiguration()
      Gets the cluster configuration that is analyzed.
    • getAnalyzedDom0Configurations

      public List<AnalyzedDom0Configuration> getAnalyzedDom0Configurations()
      Gets the unmodifiable list of analyzed Dom0 configuration results.
    • getAllResults

      public boolean getAllResults(ResultHandler<Object> resultHandler, AlertLevel minimumAlertLevel)
      This convience method will obtain all the different results. This may be useful by heuristics that weigh the state by all the results.
      Returns:
      true if more results are wanted, or false to receive no more results.
    • isOptimal

      public boolean isOptimal()
      Determines if this is optimal, meaning all results have AlertLevel of NONE.
    • hasCritical

      public boolean hasCritical()
      Determines if this has at least one result with AlertLevel of CRITICAL.