Compare commits

..

7 Commits

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

This PR updates the README.md file with the current list of applications found in the k8s/ directory structure.
2025-11-18 20:14:01 +00:00
Ultradesu
39a27c596f Fixed iperf3
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 12s
Check with kubeconform / lint (push) Successful in 20s
Auto-update README / Generate README and Create MR (push) Successful in 11s
2025-11-18 22:13:12 +02:00
Ultradesu
353bb877be Fixed iperf3
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 15s
2025-11-18 21:45:26 +02:00
Ultradesu
e523bb8bea Fixed iperf3
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:44:00 +02: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
5 changed files with 98 additions and 9 deletions

View File

@@ -11,8 +11,61 @@ spec:
labels:
app: iperf3-server
spec:
hostname: iperf3-$(NODE_NAME)
serviceAccountName: iperf3-server
subdomain: iperf3
initContainers:
- name: create-service
image: bitnami/kubectl:latest
env:
- name: NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
command:
- /bin/bash
- -c
- |
# Clean node name for service name
NODE_CLEAN=$(echo "$NODE_NAME" | cut -d'.' -f1 | tr '[:upper:]' '[:lower:]' | tr '_' '-')
SERVICE_NAME="iperf3-${NODE_CLEAN}"
# Create service for this pod
kubectl apply -f - <<EOF
apiVersion: v1
kind: Service
metadata:
name: ${SERVICE_NAME}
namespace: iperf3
labels:
app: iperf3-node-service
target-node: "${NODE_NAME}"
spec:
type: ClusterIP
ports:
- name: iperf3
port: 5201
protocol: TCP
---
apiVersion: v1
kind: Endpoints
metadata:
name: ${SERVICE_NAME}
namespace: iperf3
labels:
app: iperf3-node-service
target-node: "${NODE_NAME}"
subsets:
- addresses:
- ip: ${POD_IP}
ports:
- name: iperf3
port: 5201
protocol: TCP
EOF
containers:
- name: iperf3-server
image: networkstatic/iperf3:latest

View File

@@ -16,7 +16,7 @@ spec:
spec:
containers:
- name: iperf3-exporter
image: edgardlt/iperf3_exporter:latest
image: ghcr.io/edgard/iperf3_exporter:1.2.2
ports:
- containerPort: 9579
name: metrics

View File

@@ -2,6 +2,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- rbac.yaml
- daemonset.yaml
- service-headless.yaml
- iperf3-exporter-daemonset.yaml

36
k8s/apps/iperf3/rbac.yaml Normal file
View File

@@ -0,0 +1,36 @@
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: iperf3-server
namespace: iperf3
labels:
app: iperf3-server
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: iperf3-service-manager
namespace: iperf3
labels:
app: iperf3-server
rules:
- apiGroups: [""]
resources: ["services", "endpoints"]
verbs: ["get", "list", "create", "update", "patch", "delete"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: iperf3-service-manager
namespace: iperf3
labels:
app: iperf3-server
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: iperf3-service-manager
subjects:
- kind: ServiceAccount
name: iperf3-server
namespace: iperf3

View File

@@ -3,7 +3,6 @@ apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: iperf3-exporter
namespace: default
labels:
app: iperf3-exporter
release: prometheus
@@ -17,21 +16,21 @@ spec:
interval: 5m
scrapeTimeout: 30s
params:
target:
- "iperf3.iperf3.svc.cluster.local:5201"
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
- sourceLabels: [__param_target]
targetLabel: __param_target
- targetLabel: __address__
replacement: iperf3-exporter.default.svc.cluster.local:9579
replacement: iperf3-exporter.iperf3.svc.cluster.local:9579
metricRelabelings:
- sourceLabels: [__name__]
regex: iperf3_(.+)
targetLabel: __name__
replacement: network_${1}
replacement: network_${1}