From 4802cca64606afc8b63f365cf2329598158d26a6 Mon Sep 17 00:00:00 2001 From: "M. Mert Yildiran" Date: Tue, 30 Jan 2024 02:25:04 +0300 Subject: [PATCH] :sparkles: Add `MiscConfig` struct with has `JsonTTL` and `PcapTTL` fields --- config/configStructs/tapConfig.go | 6 ++ helm-chart/templates/12-config-map.yaml | 3 +- helm-chart/values.yaml | 3 + manifests/complete.yaml | 109 +++++++++++++----------- 4 files changed, 72 insertions(+), 49 deletions(-) diff --git a/config/configStructs/tapConfig.go b/config/configStructs/tapConfig.go index ba2adfd3b..c58a8f08a 100644 --- a/config/configStructs/tapConfig.go +++ b/config/configStructs/tapConfig.go @@ -142,6 +142,11 @@ type MetricsConfig struct { Port uint16 `yaml:"port" json:"port" default:"49100"` } +type MiscConfig struct { + JsonTTL string `yaml:"jsonTTL" json:"jsonTTL" default:"5m"` + PcapTTL string `yaml:"pcapTTL" json:"pcapTTL" default:"10s"` +} + type TapConfig struct { Docker DockerConfig `yaml:"docker" json:"docker"` Proxy ProxyConfig `yaml:"proxy" json:"proxy"` @@ -174,6 +179,7 @@ type TapConfig struct { Metrics MetricsConfig `yaml:"metrics" json:"metrics"` TrafficSampleRate int `yaml:"trafficSampleRate" json:"trafficSampleRate" default:"100"` TcpStreamChannelTimeoutMs int `yaml:"tcpStreamChannelTimeoutMs" json:"tcpStreamChannelTimeoutMs" default:"10000"` + Misc MiscConfig `yaml:"misc" json:"misc"` } func (config *TapConfig) PodRegex() *regexp.Regexp { diff --git a/helm-chart/templates/12-config-map.yaml b/helm-chart/templates/12-config-map.yaml index b10fbf1eb..8a2a73539 100644 --- a/helm-chart/templates/12-config-map.yaml +++ b/helm-chart/templates/12-config-map.yaml @@ -26,4 +26,5 @@ data: GLOBAL_FILTER: {{ include "kubeshark.escapeDoubleQuotes" .Values.tap.globalFilter | quote }} TRAFFIC_SAMPLE_RATE: '{{ .Values.tap.trafficSampleRate }}' KUBESHARK_CLOUD_API_URL: 'https://api.kubeshark.co' - + CONFIG_JSON_TTL: '{{ .Values.tap.misc.jsonTTL }}' + CONFIG_PCAP_TTL: '{{ .Values.tap.misc.pcapTTL }}' diff --git a/helm-chart/values.yaml b/helm-chart/values.yaml index 4f23def32..a85d1ae61 100644 --- a/helm-chart/values.yaml +++ b/helm-chart/values.yaml @@ -112,6 +112,9 @@ tap: port: 49100 trafficSampleRate: 100 tcpStreamChannelTimeoutMs: 10000 + misc: + jsonTTL: 5m + pcapTTL: 10s logs: file: "" kube: diff --git a/manifests/complete.yaml b/manifests/complete.yaml index 80415cec0..db1a2e7e1 100644 --- a/manifests/complete.yaml +++ b/manifests/complete.yaml @@ -4,10 +4,10 @@ apiVersion: v1 kind: ServiceAccount metadata: labels: - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm annotations: name: kubeshark-service-account @@ -21,10 +21,10 @@ metadata: namespace: default labels: app.kubeshark.co/app: hub - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm stringData: LICENSE: '' @@ -38,10 +38,10 @@ metadata: namespace: default labels: app.kubeshark.co/app: hub - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm stringData: AUTH_SAML_X509_CRT: | @@ -54,10 +54,10 @@ metadata: namespace: default labels: app.kubeshark.co/app: hub - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm stringData: AUTH_SAML_X509_KEY: | @@ -69,10 +69,10 @@ metadata: name: kubeshark-nginx-config-map namespace: default labels: - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm data: default.conf: | @@ -133,10 +133,10 @@ metadata: namespace: default labels: app.kubeshark.co/app: hub - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm data: POD_REGEX: '.*' @@ -157,16 +157,19 @@ data: REPLAY_DISABLED: '' GLOBAL_FILTER: "" TRAFFIC_SAMPLE_RATE: '100' + KUBESHARK_CLOUD_API_URL: 'https://api.kubeshark.co' + CONFIG_JSON_TTL: '5m' + CONFIG_PCAP_TTL: '10s' --- # Source: kubeshark/templates/02-cluster-role.yaml apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm annotations: name: kubeshark-cluster-role @@ -191,10 +194,10 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: labels: - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm annotations: name: kubeshark-cluster-role-binding @@ -213,10 +216,10 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: labels: - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm annotations: name: kubeshark-self-config-role @@ -242,10 +245,10 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: labels: - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm annotations: name: kubeshark-self-config-role-binding @@ -265,10 +268,10 @@ kind: Service metadata: labels: app.kubeshark.co/app: hub - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm annotations: name: kubeshark-hub @@ -287,10 +290,10 @@ apiVersion: v1 kind: Service metadata: labels: - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm annotations: name: kubeshark-front @@ -316,10 +319,10 @@ metadata: spec: selector: app.kubeshark.co/app: worker - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm ports: - name: metrics @@ -334,10 +337,10 @@ metadata: labels: app.kubeshark.co/app: worker sidecar.istio.io/inject: "false" - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm annotations: name: kubeshark-worker-daemon-set @@ -346,19 +349,19 @@ spec: selector: matchLabels: app.kubeshark.co/app: worker - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm template: metadata: labels: app.kubeshark.co/app: worker - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm name: kubeshark-worker-daemon-set namespace: kubeshark @@ -389,7 +392,7 @@ spec: - -procfs - /hostproc - -kernel-module - image: 'docker.io/kubeshark/worker:v52.1.0' + image: 'docker.io/kubeshark/worker:v52.1.9' imagePullPolicy: Always name: sniffer ports: @@ -407,6 +410,11 @@ spec: fieldPath: metadata.namespace - name: TCP_STREAM_CHANNEL_TIMEOUT_MS value: '10000' + - name: KUBESHARK_CLOUD_API_URL + valueFrom: + configMapKeyRef: + name: kubeshark-config-map + key: KUBESHARK_CLOUD_API_URL resources: limits: cpu: 750m @@ -452,7 +460,7 @@ spec: - ./tracer - -procfs - /hostproc - image: 'docker.io/kubeshark/worker:v52.1.0' + image: 'docker.io/kubeshark/worker:v52.1.9' imagePullPolicy: Always name: tracer env: @@ -527,10 +535,10 @@ kind: Deployment metadata: labels: app.kubeshark.co/app: hub - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm annotations: name: kubeshark-hub @@ -540,19 +548,19 @@ spec: selector: matchLabels: app.kubeshark.co/app: hub - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm template: metadata: labels: app.kubeshark.co/app: hub - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm spec: dnsPolicy: ClusterFirstWithHostNet @@ -570,7 +578,12 @@ spec: valueFrom: fieldRef: fieldPath: metadata.namespace - image: 'docker.io/kubeshark/hub:v52.1.0' + - name: KUBESHARK_CLOUD_API_URL + valueFrom: + configMapKeyRef: + name: kubeshark-config-map + key: KUBESHARK_CLOUD_API_URL + image: 'docker.io/kubeshark/hub:v52.1.9' imagePullPolicy: Always readinessProbe: periodSeconds: 1 @@ -618,10 +631,10 @@ kind: Deployment metadata: labels: app.kubeshark.co/app: front - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm annotations: name: kubeshark-front @@ -631,19 +644,19 @@ spec: selector: matchLabels: app.kubeshark.co/app: front - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm template: metadata: labels: app.kubeshark.co/app: front - helm.sh/chart: kubeshark-52.1.0 + helm.sh/chart: kubeshark-52.1.9 app.kubernetes.io/name: kubeshark app.kubernetes.io/instance: kubeshark - app.kubernetes.io/version: "52.1.0" + app.kubernetes.io/version: "52.1.9" app.kubernetes.io/managed-by: Helm spec: containers: @@ -658,7 +671,7 @@ spec: value: ' ' - name: REACT_APP_REPLAY_DISABLED value: 'false' - image: 'docker.io/kubeshark/front:v52.1.0' + image: 'docker.io/kubeshark/front:v52.1.9' imagePullPolicy: Always name: kubeshark-front livenessProbe: