Foremast-brain makes health judgments of Foremast, a service health detection and canary analysis system for Kubernetes. There are two main criteria that Foremast-brain evaluates:
- Check if the baseline and current health metric have the same distribution pattern.
- Calculate the historical model and detect current metric anomalies.
Foremast-brain will make a judgment, Healthy or Unhealthy, based on the evaluation result.
Please check out the architecture and design for more details.
There are multiple sets of parameters that can be overwritten.
ML_ALGORITHM-- Algorithm which you want to run. Please refer to AI_MODEL for all the supported algorithmsMIN_HISTORICAL_DATA_POINT_TO_MEASURE-- Minimum historical data points sizeML_BOUND-- Measurement is upper bound, lower bound or upper and lower boundML_THRESHOLD-- Machine learning algorithm threshold
MAX_STUCK_IN_SECONDS-- Max process time until another foremast-brain process will take over and reprocessMAX_CACHE_SIZE-- Max cached model size
ML_PAIRWISE_ALGORITHM-- There are multiple options: ALL, ANY, MANN_WHITE, WILCOXON, KRUSKAL, etc.ML_PAIRWISE_THRESHOLD-- Pairwise algorithm thresholdMIN_MANN_WHITE_DATA_POINTS-- Minimum data points required by Mann-Whitney U algorithmMIN_WILCOXON_DATA_POINTS-- Minimum data points required by Wilcoxon algorithmMIN_KRUSKAL_DATA_POINTS-- Minimum data points required by Kruskal algorithm
You can add algorithm names and different parameters. Please refer foremast-brain for details.
The following is an example of ES_ENDPOINT:
env:
- name: ES_ENDPOINT
value: "http://elasticsearch-discovery.foremast.svc.cluster.local:9200"Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
This project is licensed under the Apache License - see the LICENSE file for details
