From 65af4ff8e681f8750d79712edd2ac6d4c3a567aa Mon Sep 17 00:00:00 2001 From: Khue Doan Date: Tue, 12 Dec 2023 10:24:48 +0700 Subject: [PATCH] refactor!: remove MetalLB Replaced by Cilium L2 Aware LB. Additionally, the default Zerotier route was changed to match the LB IP pool rather than the entire home subnet. This makes it easier to manage in the configure script and can be updated to any value later if needed. --- README.md | 10 +++++----- docs/reference/architecture/overview.md | 5 +---- external/main.tf | 2 +- system/metallb-system/Chart.yaml | 7 ------- system/metallb-system/templates/ipaddresspool.yaml | 8 -------- system/metallb-system/templates/l2advertisement.yaml | 8 -------- system/metallb-system/values.yaml | 2 -- 7 files changed, 7 insertions(+), 35 deletions(-) delete mode 100644 system/metallb-system/Chart.yaml delete mode 100644 system/metallb-system/templates/ipaddresspool.yaml delete mode 100644 system/metallb-system/templates/l2advertisement.yaml delete mode 100644 system/metallb-system/values.yaml diff --git a/README.md b/README.md index c8d7b2dc..9ccba3bb 100644 --- a/README.md +++ b/README.md @@ -115,6 +115,11 @@ They can't capture all the project's features, but they are sufficient to get a cert-manager Cloud native certificate management + + + Cilium + eBPF-based Networking, Observability and Security (CNI, LB, Network Policy, etc.) + Cloudflare @@ -175,11 +180,6 @@ They can't capture all the project's features, but they are sufficient to get a Longhorn Cloud native distributed block storage for Kubernetes - - - MetalLB - Bare metal load-balancer for Kubernetes - NGINX diff --git a/docs/reference/architecture/overview.md b/docs/reference/architecture/overview.md index 38555b60..e9fc5341 100644 --- a/docs/reference/architecture/overview.md +++ b/docs/reference/architecture/overview.md @@ -62,7 +62,6 @@ flowchart TD end subgraph system[./system] - metallb[MetalLB] nginx[NGINX] longhorn[Longhorn] cert-manager @@ -137,9 +136,7 @@ Below is the pseudo code for the entire process, you don't have to read it right copy k3s config files enable k3s service and form a cluster create KUBECONFIG file - create MetalLB config: - use the last /27 subnet of the network - apply the config + install Cilium build ./bootstrap: install ArgoCD: apply helm chart diff --git a/external/main.tf b/external/main.tf index cfe169fa..eb04b1bd 100644 --- a/external/main.tf +++ b/external/main.tf @@ -9,6 +9,6 @@ module "zerotier" { source = "./modules/zerotier" zerotier_central_token = var.zerotier_central_token bridged_routes = [ - "192.168.1.0/24" # TODO add this to configure script + "192.168.1.224/27" ] } diff --git a/system/metallb-system/Chart.yaml b/system/metallb-system/Chart.yaml deleted file mode 100644 index dc1cde7f..00000000 --- a/system/metallb-system/Chart.yaml +++ /dev/null @@ -1,7 +0,0 @@ -apiVersion: v2 -name: metallb -version: 0.0.0 -dependencies: - - name: metallb - version: 0.13.9 - repository: https://metallb.github.io/metallb diff --git a/system/metallb-system/templates/ipaddresspool.yaml b/system/metallb-system/templates/ipaddresspool.yaml deleted file mode 100644 index 9fdf5953..00000000 --- a/system/metallb-system/templates/ipaddresspool.yaml +++ /dev/null @@ -1,8 +0,0 @@ -apiVersion: metallb.io/v1beta1 -kind: IPAddressPool -metadata: - name: default - namespace: {{ .Release.Namespace }} -spec: - addresses: - - 192.168.1.224/27 diff --git a/system/metallb-system/templates/l2advertisement.yaml b/system/metallb-system/templates/l2advertisement.yaml deleted file mode 100644 index 3964056a..00000000 --- a/system/metallb-system/templates/l2advertisement.yaml +++ /dev/null @@ -1,8 +0,0 @@ -apiVersion: metallb.io/v1beta1 -kind: L2Advertisement -metadata: - name: default - namespace: {{ .Release.Namespace }} -spec: - ipAddressPools: - - default diff --git a/system/metallb-system/values.yaml b/system/metallb-system/values.yaml deleted file mode 100644 index 468a8567..00000000 --- a/system/metallb-system/values.yaml +++ /dev/null @@ -1,2 +0,0 @@ -metallb: - existingConfigMap: metallb-config