Compare commits

..

6 Commits

Author SHA1 Message Date
Gitea Actions Bot
5b1ceb1740 Auto-update README with current k8s applications
All checks were successful
Terraform / Terraform (pull_request) Successful in 41s
Generated by CI/CD workflow on 2025-11-18 19:41:36

This PR updates the README.md file with the current list of applications found in the k8s/ directory structure.
2025-11-18 19:41:36 +00:00
Ultradesu
b433373725 Fixed iperf3
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 13s
Check with kubeconform / lint (push) Successful in 13s
Auto-update README / Generate README and Create MR (push) Successful in 12s
2025-11-18 21:40:53 +02:00
Ultradesu
3026e53746 Added iperf3-server
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 12s
Check with kubeconform / lint (push) Successful in 27s
Auto-update README / Generate README and Create MR (push) Successful in 11s
2025-11-18 21:37:09 +02:00
Ultradesu
63669c69ff Added iperf3-server
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 12s
Check with kubeconform / lint (push) Successful in 41s
Auto-update README / Generate README and Create MR (push) Successful in 15s
2025-11-18 21:33:34 +02:00
Ultradesu
fa98e553cd Added iperf3-server
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 12s
Check with kubeconform / lint (push) Successful in 14s
Auto-update README / Generate README and Create MR (push) Successful in 12s
2025-11-18 21:32:01 +02:00
Ultradesu
055ef8aa77 Added iperf3-server 2025-11-18 21:31:57 +02:00
6 changed files with 122 additions and 6 deletions

View File

@@ -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

View 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

View 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

View File

@@ -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

View File

@@ -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

View File

@@ -0,0 +1,37 @@
---
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: iperf3-exporter
namespace: default
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.default.svc.cluster.local:5201
- sourceLabels: [__param_target]
targetLabel: instance
- targetLabel: __address__
replacement: iperf3-exporter.default.svc.cluster.local:9579
metricRelabelings:
- sourceLabels: [__name__]
regex: iperf3_(.+)
targetLabel: __name__
replacement: network_${1}