mirror of
https://github.com/kubeshark/kubeshark.git
synced 2025-04-28 03:52:23 +00:00
Node name and pod label based pod targeting
This commit is contained in:
parent
529ca63a47
commit
9796fed52c
4
Makefile
4
Makefile
@ -84,8 +84,8 @@ kubectl-view-kubeshark-resources: ## This command outputs all Kubernetes resourc
|
||||
./kubectl.sh view-kubeshark-resources
|
||||
|
||||
generate-helm-values: ## Generate the Helm values from config.yaml
|
||||
mv ~/.kubeshark/config.yaml ~/.kubeshark/config.yaml.old; bin/kubeshark__ config>helm-chart/values.yaml;mv ~/.kubeshark/config.yaml.old ~/.kubeshark/config.yaml
|
||||
sed -i 's/^license:.*/license: ""/' helm-chart/values.yaml && sed -i '1i # find a detailed description here: https://github.com/kubeshark/kubeshark/blob/master/helm-chart/README.md' helm-chart/values.yaml
|
||||
mv ~/.kubeshark/config.yaml ~/.kubeshark/config.yaml.old; bin/kubeshark__ config > helm-chart/values.yaml; mv ~/.kubeshark/config.yaml.old ~/.kubeshark/config.yaml
|
||||
sed -i 's/^license:.*/license: ""/' helm-chart/values.yaml && sed -i '1i # find a detailed description here: https://github.com/kubeshark/kubeshark/blob/master/helm-chart/README.md' helm-chart/values.yaml
|
||||
|
||||
generate-manifests: ## Generate the manifests from the Helm chart using default configuration
|
||||
helm template kubeshark -n default ./helm-chart > ./manifests/complete.yaml
|
||||
|
@ -424,7 +424,6 @@ func postFrontStarted(ctx context.Context, kubernetesProvider *kubernetes.Provid
|
||||
time.Sleep(100 * time.Millisecond)
|
||||
}
|
||||
|
||||
|
||||
if (config.Config.Scripting.Source != "" || len(config.Config.Scripting.Sources) > 0) && config.Config.Scripting.WatchScripts {
|
||||
watchScripts(ctx, kubernetesProvider, false)
|
||||
}
|
||||
@ -439,8 +438,26 @@ func updateConfig(kubernetesProvider *kubernetes.Provider) {
|
||||
_, _ = kubernetes.SetConfig(kubernetesProvider, kubernetes.CONFIG_POD_REGEX, config.Config.Tap.PodRegexStr)
|
||||
_, _ = kubernetes.SetConfig(kubernetesProvider, kubernetes.CONFIG_NAMESPACES, strings.Join(config.Config.Tap.Namespaces, ","))
|
||||
_, _ = kubernetes.SetConfig(kubernetesProvider, kubernetes.CONFIG_EXCLUDED_NAMESPACES, strings.Join(config.Config.Tap.ExcludedNamespaces, ","))
|
||||
_, _ = kubernetes.SetConfig(kubernetesProvider, kubernetes.CONFIG_NODES, strings.Join(config.Config.Tap.Nodes, ","))
|
||||
_, _ = kubernetes.SetConfig(kubernetesProvider, kubernetes.CONFIG_EXCLUDED_NODES, strings.Join(config.Config.Tap.ExcludedNodes, ","))
|
||||
|
||||
data, err := json.Marshal(config.Config.Scripting.Env)
|
||||
data, err := json.Marshal(config.Config.Tap.TargetLabels)
|
||||
if err != nil {
|
||||
log.Error().Str("config", kubernetes.CONFIG_TARGET_LABELS).Err(err).Send()
|
||||
return
|
||||
} else {
|
||||
_, _ = kubernetes.SetConfig(kubernetesProvider, kubernetes.CONFIG_TARGET_LABELS, string(data))
|
||||
}
|
||||
|
||||
data, err = json.Marshal(config.Config.Tap.ExcludedTargetLabels)
|
||||
if err != nil {
|
||||
log.Error().Str("config", kubernetes.CONFIG_EXCLUDED_TARGET_LABELS).Err(err).Send()
|
||||
return
|
||||
} else {
|
||||
_, _ = kubernetes.SetConfig(kubernetesProvider, kubernetes.CONFIG_EXCLUDED_TARGET_LABELS, string(data))
|
||||
}
|
||||
|
||||
data, err = json.Marshal(config.Config.Scripting.Env)
|
||||
if err != nil {
|
||||
log.Error().Str("config", kubernetes.CONFIG_SCRIPTING_ENV).Err(err).Send()
|
||||
return
|
||||
|
@ -282,6 +282,10 @@ type TapConfig struct {
|
||||
PodRegexStr string `yaml:"regex" json:"regex" default:".*"`
|
||||
Namespaces []string `yaml:"namespaces" json:"namespaces" default:"[]"`
|
||||
ExcludedNamespaces []string `yaml:"excludedNamespaces" json:"excludedNamespaces" default:"[]"`
|
||||
Nodes []string `yaml:"nodes" json:"nodes" default:"[]"`
|
||||
ExcludedNodes []string `yaml:"excludedNodes" json:"excludedNodes" default:"[]"`
|
||||
TargetLabels map[string]string `yaml:"targetLabels" json:"targetLabels" default:"{}"`
|
||||
ExcludedTargetLabels map[string]string `yaml:"excludedTargetLabels" json:"excludedTargetLabels" default:"{}"`
|
||||
BpfOverride string `yaml:"bpfOverride" json:"bpfOverride" default:""`
|
||||
Stopped bool `yaml:"stopped" json:"stopped" default:"false"`
|
||||
Release ReleaseConfig `yaml:"release" json:"release"`
|
||||
|
@ -10,6 +10,10 @@ data:
|
||||
POD_REGEX: '{{ .Values.tap.regex }}'
|
||||
NAMESPACES: '{{ gt (len .Values.tap.namespaces) 0 | ternary (join "," .Values.tap.namespaces) "" }}'
|
||||
EXCLUDED_NAMESPACES: '{{ gt (len .Values.tap.excludedNamespaces) 0 | ternary (join "," .Values.tap.excludedNamespaces) "" }}'
|
||||
NODES: '{{ gt (len .Values.tap.nodes) 0 | ternary (join "," .Values.tap.nodes) "" }}'
|
||||
EXCLUDED_NODES: '{{ gt (len .Values.tap.excludedNodes) 0 | ternary (join "," .Values.tap.excludedNodes) "" }}'
|
||||
TARGET_LABELS: '{{ .Values.tap.targetLabels | toJson }}'
|
||||
EXCLUDED_TARGET_LABELS: '{{ .Values.tap.excludedTargetLabels | toJson }}'
|
||||
BPF_OVERRIDE: '{{ .Values.tap.bpfOverride }}'
|
||||
STOPPED: '{{ .Values.tap.stopped | ternary "true" "false" }}'
|
||||
SCRIPTING_SCRIPTS: '{}'
|
||||
|
@ -25,6 +25,10 @@ tap:
|
||||
regex: .*
|
||||
namespaces: []
|
||||
excludedNamespaces: []
|
||||
nodes: []
|
||||
excludedNodes: []
|
||||
targetLabels: {}
|
||||
excludedTargetLabels: {}
|
||||
bpfOverride: ""
|
||||
stopped: false
|
||||
release:
|
||||
|
@ -20,6 +20,10 @@ const (
|
||||
CONFIG_POD_REGEX = "POD_REGEX"
|
||||
CONFIG_NAMESPACES = "NAMESPACES"
|
||||
CONFIG_EXCLUDED_NAMESPACES = "EXCLUDED_NAMESPACES"
|
||||
CONFIG_NODES = "NODES"
|
||||
CONFIG_EXCLUDED_NODES = "EXCLUDED_NODES"
|
||||
CONFIG_TARGET_LABELS = "TARGET_LABELS"
|
||||
CONFIG_EXCLUDED_TARGET_LABELS = "EXCLUDED_TARGET_LABELS"
|
||||
CONFIG_SCRIPTING_ENV = "SCRIPTING_ENV"
|
||||
CONFIG_INGRESS_ENABLED = "INGRESS_ENABLED"
|
||||
CONFIG_INGRESS_HOST = "INGRESS_HOST"
|
||||
|
@ -228,6 +228,10 @@ data:
|
||||
POD_REGEX: '.*'
|
||||
NAMESPACES: ''
|
||||
EXCLUDED_NAMESPACES: ''
|
||||
NODES: ''
|
||||
EXCLUDED_NODES: ''
|
||||
TARGET_LABELS: '{}'
|
||||
EXCLUDED_TARGET_LABELS: '{}'
|
||||
BPF_OVERRIDE: ''
|
||||
STOPPED: 'false'
|
||||
SCRIPTING_SCRIPTS: '{}'
|
||||
|
Loading…
Reference in New Issue
Block a user