90 lines
4.6 KiB
Markdown
90 lines
4.6 KiB
Markdown
# Seq Input GELF - Helm Chart
|
|
|
|
[](https://twitter.com/SpeckleSystems) [](https://discourse.speckle.works) [](https://speckle.systems) [](https://speckle.guide/dev/)
|
|
|
|
## Introduction
|
|
|
|
This repository contains a Helm Chart for deploying [DataLust's `seq-input-gelf`](https://docs.datalust.co/docs/using-gelf#enabling-gelf-in-docker) Docker image to a Kubernetes cluster.
|
|
|
|
If deploying `seq-input-gelf` alongside `seq`, please use DataLust's [official Helm Chart](https://github.com/datalust/helm.datalust.co/tree/main/charts/seq). This Helm Chart allows `seq-input-gelf` to be deployed independently of `seq`.
|
|
|
|
You may wish to deploy `seq-input-gelf` if you are exporting logs in Graylog Extended Log Format (GELF).
|
|
|
|
You may wish to deploy `seq-input-gelf` independently of `seq` if you have a multiple Kubernetes clusters, and wish to transfer log data from a source cluster to a target cluster, running `seq`. Alternatively, you may have `seq` deployed on a non-Kubernetes environment, and wish to export logs messages from Kubernetes to that external seq instance.
|
|
|
|
This project or repository is in no way affiliated with DataLust or Seq.
|
|
|
|
## Documentation
|
|
|
|
### Usage
|
|
|
|
1. You will require [Helm](https://helm.sh/docs/intro/install/) and access to a [Kubernetes](https://kubernetes.io/) cluster to which you have appropriate permissions to deploy resources.
|
|
1. Clone this repository and in a shell terminal, `cd` in to the root directory of the cloned repository.
|
|
1. Create a namespace to deploy into:
|
|
|
|
```shell
|
|
kubectl create namespace seq-input-gelf
|
|
```
|
|
|
|
1. Run the following command to create a secret containing your deployment key, replacing `YOURAPIKEY` with an [API key generated by your Seq instance](https://docs.datalust.co/docs/api-keys):
|
|
|
|
```shell
|
|
kubectl create secret generic seq-api-key --from-literal=api-key=YOURAPIKEY --namespace seq-input-gelf
|
|
```
|
|
|
|
1. Add the helm repository for this Helm Chart
|
|
|
|
```shell
|
|
helm repo add seq-input-gelf https://specklesystems.github.io/seq-input-gelf/stable
|
|
```
|
|
|
|
1. Update the value of `seq.url` in `./examples/values.yaml` file to match the url of your seq instance. The default example assumes seq is hosted within the same Kubernetes cluster with a Service named `seq` within a namespace named `seq`. Please adjust this as required.
|
|
|
|
1. Run the following command to install the helm chart in your kubernetes cluster. Note that this will create a new namespace named `seq-input-gelf`:
|
|
|
|
```shell
|
|
helm upgrade seq-input-gelf \
|
|
seq-input-gelf \
|
|
--namespace seq-input-gelf \
|
|
--install \
|
|
--values ./examples/values.yaml
|
|
```
|
|
|
|
1. Verify that the deployment has successfully [rolled out](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#deployment-status):
|
|
|
|
```shell
|
|
kubectl rollout status deployment/seq-input-gelf --namespace seq-input-gelf
|
|
```
|
|
|
|
### Developing & Debugging
|
|
|
|
1. Ensure the Helm chart can be templated:
|
|
|
|
```shell
|
|
helm template seq-input-gelf ./charts/seq-input-gelf
|
|
```
|
|
|
|
### Contributing
|
|
|
|
Please make sure you read the [contribution guidelines](.github/CONTRIBUTING.md) and [code of conduct](.github/CODE_OF_CONDUCT.md) for an overview of the practices we try to follow.
|
|
|
|
#### Prerequisites
|
|
|
|
1. Your code must pass our pre-commit checks in order to be accepted.
|
|
1. Install [pre-commit](https://pre-commit.com/#install).
|
|
1. In your shell terminal, `cd` to the root directory of this repository.
|
|
1. Run `pre-commit install`.
|
|
1. Review the output and adjust your contribution as necessary.
|
|
|
|
### Community
|
|
|
|
This Helm Chart is maintained by Speckle. The Speckle Community hangs out on [the forum](https://discourse.speckle.works), do join and introduce yourself & feel free to ask us questions!
|
|
|
|
## Security
|
|
|
|
For any security vulnerabilities or concerns, please contact us directly at security[at]speckle.systems.
|
|
|
|
## License
|
|
|
|
Unless otherwise described, the code in this repository is licensed under the Apache-2.0 License. Please note that some modules, extensions or code herein might be otherwise licensed. This is indicated either in the root of the containing folder under a different license file, or in the respective file's header. If you have any questions, don't hesitate to get in touch with us via [email](mailto:hello@speckle.systems).
|