Adding multus.

This commit is contained in:
Joseph Hanson 2024-04-14 10:02:37 -05:00
parent 0854cab452
commit d772dc91e8
Signed by: jahanson
SSH key fingerprint: SHA256:vy6dKBECV522aPAwklFM3ReKAVB086rT3oWwiuiFG7o
9 changed files with 132 additions and 11 deletions

View file

@ -10,3 +10,4 @@ resources:
- ./echo-server/ks.yaml
- ./external-dns/ks.yaml
- ./ingress-nginx/ks.yaml
- ./multus/ks.yaml

View file

@ -0,0 +1,40 @@
---
# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/helmrelease-helm-v2beta2.json
apiVersion: helm.toolkit.fluxcd.io/v2beta2
kind: HelmRelease
metadata:
name: multus
spec:
interval: 30m
chart:
spec:
chart: multus
version: 5.0.4
sourceRef:
kind: HelmRepository
name: angelnu
namespace: flux-system
interval: 30m
values:
image:
repository: ghcr.io/k8snetworkplumbingwg/multus-cni
tag: v4.0.2-thick
cni:
image:
repository: ghcr.io/angelnu/cni-plugins
tag: 1.4.1
paths:
config: /etc/cni/net.d
bin: /opt/cni/bin
resources:
requests:
cpu: 5m
memory: 96Mi
limits:
memory: 96Mi
hostPaths:
netns: /var/run/netns

View file

@ -0,0 +1,6 @@
---
# yaml-language-server: $schema=https://json.schemastore.org/kustomization
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./helmrelease.yaml

View file

@ -0,0 +1,6 @@
---
# yaml-language-server: $schema=https://json.schemastore.org/kustomization
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./net-attach-iot.yaml

View file

@ -0,0 +1,27 @@
---
apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
name: multus-iot
spec:
config: |-
{
"cniVersion": "0.3.1",
"name": "multus-iot",
"plugins": [
{
"type": "macvlan",
"master": "eth0.30",
"mode": "bridge",
"capabilities": {
"ips": true
},
"ipam": {
"type": "static",
"routes": [
{ "dst": "10.1.2.0/24", "gw": "10.1.3.1" }
]
}
}
]
}

View file

@ -0,0 +1,40 @@
---
# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &appname multus
namespace: flux-system
spec:
targetNamespace: network
commonMetadata:
labels:
app.kubernetes.io/name: *appname
interval: 10m
path: "./kubernetes/apps/network/multus/app"
prune: true
sourceRef:
kind: GitRepository
name: homelab
wait: true
---
# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &appname multus-config
namespace: flux-system
spec:
targetNamespace: network
commonMetadata:
labels:
app.kubernetes.io/name: *appname
interval: 10m
path: "./kubernetes/apps/network/multus/config"
prune: true
sourceRef:
kind: GitRepository
name: homelab
wait: true
dependsOn:
- name: multus

View file

@ -0,0 +1,11 @@
---
# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/helmrepository-source-v1beta2.json
apiVersion: source.toolkit.fluxcd.io/v1beta2
kind: HelmRepository
metadata:
name: angelnu
namespace: flux-system
spec:
interval: 30m
url: https://angelnu.github.io/helm-charts
timeout: 3m

View file

@ -1,10 +0,0 @@
---
# yaml-language-server: $schema=https://ks.hsn.dev/source.toolkit.fluxcd.io/helmrepository_v1beta2.json
apiVersion: source.toolkit.fluxcd.io/v1beta2
kind: HelmRepository
metadata:
name: cloudnative-pg
namespace: flux-system
spec:
interval: 2h
url: https://cloudnative-pg.github.io/charts

View file

@ -3,11 +3,11 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- angelnu.yaml
- authentik.yaml
- backube.yaml
- bjw-s.yaml
- cilium.yaml
- cloudnative-pg.yaml
- crowdsec.yaml
- crunchydata.yaml
- descheduler.yaml