Compare commits
8 Commits
auto-updat
...
auto-updat
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3ad3f6db11 | ||
|
|
353bb877be | ||
|
|
e523bb8bea | ||
|
|
b433373725 | ||
|
|
3026e53746 | ||
|
|
63669c69ff | ||
|
|
fa98e553cd | ||
|
|
055ef8aa77 |
@@ -11,6 +11,23 @@ spec:
|
|||||||
labels:
|
labels:
|
||||||
app: iperf3-server
|
app: iperf3-server
|
||||||
spec:
|
spec:
|
||||||
|
subdomain: iperf3
|
||||||
|
initContainers:
|
||||||
|
- name: set-hostname
|
||||||
|
image: busybox:1.35
|
||||||
|
command: ['sh', '-c']
|
||||||
|
args:
|
||||||
|
- |
|
||||||
|
NODE_NAME=$(echo $NODE_NAME | cut -d'.' -f1 | tr '[:upper:]' '[:lower:]')
|
||||||
|
echo "iperf3-${NODE_NAME}" > /etc/hostname
|
||||||
|
hostname "iperf3-${NODE_NAME}"
|
||||||
|
securityContext:
|
||||||
|
privileged: true
|
||||||
|
env:
|
||||||
|
- name: NODE_NAME
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
fieldPath: spec.nodeName
|
||||||
containers:
|
containers:
|
||||||
- name: iperf3-server
|
- name: iperf3-server
|
||||||
image: networkstatic/iperf3:latest
|
image: networkstatic/iperf3:latest
|
||||||
@@ -18,6 +35,13 @@ spec:
|
|||||||
ports:
|
ports:
|
||||||
- containerPort: 5201
|
- containerPort: 5201
|
||||||
protocol: TCP
|
protocol: TCP
|
||||||
|
env:
|
||||||
|
- name: NODE_NAME
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
fieldPath: spec.nodeName
|
||||||
|
- name: HOSTNAME
|
||||||
|
value: $(NODE_NAME)
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
memory: "64Mi"
|
memory: "64Mi"
|
||||||
@@ -25,7 +49,6 @@ spec:
|
|||||||
limits:
|
limits:
|
||||||
memory: "256Mi"
|
memory: "256Mi"
|
||||||
cpu: "500m"
|
cpu: "500m"
|
||||||
hostNetwork: true
|
|
||||||
tolerations:
|
tolerations:
|
||||||
- effect: NoSchedule
|
- effect: NoSchedule
|
||||||
operator: Exists
|
operator: Exists
|
||||||
|
|||||||
40
k8s/apps/iperf3/iperf3-exporter-daemonset.yaml
Normal file
40
k8s/apps/iperf3/iperf3-exporter-daemonset.yaml
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
---
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: DaemonSet
|
||||||
|
metadata:
|
||||||
|
name: iperf3-exporter
|
||||||
|
labels:
|
||||||
|
app: iperf3-exporter
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: iperf3-exporter
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: iperf3-exporter
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: iperf3-exporter
|
||||||
|
image: ghcr.io/edgard/iperf3_exporter:1.2.2
|
||||||
|
ports:
|
||||||
|
- containerPort: 9579
|
||||||
|
name: metrics
|
||||||
|
protocol: TCP
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
memory: "64Mi"
|
||||||
|
cpu: "50m"
|
||||||
|
limits:
|
||||||
|
memory: "128Mi"
|
||||||
|
cpu: "200m"
|
||||||
|
env:
|
||||||
|
- name: NODE_NAME
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
fieldPath: spec.nodeName
|
||||||
|
tolerations:
|
||||||
|
- effect: NoSchedule
|
||||||
|
operator: Exists
|
||||||
|
- effect: NoExecute
|
||||||
|
operator: Exists
|
||||||
15
k8s/apps/iperf3/iperf3-exporter-service.yaml
Normal file
15
k8s/apps/iperf3/iperf3-exporter-service.yaml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: iperf3-exporter
|
||||||
|
labels:
|
||||||
|
app: iperf3-exporter
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: iperf3-exporter
|
||||||
|
ports:
|
||||||
|
- name: metrics
|
||||||
|
protocol: TCP
|
||||||
|
port: 9579
|
||||||
|
targetPort: 9579
|
||||||
@@ -3,5 +3,8 @@ kind: Kustomization
|
|||||||
|
|
||||||
resources:
|
resources:
|
||||||
- daemonset.yaml
|
- daemonset.yaml
|
||||||
- service.yaml
|
- service-headless.yaml
|
||||||
|
- iperf3-exporter-daemonset.yaml
|
||||||
|
- iperf3-exporter-service.yaml
|
||||||
|
- servicemonitor.yaml
|
||||||
|
|
||||||
|
|||||||
@@ -2,9 +2,9 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
name: iperf3-server
|
name: iperf3
|
||||||
spec:
|
spec:
|
||||||
type: NodePort
|
clusterIP: None
|
||||||
selector:
|
selector:
|
||||||
app: iperf3-server
|
app: iperf3-server
|
||||||
ports:
|
ports:
|
||||||
@@ -12,5 +12,3 @@ spec:
|
|||||||
protocol: TCP
|
protocol: TCP
|
||||||
port: 5201
|
port: 5201
|
||||||
targetPort: 5201
|
targetPort: 5201
|
||||||
nodePort: 30201
|
|
||||||
|
|
||||||
36
k8s/apps/iperf3/servicemonitor.yaml
Normal file
36
k8s/apps/iperf3/servicemonitor.yaml
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
---
|
||||||
|
apiVersion: monitoring.coreos.com/v1
|
||||||
|
kind: ServiceMonitor
|
||||||
|
metadata:
|
||||||
|
name: iperf3-exporter
|
||||||
|
labels:
|
||||||
|
app: iperf3-exporter
|
||||||
|
release: prometheus
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: iperf3-exporter
|
||||||
|
endpoints:
|
||||||
|
- port: metrics
|
||||||
|
path: /probe
|
||||||
|
interval: 5m
|
||||||
|
scrapeTimeout: 30s
|
||||||
|
params:
|
||||||
|
duration:
|
||||||
|
- "10"
|
||||||
|
streams:
|
||||||
|
- "4"
|
||||||
|
relabelings:
|
||||||
|
- sourceLabels: [__address__]
|
||||||
|
targetLabel: __param_target
|
||||||
|
regex: (.+):9579
|
||||||
|
replacement: iperf3-${1}.iperf3.iperf3.svc.cluster.local:5201
|
||||||
|
- sourceLabels: [__param_target]
|
||||||
|
targetLabel: instance
|
||||||
|
- targetLabel: __address__
|
||||||
|
replacement: iperf3-exporter.iperf3.svc.cluster.local:9579
|
||||||
|
metricRelabelings:
|
||||||
|
- sourceLabels: [__name__]
|
||||||
|
regex: iperf3_(.+)
|
||||||
|
targetLabel: __name__
|
||||||
|
replacement: network_${1}
|
||||||
Reference in New Issue
Block a user