Skip to content

Commit

Permalink
- adding base alloy helm chart with README.md
Browse files Browse the repository at this point in the history
- adding base faro collector alloy helm chart with README.md

- creating a new lgtm umbrella chart with only one dependency and pre-configured values. Also adding a README.md
  • Loading branch information
EliseCastle23 committed Oct 15, 2024
1 parent c3c43f9 commit 42fa480
Show file tree
Hide file tree
Showing 45 changed files with 2,254 additions and 718 deletions.
30 changes: 30 additions & 0 deletions helm/alloy/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
apiVersion: v2
name: alloy
description: A Helm chart for deploying Grafana Alloy

# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application

# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0

# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "master"

# Dependencies
dependencies:
- name: alloy
version: "0.9.1"
repository: "https://grafana.github.io/helm-charts"
55 changes: 55 additions & 0 deletions helm/alloy/SETUP.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Grafana Alloy

## Overview

This document provides a guide for deploying Grafana Alloy to your Kubernetes cluster using Helm. Grafana Alloy is a powerful observability tool that collects and ships logs and metrics from your services to Grafana Loki and Mimir for storage and analysis. By deploying Alloy, you can gain deep insights into your system’s performance, track key metrics, and troubleshoot issues efficiently.

In this deployment, the Alloy ConfigMap plays a crucial role in configuring which logs are collected for Loki and which metrics are gathered for Mimir. It also specifies the endpoints for Loki and Mimir where the data will be sent.

Before deploying Alloy, it is important to first deploy the "observability" Helm chart, as it provides the necessary components and configuration for Alloy to function properly. Please refer to the SETUP.md observability chart documentation for instructions on how to set it up before proceeding with the Alloy deployment.

## Configuring Alloy

### Helm Chart Configuration

The Alloy configuration is the key component that allows users to customize what logs are collected for Loki and which metrics are collected for Mimir. Through this configuration, you can define the specific endpoints where logs and metrics should be sent, ensuring that data is properly routed for observability and analysis.

In this configuration, it is important to replace the placeholder hostnames (*.example.com) with the actual Loki and Mimir hostnames that were configured in the "observability" Helm chart. This ensures that logs are sent to the correct Loki endpoint and metrics are forwarded to the appropriate Mimir endpoint, allowing your observability stack to function effectively. Additionally, you can fine-tune the alloyConfigmapData to suit your environment's needs. Please click [here](https://grafana.com/docs/alloy/latest/reference/components/#components) to see in-depth documentation on how to do so.

```yaml
// Write Endpoints
// prometheus write endpoint
prometheus.remote_write "default" {
external_labels = {
cluster = "{{ .Values.cluster }}",
project = "{{ .Values.project }}",
}
endpoint {
url = "https://mimir.example.com/api/v1/push"

headers = {
"X-Scope-OrgID" = "anonymous",
}

}
}

// loki write endpoint
loki.write "endpoint" {
external_labels = {
cluster = "{{ .Values.cluster }}",
project = "{{ .Values.project }}",
}
endpoint {
url = "https://loki.example.com/loki/api/v1/push"
}
}
```
### Helm Chart Links
The link below will take you to the Grafana Alloy chart, providing a comprehensive list of configurable options to help you further customize your setup.

[Alloy Helm Chart](https://github.com/grafana/alloy/blob/main/operations/helm/charts/alloy/values.yaml)

---

By following this guide, you'll successfully configure Alloy to send logs and metrics to Grafana Loki and Mimir. The setup will ensure that Alloy collects the necessary observability data from your environment and forwards logs to Loki and metrics to Mimir for analysis and storage. This configuration will allow you to monitor your system's logs and metrics efficiently through Grafana.
9 changes: 9 additions & 0 deletions helm/alloy/templates/alloy-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: alloy-gen3
data:
config: |
{{- with .Values.alloy.alloyConfigmapData }}
{{- toYaml . | nindent 4 }}
{{ end }}
Loading

0 comments on commit 42fa480

Please sign in to comment.