feat!: Move networking apps into kube-system namespace

Signed-off-by: Devin Buhl <devin@buhl.casa>
This commit is contained in:
Devin Buhl committed 2022-11-29 09:19:57 -05:00
1 parent 8f77b5e2b4
commit 17bae3c1a2
28 files changed
+32 -58

No files matched your search

-1
View File
@@ -5,4 +5,3 @@ resources:
- namespace.yaml - namespace.yaml
- echo-server - echo-server
- hajimari - hajimari
- reloader
@@ -1,5 +0,0 @@
---
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- namespace.yaml
-7
View File
@@ -1,7 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: flux-system
labels:
kustomize.toolkit.fluxcd.io/prune: disabled
@@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease kind: HelmRelease
metadata: metadata:
name: cert-manager name: cert-manager
namespace: networking namespace: kube-system
spec: spec:
interval: 15m interval: 15m
chart: chart:
@@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease kind: HelmRelease
metadata: metadata:
name: cert-manager-issuers name: cert-manager-issuers
namespace: networking namespace: kube-system
spec: spec:
interval: 15m interval: 15m
chart: chart:
@@ -23,7 +23,7 @@ spec:
retries: 5 retries: 5
dependsOn: dependsOn:
- name: cert-manager - name: cert-manager
namespace: networking namespace: kube-system
values: values:
resources: resources:
- apiVersion: cert-manager.io/v1 - apiVersion: cert-manager.io/v1
@@ -3,7 +3,7 @@ apiVersion: batch/v1
kind: CronJob kind: CronJob
metadata: metadata:
name: &app cloudflare-ddns name: &app cloudflare-ddns
namespace: default namespace: kube-system
spec: spec:
schedule: "@hourly" schedule: "@hourly"
concurrencyPolicy: Forbid concurrencyPolicy: Forbid
@@ -4,7 +4,7 @@ kind: Kustomization
resources: resources:
- cron-job.yaml - cron-job.yaml
- secret.sops.yaml - secret.sops.yaml
namespace: networking namespace: kube-system
configMapGenerator: configMapGenerator:
- name: cloudflare-ddns - name: cloudflare-ddns
files: files:
@@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease kind: HelmRelease
metadata: metadata:
name: external-dns name: external-dns
namespace: networking namespace: kube-system
spec: spec:
interval: 15m interval: 15m
chart: chart:
@@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease kind: HelmRelease
metadata: metadata:
name: ingress-nginx name: ingress-nginx
namespace: networking namespace: kube-system
spec: spec:
interval: 15m interval: 15m
chart: chart:
@@ -24,9 +24,9 @@ spec:
retries: 5 retries: 5
dependsOn: dependsOn:
- name: cert-manager - name: cert-manager
namespace: networking namespace: kube-system
- name: cert-manager-issuers - name: cert-manager-issuers
namespace: networking namespace: kube-system
values: values:
controller: controller:
replicaCount: 1 replicaCount: 1
@@ -1,7 +1,7 @@
--- ---
apiVersion: kustomize.config.k8s.io/v1beta1 apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization kind: Kustomization
namespace: networking namespace: kube-system
resources: resources:
- helm-release.yaml - helm-release.yaml
configMapGenerator: configMapGenerator:
@@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease kind: HelmRelease
metadata: metadata:
name: k8s-gateway name: k8s-gateway
namespace: networking namespace: kube-system
spec: spec:
interval: 15m interval: 15m
chart: chart:
@@ -24,7 +24,7 @@ spec:
retries: 5 retries: 5
dependsOn: dependsOn:
- name: metallb - name: metallb
namespace: networking namespace: kube-system
values: values:
fullnameOverride: k8s-gateway fullnameOverride: k8s-gateway
domain: ${SECRET_DOMAIN} domain: ${SECRET_DOMAIN}
+9 -2
View File
@@ -2,5 +2,12 @@
apiVersion: kustomize.config.k8s.io/v1beta1 apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization kind: Kustomization
resources: resources:
- namespace.yaml - ./namespace.yaml
- metrics-server - ./cert-manager
- ./cloudflare-ddns
- ./external-dns
- ./ingress-nginx
- ./k8s-gateway
- ./metallb
- ./metrics-server
- ./reloader
@@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease kind: HelmRelease
metadata: metadata:
name: metallb-config name: metallb-config
namespace: networking namespace: kube-system
spec: spec:
interval: 15m interval: 15m
chart: chart:
@@ -23,14 +23,14 @@ spec:
retries: 5 retries: 5
dependsOn: dependsOn:
- name: metallb - name: metallb
namespace: networking namespace: kube-system
values: values:
resources: resources:
- apiVersion: metallb.io/v1beta1 - apiVersion: metallb.io/v1beta1
kind: L2Advertisement kind: L2Advertisement
metadata: metadata:
name: l2-ip name: l2-ip
namespace: networking namespace: kube-system
spec: spec:
ipAddressPools: ipAddressPools:
- default-pool - default-pool
@@ -39,7 +39,7 @@ spec:
kind: IPAddressPool kind: IPAddressPool
metadata: metadata:
name: default-pool name: default-pool
namespace: networking namespace: kube-system
spec: spec:
addresses: addresses:
- "${METALLB_LB_RANGE}" - "${METALLB_LB_RANGE}"
@@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease kind: HelmRelease
metadata: metadata:
name: metallb name: metallb
namespace: networking namespace: kube-system
spec: spec:
interval: 15m interval: 15m
chart: chart:
-2
View File
@@ -3,7 +3,5 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization kind: Kustomization
resources: resources:
- default - default
- flux-system
- kube-system - kube-system
- networking
# - system-upgrade # - system-upgrade
@@ -1,11 +0,0 @@
---
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- namespace.yaml
- cloudflare-ddns
- external-dns
- ingress-nginx
- metallb
- k8s-gateway
- cert-manager
-7
View File
@@ -1,7 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: networking
labels:
kustomize.toolkit.fluxcd.io/prune: disabled
Vendored
+6 -6
View File
@@ -53,16 +53,16 @@ main() {
envsubst < "${PROJECT_DIR}/tmpl/cluster/cluster-secrets.sops.yaml" \ envsubst < "${PROJECT_DIR}/tmpl/cluster/cluster-secrets.sops.yaml" \
> "${PROJECT_DIR}/cluster/flux/vars/cluster-secrets.sops.yaml" > "${PROJECT_DIR}/cluster/flux/vars/cluster-secrets.sops.yaml"
envsubst < "${PROJECT_DIR}/tmpl/cluster/cert-manager-secret.sops.yaml" \ envsubst < "${PROJECT_DIR}/tmpl/cluster/cert-manager-secret.sops.yaml" \
> "${PROJECT_DIR}/cluster/apps/networking/cert-manager/issuers/secret.sops.yaml" > "${PROJECT_DIR}/cluster/apps/kube-system/cert-manager/issuers/secret.sops.yaml"
envsubst < "${PROJECT_DIR}/tmpl/cluster/cloudflare-ddns-secret.sops.yaml" \ envsubst < "${PROJECT_DIR}/tmpl/cluster/cloudflare-ddns-secret.sops.yaml" \
> "${PROJECT_DIR}/cluster/apps/networking/cloudflare-ddns/secret.sops.yaml" > "${PROJECT_DIR}/cluster/apps/kube-system/cloudflare-ddns/secret.sops.yaml"
envsubst < "${PROJECT_DIR}/tmpl/cluster/external-dns-secret.sops.yaml" \ envsubst < "${PROJECT_DIR}/tmpl/cluster/external-dns-secret.sops.yaml" \
> "${PROJECT_DIR}/cluster/apps/networking/external-dns/secret.sops.yaml" > "${PROJECT_DIR}/cluster/apps/kube-system/external-dns/secret.sops.yaml"
# encrypt cluster secrets # encrypt cluster secrets
sops --encrypt --in-place "${PROJECT_DIR}/cluster/flux/vars/cluster-secrets.sops.yaml" sops --encrypt --in-place "${PROJECT_DIR}/cluster/flux/vars/cluster-secrets.sops.yaml"
sops --encrypt --in-place "${PROJECT_DIR}/cluster/apps/networking/cert-manager/issuers/secret.sops.yaml" sops --encrypt --in-place "${PROJECT_DIR}/cluster/apps/kube-system/cert-manager/issuers/secret.sops.yaml"
sops --encrypt --in-place "${PROJECT_DIR}/cluster/apps/networking/cloudflare-ddns/secret.sops.yaml" sops --encrypt --in-place "${PROJECT_DIR}/cluster/apps/kube-system/cloudflare-ddns/secret.sops.yaml"
sops --encrypt --in-place "${PROJECT_DIR}/cluster/apps/networking/external-dns/secret.sops.yaml" sops --encrypt --in-place "${PROJECT_DIR}/cluster/apps/kube-system/external-dns/secret.sops.yaml"
# generate terraform secrets # generate terraform secrets
envsubst < "${PROJECT_DIR}/tmpl/terraform/secret.sops.yaml" \ envsubst < "${PROJECT_DIR}/tmpl/terraform/secret.sops.yaml" \
> "${PROJECT_DIR}/provision/terraform/cloudflare/secret.sops.yaml" > "${PROJECT_DIR}/provision/terraform/cloudflare/secret.sops.yaml"