feature:TSG-21939:Sync sce support fs4 modify in OS.

This commit is contained in:
fumingwei
2024-07-30 15:43:48 +08:00
parent 586b9d9e58
commit 777da2d54f
5 changed files with 44 additions and 131 deletions

View File

@@ -30,13 +30,21 @@ SWARMKV_HEALTH_CHECK_PORT=8552
SWARMKV_HEALTH_CHECK_ANNOUNCE_PORT=HEALTH_CHECK_ANNOUNCE_PORT_LOCATION
[METRIC]
DEVICE_GROUP= #TODO string_value
DEVICE_ID= #TODO string_value
DATA_CENTER= #TODO string_value
KAFKA_TOPIC= #TODO string_value
KAFKA_BROKERS= #TODO string_value
KAFKA_USERNAME= #TODO string_value
KAFKA_PASSWORD= #TODO string_value
{{- range .Values.device.tags -}}
{{- range $key,$val := . }}
{{- if eq $key "data_center" }}
DATA_CENTER={{ $val }}
{{- end }}
{{- if eq $key "device_group" }}
DEVICE_GROUP={{ $val }}
{{- end }}
{{- end }}
{{- end }}
DEVICE_ID="DEVICE_ID_PLACE_HOLDER_MARK"
KAFKA_TOPIC="POLICY-RULE-METRIC"
KAFKA_BROKERS="{{- include "traffic-engine.config.addresses.converter" (list .Values.external_resources.olap.kafka_brokers.addresses ",") }}"
KAFKA_USERNAME="{{ .Values.external_resources.olap.kafka_brokers.sasl_username }}"
KAFKA_PASSWORD="{{ .Values.external_resources.olap.kafka_brokers.sasl_password }}"
[CONFIG]
#PROFILE_QUEUE_LEN_PER_PRIORITY_MAX=128

View File

@@ -1,102 +0,0 @@
# Telegraf Configuration
[global_tags]
device_id = "${device_id}"
{{- range .Values.device.tags -}}
{{- range $key,$val := . }}
{{ $key }} = {{ $val | quote }}
{{- end }}
{{- end }}
[agent]
interval = "1s"
round_interval = true
metric_batch_size = 1000
metric_buffer_limit = 100000
collection_jitter = "0s"
flush_interval = "1s"
flush_jitter = "0s"
precision = ""
debug = false
quiet = false
logfile = ""
hostname = ""
omit_hostname = true
[[inputs.socket_listener]]
service_address = "udp://:8200"
data_format = "influx"
read_buffer_size = "32MiB"
#[[processors.converter]]
# [processors.converter.tags]
# measurement = ["topic"]
[[processors.rename]]
[[processors.rename.replace]]
field = "active_sessions_sum"
dest = "active_sessions"
[[processors.rename.replace]]
field = "in_drop_pkts_sum"
dest = "in_drop_pkts"
[[processors.rename.replace]]
field = "in_max_latency_us_max"
dest = "in_max_latency_us"
[[processors.rename.replace]]
field = "in_queue_len_sum"
dest = "in_queue_len"
[[processors.rename.replace]]
field = "in_bytes_sum"
dest = "in_bytes"
[[processors.rename.replace]]
field = "in_pkts_sum"
dest = "in_pkts"
[[processors.rename.replace]]
field = "out_drop_pkts_sum"
dest = "out_drop_pkts"
[[processors.rename.replace]]
field = "out_max_latency_us_max"
dest = "out_max_latency_us"
[[processors.rename.replace]]
field = "out_queue_len_sum"
dest = "out_queue_len"
[[processors.rename.replace]]
field = "out_bytes_sum"
dest = "out_bytes"
[[processors.rename.replace]]
field = "out_pkts_sum"
dest = "out_pkts"
[[processors.rename.replace]]
field = "queueing_sessions_sum"
dest = "queueing_sessions"
[[aggregators.basicstats]]
period = "1s"
delay = "1s"
grace = "1s"
drop_original = true
stats = ["sum", "max"]
[[outputs.kafka]]
sasl_username = "{{ .Values.external_resources.olap.kafka_brokers.sasl_username }}"
sasl_password = "{{ .Values.external_resources.olap.kafka_brokers.sasl_password }}"
brokers = [ "{{- include "traffic-engine.config.addresses.converter" (list .Values.external_resources.olap.kafka_brokers.addresses "\",\"") }}" ]
topic = "POLICY-RULE-METRIC"
client_id = "POLICY-RULE-METRIC"
fielddrop = ["*pkts*max", "*bytes*max", "*session*max", "*queue*max", "*latency*sum"]
data_format = "json"
json_timestamp_units = "1ms"
json_transformation = '''
$merge([$, { "timestamp_ms": timestamp}]) ~> |$|{}, ['timestamp']|
'''

View File

@@ -1,3 +1,4 @@
{{- if eq .Values.shaping.enable .Values.define_enable_val_yes }}
apiVersion: v1
kind: ConfigMap
metadata:
@@ -5,4 +6,5 @@ metadata:
namespace: default
data:
shaping.conf: {{ tpl (.Files.Get "conf/shaping.conf") . | quote }}
tsg_device_tag.json: {{ tpl (.Files.Get "conf/tsg_device_tag.json") . | quote }}
tsg_device_tag.json: {{ tpl (.Files.Get "conf/tsg_device_tag.json") . | quote }}
{{- end }}

View File

@@ -4,5 +4,4 @@ metadata:
name: telegraf-{{ .Release.Name }}
namespace: default
data:
telegraf_shaping.conf: {{ tpl (.Files.Get "conf/telegraf_shaping.conf") . | quote }}
telegraf_proxy.conf: {{ tpl (.Files.Get "conf/telegraf_proxy.conf") . | quote }}

View File

@@ -82,7 +82,6 @@ spec:
ports:
- containerPort: 8551
- containerPort: 8552
- containerPort: 9007
env:
- name: MY_POD_NAME
valueFrom:
@@ -105,12 +104,12 @@ spec:
{{- if eq .Values.debug.shaping.enable_liveness_probe .Values.define_enable_val_yes }}
livenessProbe:
tcpSocket:
port: 9007
port: 8552
failureThreshold: 1
timeoutSeconds: 10
startupProbe:
tcpSocket:
port: 9007
port: 8552
failureThreshold: 30
periodSeconds: 10
{{- end }}
@@ -130,6 +129,8 @@ spec:
subPath: "shaping/tsg_device_tag.json"
- name: shaping-log
mountPath: /opt/tsg/shaping_engine/log
- name: metrics-json-dir
mountPath: "/opt/tsg/shaping_engine/metric"
{{- include "public.sync-host-timezone.volume-mount" . | nindent 8 }}
{{- if eq .Values.debug.shaping.enable_prestart_script .Values.define_enable_val_yes }}
- name: prestart-dir
@@ -143,27 +144,32 @@ spec:
{{- end }}
{{- include "traffic-engine.mount.mrzcpd" . | nindent 8 }}
- name: telegraf-shaping
image: "registry.gdnt-cloud.website/tsg-telegraf:{{ .Chart.AppVersion }}"
- name: fieldstat-exporter
image: "registry.gdnt-cloud.website/tsg-shaping:{{ .Chart.AppVersion }}"
imagePullPolicy: Never
command:
- "bash"
- "-ec"
- |
source /etc/profile.d/device_id.sh
/usr/bin/telegraf -config /etc/telegraf/telegraf_shaping.conf -config-directory /etc/telegraf/telegraf_statistic.d
ldconfig
python3 /opt/tsg/framework/bin/fieldstat_exporter.py prometheus -p 9007 -d /opt/tsg/shaping_engine/metric
ports:
- containerPort: 9007
securityContext:
privileged: true
livenessProbe:
tcpSocket:
port: 9007
failureThreshold: 1
timeoutSeconds: 10
startupProbe:
tcpSocket:
port: 9007
failureThreshold: 5
periodSeconds: 10
volumeMounts:
- name: telegraf-configs-volume
mountPath: "/etc/telegraf/telegraf_shaping.conf"
subPath: "telegraf_shaping.conf"
- name: shared-configs-volume
mountPath: "/opt/tsg/etc/tsg_sn.json"
subPath: "tsg_sn.json"
- name: shared-configs-volume
mountPath: "/etc/profile.d/device_id.sh"
subPath: "device_id.sh"
- name: metrics-json-dir
mountPath: "/opt/tsg/shaping_engine/metric"
{{- include "public.sync-host-timezone.volume-mount" . | nindent 8 }}
- name: log-dir-hook
@@ -221,11 +227,12 @@ spec:
imagePullPolicy: Never
command:
- "bash"
- "-ec"
- "-ecx"
- |
cp -r /opt/tsg/configs/* /opt/tsg/shared-configs/
{{- include "public.prepare-access-API" . | nindent 12 }}
{{- include "public.serialize-node-annotations" . | nindent 12 }}
sed -Ei -c "s|DEVICE_ID_PLACE_HOLDER_MARK|${DEVICE_SN?}|g" /opt/tsg/shared-configs/shaping/shaping.conf
securityContext:
privileged: true
env:
@@ -250,14 +257,13 @@ spec:
hostPath:
path: /run/systemd/journal
type: Directory
- name: telegraf-configs-volume
configMap:
name: telegraf-{{ .Release.Name }}
- name: shaping-configs-volume
configMap:
name: shaping-{{ .Release.Name }}
- name: shared-configs-volume
emptyDir: {}
- name: metrics-json-dir
emptyDir: {}
- name: shaping-log
hostPath:
path: /var/log/traffic-engine/traffic-engine-{{ .Release.Name }}/shaping_engine/