Skip to content

Commit df1d0f2

Browse files
authored
Merge pull request #4 from control-theory/env_agent_id
use config map
2 parents 2928c0b + 0afbb5f commit df1d0f2

File tree

7 files changed

+23
-84
lines changed

7 files changed

+23
-84
lines changed

charts/ct-agent/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ apiVersion: v2
22
name: ct-agent
33
description: ControlTheory Kubernetes Agent
44
type: application
5-
version: 0.1.4
5+
version: 0.1.5
66
appVersion: "1.1.0"

charts/ct-agent/templates/cluster_role.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ metadata:
1717
namespace: {{ .Release.Namespace }}
1818
subjects:
1919
- kind: ServiceAccount
20-
name: {{ .Values.serviceAccount.name }}
20+
name: {{ .Release.Name }}-sa
2121
namespace: {{ .Release.Namespace }}
2222
roleRef:
2323
kind: ClusterRole
Lines changed: 5 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,9 @@
1+
{{- $configMapName := printf "%s-agentid" .Release.Name }}
2+
{{- $existing := lookup "v1" "ConfigMap" .Release.Namespace $configMapName }}
13
apiVersion: v1
24
kind: ConfigMap
35
metadata:
4-
name: {{ .Release.Name }}-config
5-
labels:
6-
app: {{ .Release.Name }}
6+
name: {{ $configMapName }}
7+
namespace: {{ .Release.Namespace }}
78
data:
8-
config.yaml: |
9-
debug: true
10-
server:
11-
admission_token: {{ .Values.deployment.controlplane.admission_token }}
12-
# point to the OpAMP Server
13-
endpoint: {{ .Values.deployment.controlplane.endpoint }}
14-
tls:
15-
insecure: true
16-
# Disable verification to test locally.
17-
# Don't do this in production.
18-
insecure_skip_verify: true
19-
# For more TLS settings see config/configtls.ClientConfig
20-
21-
capabilities:
22-
reports_effective_config: true
23-
reports_own_metrics: true
24-
reports_health: true
25-
accepts_remote_config: true
26-
reports_remote_config: true
27-
28-
agent:
29-
executable: /ctotel
30-
args:
31-
- --config
32-
- /data/effective.yaml
33-
34-
storage:
35-
directory: /data
9+
instance_uid: {{ if $existing }}{{ index $existing.data "instance_uid" }}{{ else }}{{ uuidv4 }}{{ end }}

charts/ct-agent/templates/deployment.yaml

Lines changed: 12 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -16,21 +16,8 @@ spec:
1616
app: {{ .Release.Name }}
1717
spec:
1818
{{- if .Values.serviceAccount.create }}
19-
serviceAccountName: {{ .Values.serviceAccount.name }}
19+
serviceAccountName: {{ .Release.Name }}-sa
2020
{{- end }}
21-
{{- if .Values.imagePullSecret }}
22-
imagePullSecrets:
23-
- name: {{ .Values.imagePullSecret }}
24-
{{- end }}
25-
volumes:
26-
{{- if .Values.deployment.pvc }}
27-
- name: storage-volume
28-
persistentVolumeClaim:
29-
claimName: {{ .Release.Name }}-pvc
30-
{{- end }}
31-
- name: config-volume
32-
configMap:
33-
name: {{ .Release.Name }}-config
3421
containers:
3522
- name: {{ .Release.Name }}
3623
image: "{{ .Values.image.repository }}:{{ .Values.image.tag}}"
@@ -52,33 +39,31 @@ spec:
5239
- {{ . | quote }}
5340
{{- end }}
5441
{{- end }}
55-
{{- if .Values.deployment.controlplane }}
42+
5643
env:
44+
- name: AGENT_INSTANCE_ID
45+
valueFrom:
46+
configMapKeyRef:
47+
name: {{ .Release.Name }}-agentid
48+
key: instance_uid
49+
{{- if .Values.deployment.controlplane }}
5750
- name: CONTROLPLANE_ENDPOINT
5851
value: "{{ .Values.deployment.controlplane.endpoint }}"
5952
- name: ADMISSION_TOKEN
6053
value: "{{ .Values.deployment.controlplane.admission_token }}"
54+
{{- end }}
6155
{{- range $name, $value := .Values.deployment.env }}
6256
- name: {{ $name }}
6357
value: "{{ $value }}"
6458
{{- end }}
65-
{{- end }}
66-
volumeMounts:
67-
{{- if .Values.deployment.pvc }}
68-
- name: storage-volume
69-
mountPath: /data
70-
{{- end }}
71-
- name: config-volume
72-
mountPath: /var/ct
73-
readOnly: true
7459
ports:
7560
- name: {{ .Release.Name }}-http
7661
containerPort: {{ .Values.service.otelhttp.port }}
7762
- name: {{ .Release.Name }}-grpc
7863
containerPort: {{ .Values.service.otelgrpc.port }}
7964
- name: {{ .Release.Name }}-sd
8065
containerPort: {{ .Values.service.statsd.port }}
81-
{{- if .Values.deployment.nodegroup }}
66+
{{- if .Values.deployment.nodeSelector }}
8267
nodeSelector:
83-
alpha.eksctl.io/nodegroup-name: "{{ .Values.deployment.nodegroup }}"
84-
{{- end }}
68+
{{- toYaml .Values.deployment.nodeSelector | nindent 2 }}
69+
{{- end }}

charts/ct-agent/templates/pvc.yaml

Lines changed: 0 additions & 17 deletions
This file was deleted.

charts/ct-agent/templates/serviceaccount.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
apiVersion: v1
33
kind: ServiceAccount
44
metadata:
5-
name: {{ include "..serviceAccountName" . }}
5+
name: {{ .Release.Name }}-sa
6+
namespace: {{ .Release.Namespace }}
67
labels:
78
{{- include "..labels" . | nindent 4 }}
89
{{- with .Values.serviceAccount.annotations }}

charts/ct-agent/values.yaml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,11 @@ deployment:
88
controlplane:
99
admission_token: "you-need-to-provide-it"
1010
endpoint: "ws://controlplane:4320/v1/opamp"
11-
pvc:
12-
enabled: true
13-
accessMode: ReadWriteOnce
14-
size: 4Gi
1511
args:
1612
- --config
1713
- /config.yaml
18-
14+
# nodeSelector:
15+
# node-role.kubernetes.io/agent: ""
1916
resources:
2017
enabled: true
2118
cpu:
@@ -27,7 +24,6 @@ resources:
2724

2825
serviceAccount:
2926
create: true
30-
name: otel-collector-admin
3127

3228
service:
3329
otelhttp:

0 commit comments

Comments
 (0)