--- apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: &app vector-aggregator namespace: monitoring spec: interval: 15m chart: spec: chart: vector version: 0.18.0 sourceRef: kind: HelmRepository name: vector namespace: flux-system install: createNamespace: true remediation: retries: 5 upgrade: remediation: retries: 5 dependsOn: - name: loki namespace: monitoring values: image: repository: timberio/vector tag: 0.26.0-debian role: "Stateless-Aggregator" podAnnotations: configmap.reloader.stakater.com/reload: vector-aggregator customConfig: data_dir: /vector-data-dir api: enabled: false # Sources sources: kubernetes_logs: address: 0.0.0.0:6000 type: vector version: "2" opnsense_logs: address: 0.0.0.0:6001 type: vector version: "2" journal_logs: type: vector address: 0.0.0.0:6002 version: "2" vector_metrics: type: internal_metrics talos_kernel_logs: address: 0.0.0.0:6050 type: socket mode: udp max_length: 102400 decoding: codec: json host_key: __host talos_service_logs: address: 0.0.0.0:6051 type: socket mode: udp max_length: 102400 decoding: codec: json host_key: __host # Transformations transforms: talos_kernel_logs_xform: type: remap inputs: - talos_kernel_logs source: |- .__host = replace!(.__host, "192.168.9.101", "talos-node-1") .__host = replace(.__host, "192.168.9.102", "talos-node-2") .__host = replace(.__host, "192.168.9.103", "talos-node-3") .__host = replace(.__host, "192.168.9.104", "talos-node-4") talos_service_logs_xform: type: remap inputs: - talos_service_logs source: |- .__host = replace!(.__host, "192.168.9.101", "talos-node-1") .__host = replace(.__host, "192.168.9.102", "talos-node-2") .__host = replace(.__host, "192.168.9.103", "talos-node-3") .__host = replace(.__host, "192.168.9.104", "talos-node-4") # Sinks sinks: loki_kubernetes: type: loki inputs: - kubernetes_logs endpoint: http://loki-gateway.monitoring:80 encoding: codec: json batch: max_bytes: 2049000 out_of_order_action: rewrite_timestamp remove_label_fields: true remove_timestamp: true labels: k8s_app: >- {{`{{ "kubernetes.pod_labels.app\.kubernetes\.io/name" }}`}} k8s_container: >- {{`{{ "kubernetes.container_name" }}`}} k8s_filename: >- {{`{{ "kubernetes.file" }}`}} k8s_instance: >- {{`{{ "kubernetes.pod_labels.app\.kubernetes\.io/instance" }}`}} k8s_namespace: >- {{`{{ "kubernetes.pod_namespace" }}`}} k8s_node: >- {{`{{ "kubernetes.pod_node_name" }}`}} k8s_pod: >- {{`{{ "kubernetes.pod_name" }}`}} loki_opnsense: type: loki inputs: - opnsense_logs endpoint: http://loki-gateway.monitoring:80 encoding: codec: json batch: max_bytes: 400000 out_of_order_action: rewrite_timestamp labels: hostname: >- {{`{{ host }}`}} syslog_identifier: >- {{`{{ SYSLOG_IDENTIFIER }}`}} loki_journal: type: loki inputs: - journal_logs endpoint: http://loki-gateway.monitoring:80 encoding: codec: json batch: max_bytes: 2049000 out_of_order_action: accept remove_label_fields: true remove_timestamp: true labels: hostname: >- {{`{{ host }}`}} talos_kernel: type: loki inputs: - talos_kernel_logs_xform endpoint: http://loki-gateway.monitoring:80 encoding: codec: json except_fields: - __host batch: max_bytes: 1048576 out_of_order_action: rewrite_timestamp labels: hostname: >- {{`{{ __host }}`}} service: >- {{`{{ facility }}`}} talos_service: type: loki inputs: - talos_service_logs_xform endpoint: http://loki-gateway.monitoring:80 encoding: codec: json except_fields: - __host batch: max_bytes: 524288 out_of_order_action: rewrite_timestamp labels: hostname: >- {{`{{ __host }}`}} service: >- {{`{{ "talos-service" }}`}} namespace: "talos:service" extraVolumeMounts: - name: geoip mountPath: /geoip extraVolumes: - name: geoip persistentVolumeClaim: claimName: vector-geoipupdate-config podMonitor: enabled: true jobLabel: vector-aggregator port: prometheus-sink resources: requests: cpu: 35m memory: 381M limits: memory: 726M service: enabled: true type: LoadBalancer annotations: coredns.io/hostname: "vector.${SECRET_CLUSTER_DOMAIN}" postRenderers: - kustomize: patchesJson6902: - target: kind: Service name: vector-aggregator patch: - op: add path: /spec/loadBalancerIP value: ${CLUSTER_LB_VECTOR} - op: replace path: /spec/externalTrafficPolicy value: Local