Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

microsatellites with tls, multiple ports, and image update #12

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 18 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

This is a Helm chart used to deploy a Lightstep **microsatellite**. This repo is a fork of [lightstep-satellite-helm-chart](https://github.com/lightstep/lightstep-satellite-helm-chart/) for Lightstep microsatellites. Everything version 2.0.0 and after will be for microsatellites only.

All configuration should be made in the `values.yaml` file. Nothing else should need to be modified.
All configuration should be made in the `values.yaml` file.

## Required Configuration

Expand All @@ -21,7 +21,24 @@ Type: Opaque
Data
collector_satellite_key_secret_key: 390 bytes
```
### TLS Requirement for Production Environment

Create a secret with your TLS cert:
```bash
$ kubectl describe secret lightstep-satellite-tls
Name: lightstep-satellite-tls
Namespace: default
Labels: <none>
Annotations: <none>

Type: Opaque

Data
====
YOURINFO.bundle.pem: 1371 bytes
YOURINFO.key.pem: 1675 bytes
```
Uncomment the TLS Volumes section in values.yaml and enable the necesarry secure ports on your service.
## Running the helm chart

In order to install the helm chart, clone the project, input your satellite key (and any other configuration desired) and then run
Expand Down
7 changes: 7 additions & 0 deletions charts/lightstepsatellite/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
## 2.0.8
tls-and-image-update
This update includes improvements to the way customers can send data to Lightstep, additions include:
* New forward_spans.request.compressed_bytes.sum metric from Microsatellites that represents the bytes of compressed span data emitted.
* New forward_spans.request.compressed_bytes.failed metric from Microsatellites that represents the bytes of compressed span data that failed to send from the Microsatellite. The metric includes the code tag, allowing you see the types of errors.
* You can now sample trace data by sending a percentage (between 1 and 100) of spans using the new sample_percent configuration for the Microsatellite or using the API. Setting the parameter using the API now takes precedence over the setting in the configuration file.

## 2.0.7

* New forward_spans.request.compressed_bytes.sum metric from Microsatellites that represents the bytes of compressed span data emitted.
Expand Down
2 changes: 1 addition & 1 deletion charts/lightstepsatellite/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
apiVersion: v1
name: lightstep
version: 2.0.7
version: 2.0.8
appVersion: "2022-04-28_17-39-22Z"
description: Lightstep microsatellite to collect telemetry data.
home: https://lightstep.com/
Expand Down
10 changes: 7 additions & 3 deletions charts/lightstepsatellite/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# lightstep

![Version: 2.0.7](https://img.shields.io/badge/Version-2.0.7-informational?style=flat-square) ![AppVersion: 2022-04-28_17-39-22Z](https://img.shields.io/badge/AppVersion-2022--04--28_17--39--22Z-informational?style=flat-square)
![Version: 2.0.8](https://img.shields.io/badge/Version-2.0.8-informational?style=flat-square) ![AppVersion: 2022-04-28_17-39-22Z](https://img.shields.io/badge/AppVersion-2022--04--28_17--39--22Z-informational?style=flat-square)

Lightstep microsatellite to collect telemetry data.

Expand Down Expand Up @@ -49,8 +49,10 @@ Lightstep microsatellite to collect telemetry data.
| securityContext.runAsUser | int | `1000` | |
| service.annotations | object | `{}` | |
| service.grpc | bool | `false` | set to true if you're using GRPC in order to deploy as a headless service for better load balancing |
| service.grpcinsecure | int | `8184` | |
| service.httpPort | int | `8181` | |
| service.ports[0].name | string | `"httpPort"` | |
| service.ports[0].port | int | `8181` | |
| service.ports[1].name | string | `"grpcinsecure"` | |
| service.ports[1].port | int | `8184` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.clusterRole.create | bool | `true` | |
Expand Down Expand Up @@ -88,6 +90,8 @@ Lightstep microsatellite to collect telemetry data.
| statsd.securityContext.runAsNonRoot | bool | `true` | |
| statsd.securityContext.runAsUser | int | `1000` | |
| tolerations | list | `[]` | |
| volumeMounts | object | `{}` | |
| volumes | object | `{}` | |

----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
4 changes: 4 additions & 0 deletions charts/lightstepsatellite/templates/deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ spec:
serviceAccountName: {{ include "lightstep.serviceAccountName" . }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
volumes:
{{- toYaml .Values.volumes | nindent 6 }}
containers:
- name: lightstep-microsatellite
image: "{{ .Values.image.repository }}:{{ .Values.image.version }}"
Expand Down Expand Up @@ -166,6 +168,8 @@ spec:
initialDelaySeconds: 60
periodSeconds: 20
successThreshold: 1
volumeMounts:
{{- toYaml .Values.volumeMounts | nindent 10 }}
{{- if .Values.statsd.enabled }}
- name: statsd-exporter
securityContext:
Expand Down
10 changes: 2 additions & 8 deletions charts/lightstepsatellite/templates/service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,6 @@ spec:
{{ else }}
type: {{ .Values.service.type }}
{{ end }}
ports:
- name: http
port: {{ .Values.service.httpPort }}
targetPort: {{ .Values.service.httpPort }}
- name: grpc-insecure
port: {{ .Values.service.grpcinsecure }}
targetPort: {{ .Values.service.grpcinsecure }}
ports: {{ .Values.service.ports | toYaml | nindent 4 }}
selector:
{{- include "lightstep.selectorLabels" . | nindent 4 }}
{{- include "lightstep.selectorLabels" . | nindent 4 }}
26 changes: 24 additions & 2 deletions charts/lightstepsatellite/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -68,10 +68,15 @@ securityContext:

service:
type: ClusterIP
httpPort: 8181
# -- set to true if you're using GRPC in order to deploy as a headless service for better load balancing
grpc: false
grpcinsecure: 8184
ports:
- name: httpPort
port: 8181
- name: grpcinsecure
port: 8184
# - name: grpcsecure
# port: 9292
annotations: {}

# For details on the Lightstep configuration parameters, please refer to: https://docs.lightstep.com/docs/micro-satellite-configuration-parameters
Expand Down Expand Up @@ -124,6 +129,23 @@ resources:
memory: 2Gi
cpu: 2

# If using TLS to from your prod env. Uncomment and remove {} to use
volumes: {}
# - name: lightstep-satellite-tls
# secret:
# defaultMode: 420
# items:
# - key: YOURKEY.bundle.pem
# path: YOURPATH.bundle.pem
# - key: YOURKEY.key.pem
# path: YOURPATH.com.key.pem
# secretName: lightstep-satellite-tls

volumeMounts: {}
# - mountPath: /mnt/lightstep/
# name: lightstep-satellite-tls
# readOnly: true

nodeSelector: {}

tolerations: []
Expand Down