Home

Awesome

Praeco Helm Chart

This Helm Chart is Beta Release.

Praeco is a very useful Web GUI for elastalert2.

elastalert2 is a simple framework for alerting on anomalies, spikes, or other patterns of interest from data in Elasticsearch.

Compatibility

This chart supports ES7, ES8.

If there are many requests, I'll consider to support ES6. I think that switching container tag enables to support other ES ver. (Container Image Tags are not implemented...)

See the comment in the default values.yaml to know why writebackIndex is required for ES 6.x.

Installing the Chart

To install the chart with the release name my-release:

$ helm repo add daichi703n https://daichi703n.github.io/charts/stable 
$ helm install --name my-release daichi703n/praeco

with Slack

$ helm install --name my-release daichi703n/praeco \
    --set elastalert.slack_webhook_url=https://hooks.slack.com/services/XXXXXXXXX/XXXXXXXXX/XXXXXXXXXXXXXXXXXXXXXXXX \
    --set elastalert.extraConfigOptions.slack_ignore_ssl_errors=true

Please refer to the Configurations and vars.yml.example.

Uninstalling the Chart

To uninstall/delete the my-release deployment:

$ helm delete my-release

Configuration

Configurations for ElastAlert is cloned from ElastAlert Helm.

ParameterDescriptionDefault
image.repositorydocker imagepraecoapp/praeco
image.tagdocker image taglatest
image.pullPolicyimage pull policyIfNotPresent
elastalert.image.repositorydocker imagepraecoapp/elastalert-server
elastalert.image.tagdocker image tag"20230219"
elastalert.image.pullPolicyimage pull policyIfNotPresent
elastalert.podAnnotationsAnnotations to be added to pods{}
elastalert.commandcommand override for containerNULL
elastalert.argsargs override for containerNULL
elastalert.replicaCountnumber of replicas to run1
elastalert.elasticsearch.hostelasticsearch endpoint to useelasticsearch
elastalert.elasticsearch.portelasticsearch port to use80
elastalert.elasticsearch.useSslwhether or not to connect to es_host using SSLFalse
elastalert.elasticsearch.usernameUsername for ES with basic authNULL
elastalert.elasticsearch.passwordPassword for ES with basic authNULL
elastalert.elasticsearch.verifyCertswhether or not to verify TLS certificatesTrue
elastalert.elasticsearch.clientCertpath to a PEM certificate to use as the client certificate/certs/client.pem
elastalert.elasticsearch.clientKeypath to a private key file to use as the client key/certs/client-key.pem
elastalert.elasticsearch.caCertspath to a CA cert bundle to use to verify SSL connections/certs/ca.pem
elastalert.elasticsearch.certsVolumescerts volumes, required to mount ssl certificates when elasticsearch has tls enabledNULL
elastalert.elasticsearch.certsVolumeMountsmount certs volumes, required to mount ssl certificates when elasticsearch has tls enabledNULL
elastalert.extraConfigOptionsAdditional options to propagate to all rules, cannot be alert, type, name or index{}
elastalert.optEnvAdditional pod environment variable definitions[]
elastalert.extraVolumesAdditional volume definitions[]
elastalert.extraVolumeMountsAdditional volumeMount definitions[]
elastalert.resourcesContainer resource requests and limits{}
elastalert.rulesRule and alert configuration for Elastalert{} example shown in vars.yml.example
elastalert.runIntervalMinsDefault interval between alert checks, in minutes1
elastalert.realertIntervalMinsTime between alarms for same rule, in minutesNULL
elastalert.alertRetryLimitMinsTime to retry failed alert deliveries, in minutes2880 (2 days)
elastalert.bufferTimeMinsDefault rule buffer time, in minutes15
elastalert.writebackIndexName or prefix of elastalert index(es)elastalert_status
elastalert.nodeSelectorNode selector for deployment{}
elastalert.tolerationsTolerations for deployment[]
elastalert.metrics.enabledEnable elastalert prometheus endpointtrue
elastalert.metrics.portIf "metrics" is set to true, prometheus metrics will be exposed by the pod on this port.9979
elastalert.metrics.serviceMonitor.enabledEnable elastalert prometheus service monitortrue
elastalert.metrics.serviceMonitor.namespaceEnable elastalert prometheus service monitor namespaceprometheus
elastalert.metrics.prometheusRule.enabledEnable elastalert prometheus rulestrue
praeco.schemaSchema for your Praeco Web GUI, used for link URL in alertshttp
praeco.external_hostHost for your Praeco Web GUIpraeco
praeco.portPort for your Praeco Web GUI8080

If you have any ploblem, feature-request, please open a github issue.