diff --git a/Brewfile b/Brewfile
index 0376a4a..9d3febb 100644
--- a/Brewfile
+++ b/Brewfile
@@ -1,25 +1,10 @@
# frozen_string_literal: true
-tap 'siderolabs/talos'
-brew 'siderolabs/talos/talosctl'
-
-brew 'crane'
-
-tap 'metalbear-co/mirrord'
-brew 'metalbear-co/mirrord/mirrord'
-
tap 'fluxcd/tap'
brew 'fluxcd/tap/flux'
-tap 'k0sproject/tap'
-brew 'k0sproject/tap/k0sctl'
-
-brew 'kubernetes-cli'
-
-brew 'helm'
-
brew 'cilium-cli'
-
-brew 'kubeseal'
-
brew 'cloudflared'
+brew 'helm'
+brew 'kubernetes-cli'
+brew 'kubeseal'
diff --git a/README.md b/README.md
index e930d3d..5c78648 100644
--- a/README.md
+++ b/README.md
@@ -65,11 +65,11 @@ xz -d ubuntu-22.04.3-preinstalled-desktop-arm64-turing-rk1_v1.32.img.xz
tpi flash -n N -i /mnt/sdcard/ubuntu-22.04.3-preinstalled-server-arm64-turing-rk1_v1.32.img
```
-### Kubernetes (via k0s)
+### Kubernetes (via k3s)
An open-source system for automating deployment, scaling, and management of containerized applications.
-
+
### Flux
@@ -101,14 +101,28 @@ brew bundle
When spinning up the cluster for the first time, there are 3 primary steps.
-1. Install `k0s`
+1. Install `k3s`
-
+
+
+
```sh
- k0sctl apply --config ./clusters/overlays/local/k0s.yaml
- k0sctl kubeconfig --config ./clusters/overlays/local/k0s.yaml
- # add the output of this to ~/.kube/config
+ # Controller
+ curl -sfL https://get.k3s.io | sh -s - \
+ --write-kubeconfig-mode 644 \
+ --token toooookkkkeeennnnnnn \
+ --node-ip 192.168.4.78 \
+ --flannel-backend=none \
+ --disable-cloud-controller \
+ --disable-kube-proxy \
+ --disable-network-policy \
+ --disable local-storage \
+ --disable servicelb \
+ --disable traefik
+
+ # Workers
+ curl -sfL https://get.k3s.io | K3S_URL=https://192.168.4.78:6443 K3S_TOKEN=toooookkkkeeennnnnnn sh -
```
2. Install `cilium`
@@ -190,18 +204,6 @@ data:
EOF
```
-### Reset
-
-Tearing down the cluster is a 1 step process.
-
-1. Reset the cluster
-
-
-
- ```sh
- k0sctl reset --config ./clusters/overlays/local/k0s.yaml
- ```
-
## Pertinent Sections
- [Apps](./apps)
diff --git a/clusters/overlays/local/k0s.yaml b/clusters/overlays/local/k0s.yaml
index fe6af83..307502e 100644
--- a/clusters/overlays/local/k0s.yaml
+++ b/clusters/overlays/local/k0s.yaml
@@ -21,7 +21,7 @@ spec:
keyPath: ~/.ssh/id_rsa
role: worker
installFlags:
- - --labels="tp2.turingpi.com/slot=2,kubernetes.io/role=worker"
+ - --labels="tp2.turingpi.com/slot=2"
- ssh:
address: 192.168.4.80
user: dudo
@@ -29,7 +29,7 @@ spec:
keyPath: ~/.ssh/id_rsa
role: worker
installFlags:
- - --labels="tp2.turingpi.com/slot=3,kubernetes.io/role=worker"
+ - --labels="tp2.turingpi.com/slot=3"
- ssh:
address: 192.168.4.53
user: dudo
@@ -37,9 +37,9 @@ spec:
keyPath: ~/.ssh/id_rsa
role: worker
installFlags:
- - --labels="tp2.turingpi.com/slot=4,kubernetes.io/role=worker"
+ - --labels="tp2.turingpi.com/slot=4"
k0s:
- version: 1.29.1+k0s.1
+ version: 1.29.2+k0s.0
versionChannel: stable
config:
apiVersion: k0s.k0sproject.io/v1beta1
diff --git a/manifests/base/system-upgrade-controller/kustomization.yaml b/manifests/base/system-upgrade-controller/kustomization.yaml
new file mode 100644
index 0000000..a8fc54d
--- /dev/null
+++ b/manifests/base/system-upgrade-controller/kustomization.yaml
@@ -0,0 +1,6 @@
+---
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+namespace: flux-system
+resources:
+ - source.yaml
diff --git a/manifests/base/system-upgrade-controller/plan.yaml b/manifests/base/system-upgrade-controller/plan.yaml
new file mode 100644
index 0000000..f4c9618
--- /dev/null
+++ b/manifests/base/system-upgrade-controller/plan.yaml
@@ -0,0 +1,44 @@
+---
+# Server plan
+apiVersion: upgrade.cattle.io/v1
+kind: Plan
+metadata:
+ name: server-plan
+ namespace: rancher
+spec:
+ concurrency: 1
+ cordon: true
+ nodeSelector:
+ matchExpressions:
+ - key: node-role.kubernetes.io/control-plane
+ operator: In
+ values:
+ - "true"
+ serviceAccountName: system-upgrade
+ upgrade:
+ image: rancher/k3s-upgrade
+ channel: https://update.k3s.io/v1-release/channels/stable
+
+---
+# Agent plan
+apiVersion: upgrade.cattle.io/v1
+kind: Plan
+metadata:
+ name: agent-plan
+ namespace: rancher
+spec:
+ concurrency: 1
+ cordon: true
+ nodeSelector:
+ matchExpressions:
+ - key: node-role.kubernetes.io/control-plane
+ operator: DoesNotExist
+ prepare:
+ args:
+ - prepare
+ - server-plan
+ image: rancher/k3s-upgrade
+ serviceAccountName: system-upgrade
+ upgrade:
+ image: rancher/k3s-upgrade
+ channel: https://update.k3s.io/v1-release/channels/stable
diff --git a/manifests/base/system-upgrade-controller/source.yaml b/manifests/base/system-upgrade-controller/source.yaml
new file mode 100644
index 0000000..d1921f7
--- /dev/null
+++ b/manifests/base/system-upgrade-controller/source.yaml
@@ -0,0 +1,27 @@
+---
+apiVersion: source.toolkit.fluxcd.io/v1
+kind: GitRepository
+metadata:
+ name: system-upgrade-controller
+spec:
+ interval: 24h
+ ref:
+ branch: master
+ url: https://github.com/rancher/system-upgrade-controller
+
+---
+apiVersion: kustomize.toolkit.fluxcd.io/v1
+kind: Kustomization
+metadata:
+ name: system-upgrade-controller
+spec:
+ interval: 12h
+ sourceRef:
+ kind: GitRepository
+ name: system-upgrade-controller
+ namespace: flux-system
+ targetNamespace: rancher
+ path: ./
+ prune: true
+ wait: true
+ timeout: 5m