This Helm chart provides Kubernetes deployment configurations for qryn a polyglot, lighweight, multi-standard observability framework for Logs, Metrics and Traces, designed to be drop-in compatible with Loki, Prometheus, Tempo and Opentelemetry.
- Kubernetes 1.19+
- Helm 3.7+
- A running ClickHouse server (optional but recommended)
Get Repository Info
helm repo add qryn-helm https://metrico.github.io/qryn-helm/
helm repo update
See helm repository for command documentation.
Install Chart To deploy qryn using this Helm chart, use the following command:
helm repo add qryn-helm https://metrico.github.io/qryn-helm/
helm install [RELEASE_NAME] qryn-helm/qryn-helm --version 0.1.4
See helm install for command documentation.
For customization, you can provide a values.yaml
file or use --set
flags to override specific configurations during installation.
Feel free to modify the configurations based on your requirements and environment.
Key | Default | Description |
---|---|---|
kubernetesClusterDomain |
cluster.local |
Kubernetes cluster DNS domain. |
Key | Default | Description |
---|---|---|
image.repository |
qxip/qryn |
Qryn image repository. |
image.tag |
"" |
Qryn image tag (default: latest). |
imagePullSecrets |
[] |
Secrets for pulling images. |
imageCredentials |
{} |
Custom image registry credentials. |
Key | Default | Description |
---|---|---|
replicaCount |
1 |
Number of replicas. |
podAnnotations |
{} |
Annotations for pods. |
podLabels |
{} |
Labels for pods. |
resources |
See values.yaml |
Resource requests and limits. |
Key | Default | Description |
---|---|---|
service.type |
ClusterIP |
Service type (e.g., ClusterIP, NodePort, LoadBalancer). |
service.port |
3100 |
Service port. |
Key | Default | Description |
---|---|---|
livenessProbe.enabled |
false |
Enable liveness probe. |
livenessProbe.endpoint |
/metrics |
Endpoint for liveness probe. |
Key | Default | Description |
---|---|---|
ingress.enabled |
false |
Enable ingress. |
ingress.className |
"" |
Ingress class name. |
ingress.annotations |
{} |
Annotations for ingress. |
ingress.hosts |
See values.yaml |
Hosts configuration. |
ingress.tls |
[] |
TLS configuration. |
Key | Default | Description |
---|---|---|
autoscaling.enabled |
false |
Enable Horizontal Pod Autoscaler. |
autoscaling.minReplicas |
1 |
Minimum number of replicas. |
autoscaling.maxReplicas |
5 |
Maximum number of replicas. |
autoscaling.targetCPUUtilizationPercentage |
80 |
Target CPU utilization percentage. |
autoscaling.targetMemoryUtilizationPercentage |
80 |
Target memory utilization percentage. |
Key | Default | Description |
---|---|---|
env.CLICKHOUSE_SERVER |
localhost |
ClickHouse server address. |
env.CLICKHOUSE_PORT |
8123 |
ClickHouse server port. |
env.CLICKHOUSE_DB |
qryn |
ClickHouse database name. |
env.CLICKHOUSE_AUTH |
default: |
ClickHouse authentication credentials. |
Key | Default | Description |
---|---|---|
serviceAccount.create |
true |
Create a ServiceAccount. |
serviceAccount.automount |
false |
Automount API credentials. |
serviceAccount.name |
"" |
Custom service account name. |
Key | Default | Description |
---|---|---|
nodeSelector |
{} |
Node selection constraints. |
tolerations |
[] |
Toleration rules. |
affinity |
{} |
Affinity rules. |
Environment Variable | Default | Usage |
---|---|---|
CLICKHOUSE_SERVER | localhost | Clickhouse Server address |
CLICKHOUSE_PORT | 8123 | Clickhouse Server port |
CLICKHOUSE_DB | qryn | Clickhouse Database Name |
CLICKHOUSE_AUTH | default: | Clickhouse Authentication (user:password) |
CLICKHOUSE_PROTO | http | Clickhouse Protocol (http, https) |
CLICKHOUSE_TIMEFIELD | record_datetime | Clickhouse DateTime column for native queries |
CLUSTER_NAME | undefined | Clickhouse Cluster name |
BULK_MAXAGE | 2000 | Max Age for Bulk Inserts |
BULK_MAXSIZE | 5000 | Max Size for Bulk Inserts |
BULK_MAXCACHE | 50000 | Max Labels in Memory Cache |
LABELS_DAYS | 7 | Max Days before Label rotation |
SAMPLES_DAYS | 7 | Max Days before Timeseries rotation |
HOST | 0.0.0.0 | HTTP API IP |
PORT | 3100 | HTTP API PORT |
QRYN_LOGIN | undefined | Basic HTTP Username |
QRYN_PASSWORD | undefined | Basic HTTP Password |
READONLY | false | Readonly Mode, no DB Init |
OMIT_CREATE_TABLES | false | Omit database provisioning on startup. Dangerous. |
FASTIFY_BODYLIMIT | 5242880 | API Maximum payload size in bytes |
FASTIFY_REQUESTTIMEOUT | 0 | API Maximum Request Timeout in ms |
FASTIFY_MAXREQUESTS | 0 | API Maximum Requests per socket |
FASTIFY_METRICS | false | API /metrics exporter |
ADVANCED_PROMETHEUS_MAX_SAMPLES | 5000000 | Max samples per a promql request |
CORS_ALLOW_ORIGIN | * | CORS Allow Origin, default to any |
TEMPO_SPAN | 24 | Default span for Tempo queries in hours |
TEMPO_TAGTRACE | false | Optional tagging of TraceID (expensive) |
DEBUG | false | Debug Mode (for backwards compatibility) |
LOG_LEVEL | info | Log Level |
HASH | xxhash64 | Hash function using for fingerprints. Currently supported short-hash and xxhash64 (xxhash64 function) |
ALERTMAN_URL | false | Alertmanager API URL, i.e., http://my_alertmanager_url:1234 |
ADVANCED_SAMPLES_ORDERING | timestamp_ns | Specify the 'ORDER BY' your samples table should use (for multiple use comma-separated list fingerprint,timestamp_ns) |
For more information about qryn environment variables, visit qryn Environments.
Whether it's code, documentation or grammar, we ❤️ all contributions. Not sure where to get started?
- Join our Matrix Channel, and ask us any questions.
- Have a PR or idea? Request a session / code walkthrough with our team for guidance.
©️ QXIP BV, released under the GNU Affero General Public License v3.0. See LICENSE for details.