initial commit

This commit is contained in:
2026-07-17 19:44:44 +01:00
commit 2b74f91d43
17 changed files with 402 additions and 0 deletions
@@ -0,0 +1,38 @@
apiVersion: v1
data:
cni-conf.json: |
{
"name": "cbr0",
"cniVersion": "0.3.1",
"plugins": [
{
"type": "flannel",
"delegate": {
"hairpinMode": true,
"isDefaultGateway": true
}
},
{
"type": "portmap",
"capabilities": {
"portMappings": true
}
}
]
}
net-conf.json: |
{
"Network": "172.25.0.0/16",
"EnableNFTables": false,
"Backend": {
"Type": "vxlan"
}
}
kind: ConfigMap
metadata:
labels:
app: flannel
k8s-app: flannel
tier: node
name: kube-flannel-cfg
namespace: kube-flannel
@@ -0,0 +1,16 @@
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: flannel
labels:
app.kubernetes.io/name: flannel
spec:
entryPoints:
- websecure
routes:
- kind: Rule
match: Host(`flannel.olb42.com`)
services:
- name: app
port: 80
secretName: olb42-wildcard-tls
@@ -0,0 +1,15 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: kube-flannel
resources:
- ../../base/runtime
- ../../base/state
- configmap-kube-flannel-cfg.yaml
# - ingressroute.yaml
commonLabels:
app.kubernetes.io/part-of: flannel
app.kubernetes.io/environment: production
@@ -0,0 +1,32 @@
# Optional static PV example for NFS-backed storage.
# This file is not referenced from kustomization.yaml by default because the
# default storage flow uses dynamic provisioning via the Longhorn PVC.
#
# To use this file:
# 1. Add storage/persistentvolume-nfs.yaml to resources in this overlay.
# 2. Update persistentvolumeclaim.yaml to set:
# storageClassName: nfs-shared
# volumeName: app-data
# accessModes: [ReadWriteMany]
# 3. Replace the placeholder NFS server and export path below.
apiVersion: v1
kind: PersistentVolume
metadata:
name: app-data
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy: Retain
claimRef:
apiVersion: v1
kind: PersistentVolumeClaim
name: app-data
namespace: flannel
storageClassName: nfs-shared
mountOptions:
- nfsvers=4.1
nfs:
server: nfs.example.internal
path: /exports/app-data