Commit Graph

38 Commits

Author SHA1 Message Date
Tom Alexander
8a54291834 Switch to kubernetes ipam mode. 2026-05-05 22:43:39 -04:00
Tom Alexander
ed786cf926 Fix service cluster ip range.
Kubernetes only allows a /112 for service ip range.
2026-05-05 22:43:38 -04:00
Tom Alexander
0f09d38212 Fix trailing line break in kubernetes encryption config. 2026-05-05 22:43:38 -04:00
Tom Alexander
0215812ee9 Move the yaml functions to their own file. 2026-05-05 22:43:38 -04:00
Tom Alexander
d26b3d5ebf Introduce functions to generate yaml.
The toYAML function is just an alias to toJSON which is technically fine since YAML is a superset of JSON, but these new functions will generate actual YAML.
2026-05-05 22:43:38 -04:00
Tom Alexander
2861fddf6f Add missing cidr declarations. 2026-05-05 22:43:38 -04:00
Tom Alexander
0e8393762d Fix DNS resolution. 2026-05-05 22:43:38 -04:00
Tom Alexander
45cc48b3b5 Apply the git repo to the cluster. 2026-05-05 22:43:38 -04:00
Tom Alexander
0a112a931a Trust flux's ssh key in the yaml git repo. 2026-05-05 22:43:37 -04:00
Tom Alexander
3b3f27bd59 Generic secrets for ssh keys. 2026-05-05 22:43:37 -04:00
Tom Alexander
f19d018a34 Generic secrets for pgp keys. 2026-05-05 22:43:37 -04:00
Tom Alexander
d277ca5634 Generate kubernetes secrets for ssh keys. 2026-05-05 22:43:37 -04:00
Tom Alexander
1f02259850 Install CoreDNS. 2026-05-05 22:43:37 -04:00
Tom Alexander
9382057b47 Generate pgp keys for sops. 2026-05-05 22:43:37 -04:00
Tom Alexander
586198586b Generate ssh keys for flux bootstrap. 2026-05-05 22:43:36 -04:00
Tom Alexander
2efe37993a Move the cluster bootstrap into the keys flake.
Bootstrapping the cluster needs access to secrets, so I am moving it into the keys flake.
2026-05-05 22:43:36 -04:00
Tom Alexander
61583f9eff Set up flux. 2026-05-05 22:43:36 -04:00
Tom Alexander
54782da612 Add a bootstrap role. 2026-05-05 22:43:36 -04:00
Tom Alexander
4d499c0210 Add a bootstrap role to load manifests into the cluster. 2026-05-05 22:43:36 -04:00
Tom Alexander
365566bf75 Fix launching of containers. 2026-05-05 22:43:36 -04:00
Tom Alexander
37de518169 Create a debugging role. 2026-05-05 22:43:35 -04:00
Tom Alexander
2bd134ab12 Some networking fixes. 2026-05-05 22:43:35 -04:00
Tom Alexander
827ef15c90 Add cilium bootstrap. 2026-05-05 22:43:35 -04:00
Tom Alexander
f7d463947d Installing the cni plugins. 2026-05-05 22:43:35 -04:00
Tom Alexander
a389547117 Add kube-proxy. 2026-05-05 22:43:35 -04:00
Tom Alexander
3cb65e76c0 Add kubelet. 2026-05-05 22:43:35 -04:00
Tom Alexander
6c05320380 Add worker nodes. 2026-05-05 22:43:34 -04:00
Tom Alexander
d302ac96e2 Add kube-scheduler. 2026-05-05 22:43:34 -04:00
Tom Alexander
23ee194a84 Add kube-controller-manager. 2026-05-05 22:43:34 -04:00
Tom Alexander
0e111b500b Fix launching kube-apiserver. 2026-05-05 22:43:34 -04:00
Tom Alexander
df9f526f9e Move the encryption config into a package. 2026-05-05 22:43:34 -04:00
Tom Alexander
d8b7319348 Switch to generating certs with openssl. 2026-05-05 22:43:34 -04:00
Tom Alexander
2ac3cff2a1 Add controller proxy certs. 2026-05-05 22:43:33 -04:00
Tom Alexander
f31260eb00 Add requestheader-client-ca. 2026-05-05 22:43:33 -04:00
Tom Alexander
38f6d3abf9 Add service account. 2026-05-05 22:43:33 -04:00
Tom Alexander
2522803300 Install kubernetes. 2026-05-05 22:43:33 -04:00
Tom Alexander
f8a40ca20e Add additional controllers. 2026-05-05 22:43:33 -04:00
Tom Alexander
9fc2e682f4 Add configs for a new kubernetes cluster on NixOS. 2026-05-05 22:43:32 -04:00