Installation
Step-by-step guide to installing AlertHawk with the Helm chart.
Prerequisites
- Kubernetes cluster (1.x or later)
- Helm 3.x installed (
helm version) - kubectl configured for your cluster
External dependencies
You must have (or install) these before or with the chart:
SQL Server
Required for auth, notification, monitoring, and metrics-api. Provide a SQL Server instance and set ConnectionStrings__SqlConnectionString in each component’s env section (see Environment variables).
ClickHouse (for metrics-api)
The metrics-api component needs ClickHouse for metrics storage.
Option 1: Install ClickHouse with the chart (recommended)
In your values.yaml:
clickhouse:
enabled: trueThen set in metrics-api.env:
CLICKHOUSE_CONNECTION_STRING: http://clickhouse:8123/defaultOption 2: Use an existing ClickHouse
Set clickhouse.enabled: false and configure CLICKHOUSE_CONNECTION_STRING in metrics-api.env to point to your instance (e.g. http://my-clickhouse:8123/default).
ClickHouse chart reference: clickhouse-alerthawk.
RabbitMQ or Azure Service Bus (for messaging)
monitoring, notification, and metrics-api use a message queue. Configure either:
- RabbitMQ:
RabbitMq__Host,RabbitMq__User,RabbitMq__Pass, andQueueType: RABBITMQ - Azure Service Bus:
ServiceBus__ConnectionString,ServiceBus__QueueName, andQueueType: SERVICEBUS(or equivalent)
See Environment variables per service.
Azure AD (optional)
For SSO and JWT validation, configure Azure AD in the services that need it (auth, monitoring, notification, metrics-api):
AzureAd__ClientIdAzureAd__TenantIdAzureAd__ClientSecretAzureAd__Instance(e.g.https://login.microsoftonline.com/)
Install steps
1. Add the Helm repository
helm repo add alerthawk https://thiagoloureiro.github.io/AlertHawk.Chart/
helm repo update2. Prepare values
Download default values and edit them:
helm show values alerthawk/alerthawk > my-values.yamlEdit my-values.yaml:
- Set SQL Server connection strings for auth, notification, monitoring, metrics-api.
- Set ClickHouse connection string in
metrics-api.env(and optionally enableclickhouse.enabled: true). - Set RabbitMQ or Service Bus in monitoring, notification, and metrics-api.
- Set JWT (
Jwt__Key,Jwt__Issuers,Jwt__Audiences) consistently across services. - Set Azure AD and other secrets as needed.
See Configuration and Environment variables.
3. Install the chart
helm install alerthawk alerthawk/alerthawk -f my-values.yamlOr use a custom release name and namespace:
helm install my-alerthawk alerthawk/alerthawk -f my-values.yaml -n alerthawk --create-namespace4. Verify
kubectl get pods
kubectl get svcCheck that deployments for alerthawk-monitoring, alerthawk-auth, alerthawk-notification, alerthawk-metrics-api, and alerthawk-ui are running.
Upgrade
After changing values.yaml or chart version:
helm repo update
helm upgrade alerthawk alerthawk/alerthawk -f my-values.yamlUninstall
helm uninstall alerthawkIf you used a different release or namespace:
helm uninstall my-alerthawk -n alerthawkNote: If ClickHouse was installed as a subchart (clickhouse.enabled: true), it is removed with the release. PVCs and external resources (SQL Server, RabbitMQ, etc.) are not removed by Helm.