Searchlight is an Alert Management project. It has a Controller to watch Kubernetes Objects. Alert objects are consumed by Searchlight Controller to create Icinga2 hosts, services and notifications.
Following resources are used in Searchlight
Resource | Version |
---|---|
Icinga2 | 2.4.8 |
Icingaweb2 | 2.1.2 |
Monitoring Plugins | 2.1.2 |
Postgres | 9.5 |
Searchlight Controller | 1.5.3 |
Searchlight supports additional custom plugins. Followings are currently added
Check Command | Plugin | Details |
---|---|---|
component_status | check_component_status | To check Kubernetes components |
influx_query | check_influx_query | To check InfluxDB query result |
json_path | check_json_path | To check any API response by parsing JSON using JQ queries |
node_count | check_node_count | To check total number of Kubernetes node |
node_status | check_node_status | To check Kubernetes Node status |
pod_exists | check_pod_exists | To check Kubernetes pod existence |
pod_status | check_pod_status | To check Kubernetes pod status |
prometheus_metric | check_prometheus_metric | To check Prometheus query result |
node_disk | check_node_disk | To check Node Disk stat |
volume | check_volume | To check Pod volume stat |
kube_event | check_kube_event | To check all Kubernetes Warning events happened in last c seconds |
kube_exec | check_kube_exec | To check Kubernetes exec command. Returns OK if exit code is zero, otherwise, returns CRITICAL |
Note: All of these plugins are combined into a single plugin called
hyperalert
Searchlight can send alert notification via following notifiers:
To deploy Searchlight in Kubernetes cluster, follow this guide. This guide will walk you through following three steps:
- Creating Third Party Resource
- Deploying Icinga2
- Deploying Searchlight Controller
If you want to know how Searchlight Controller is working, read this doc.
If you're interested in being a contributor, read following guides:
-
Build guides
If you have any questions, you can reach out to us.