Vegard Hagen
3cbc35aaf9
fix(netbird-signal): harden security
2025-01-05 15:43:44 +01:00
Vegard Hagen
c35ba49135
fix(netbird-relay): harden security
2025-01-05 15:40:20 +01:00
Vegard Hagen
a99b4c6e14
fix(netbird-management): harden security
2025-01-05 15:36:57 +01:00
Vegard Hagen
1c585e2ce4
fix(netbird-dashboard): harden security
2025-01-05 15:36:49 +01:00
Vegard Hagen
c9ffd698c8
fix(netbird-agent): allow read root fs and add sysctl
...
The agent seems to assume it's running with full root privileges,
something we don't want. Accommodate by changing manually.
2025-01-05 14:56:24 +01:00
Vegard Hagen
a89e51b027
refactor(netbird): use env-variable name as key in secrets
...
this makes the configuration less verbose
2025-01-05 12:02:11 +01:00
Vegard Hagen
56d2a42b9d
feat(netbird): replace backend helm chart with plain manifests
...
no need for all the patching anymore
2025-01-05 11:34:25 +01:00
Vegard Hagen
0149a02e4c
feat(netbird): replace dashboard helm chart with plain manifests
...
imho the chart doesn't add much here
2025-01-04 21:53:23 +01:00
Vegard Hagen
31c6b25013
fix(netbird): new agent setup key
2025-01-04 10:18:31 +01:00
Vegard Hagen
5ecf061fc3
fix(keycloak): move crossplane-keycloak-credentials to keycloak from crossplane namespace
2025-01-04 09:47:39 +01:00
Vegard Hagen
aa1a078294
feat(netbird): add relay service
...
This is a required step for solving #81
Netbird 0.29.0 added its own relay service based on websockets
2025-01-03 17:43:11 +01:00
Vegard Hagen
15adc6f863
feat(netbird): configuring oidc-clients using new XOidcClient composition
2025-01-03 15:24:19 +01:00
Vegard Hagen
bff741753a
feat(crossplane): try to organise crossplane crds
...
also add a keycloak-oidc-client composition
2025-01-03 14:55:12 +01:00
Vegard Hagen
253e65a708
fix(keycloak): update crossplane keycloak-provider
2025-01-03 13:50:47 +01:00
Vegard Hagen
b07b728855
fix(netbird): update oidc client
...
trying to fix id_token_hint error with keycloak
2025-01-03 10:13:39 +01:00
Vegard Hagen
e4fbd938c1
fix(dns): tweak unbound setting again
...
Still some intermittent issues with DNS-resolving
2025-01-02 14:38:58 +01:00
Vegard Hagen
48b6fc376a
fix(vpn): remove security context for agent
2024-12-12 20:02:56 +01:00
Vegard Hagen
02eb0a62d7
fix(vpn): remove read only root fs for netbird agent
2024-12-12 20:02:56 +01:00
Vegard Hagen
eb74b5baff
fix(dns): tweak dns settingss after update
2024-12-12 20:02:38 +01:00
Vegard Hagen
e48986a5a2
feat(authelia): add kubectl oidc account
2024-12-01 22:33:36 +01:00
Vegard Hagen
ffa170117b
fix(keycloak): new postgres volume
2024-12-01 21:48:26 +01:00
Vegard Stenhjem Hagen
694d56b32d
fix: update renovate syntax
2024-11-17 17:03:35 +01:00
Vegard Hagen
4dd769fdf7
feat: add extra admin user
2024-11-17 17:03:35 +01:00
Vegard Hagen
237a321ec3
chore(qBit): downgrade to 4.6.5
2024-11-17 17:03:35 +01:00
Vegard Hagen
0c19b80b75
feat(authelia): add "optional" secrets in config
2024-11-17 17:03:35 +01:00
Vegard Hagen
403d32b9ed
feat(authelia): make cert-manager generate jwks
2024-11-17 17:03:35 +01:00
Vegard Hagen
140fbc249b
feat(tofu): use new talos_image_factory_schematic resource
...
talos provider 0.6 added a new resource for generating the image schematic id
2024-11-17 17:03:34 +01:00
Vegard Hagen
8d8e0ca87a
fix(authelia): add access_control policy rule
2024-11-17 17:03:34 +01:00
Vegard Hagen
996bf85daf
chore(talos): upgrade last node ctrl-00
...
Regular 'terraform apply' was enough this time
We're now on Talos 1.8.1 and Kubernetes 1.31.1
2024-11-17 17:03:34 +01:00
Vegard Hagen
4c8066a130
chore(talos): upgrade node ctrl-02
...
It worked with 'tofu apply -refresh=false'! Still had to manually shut down the VM though. Still scary!
2024-11-17 17:03:34 +01:00
Vegard Hagen
094d72abdf
chore(talos): upgrade node ctrl-01
...
start manual talos upgrade process
Issue with upgrading 'endppoint' node (ctrl-02) since API becomes unresponsive. Either do proper LB or maybe 'tofu apply -refresh=false'
2024-11-17 17:03:34 +01:00
Vegard Hagen
6d137906d1
feat(authelia): add ES256 jwk and use it
2024-11-17 17:03:34 +01:00
Vegard Hagen
cbf1210859
fix(cert-manager): update API token
2024-11-17 17:03:34 +01:00
Vegard Hagen
9a92b48c97
feat(authelia): enable 2FA
2024-11-17 17:03:33 +01:00
Vegard Hagen
d077f4b035
feat(authelia): add ES256 jwk
2024-11-17 17:03:33 +01:00
Vegard Hagen
e0ce01c80f
fix(oidc): conceal jwks signing key
2024-11-17 17:03:33 +01:00
Vegard Hagen
53855a6d27
fix(oidc): conceal argo cd client secret
2024-11-17 17:03:33 +01:00
Vegard Hagen
86395edc1f
feat(authelia): add Argo CD client
2024-11-17 17:03:33 +01:00
Vegard Hagen
c88403691b
feat(lldap): create and use own authelia user
2024-11-17 17:03:33 +01:00
Vegard Hagen
ba69146b4b
feat(auth): add Authelia for OIDC
...
Use Authelia in an attempt to replace Keycloak. Kanidm is another alternative we're going to try later.
2024-11-17 17:03:33 +01:00
Vegard Hagen
6ac8652e24
chore(torrent): change torrent ports
2024-11-17 17:03:32 +01:00
Vegard Hagen
c524a6ab65
feat(cilium): enable maglev loadBalancer
...
Maglev Consistent Hashing should improve resiliency in case of failures https://docs.cilium.io/en/stable/network/kubernetes/kubeproxy-free/\#maglev-consistent-hashing
2024-11-17 17:03:32 +01:00
Vegard Hagen
af79c5b906
fix(argocd): turn on server-side diff
...
https://argo-cd.readthedocs.io/en/latest/user-guide/diff-strategies/\#server-side-diff
This should solve out-of-sync for e.g. Cilium ref https://github.com/argoproj/argo-cd/issues/19038
2024-11-17 17:03:32 +01:00
Vegard Hagen
ddb7f0fd9f
feat(lldap): bootstrap lldap users with script
2024-11-17 17:03:32 +01:00
Vegard Hagen
2a3f01736d
feat(ldap): add lldap as ldap server
2024-11-17 17:03:32 +01:00
Vegard Hagen
1d0ae6d437
feat(cnpg): configure test-database for external connection
2024-11-17 17:03:32 +01:00
Vegard Hagen
f1a11669a6
feat(renovate): group related containers for fewer renovate PRs
2024-11-17 17:03:32 +01:00
Vegard Hagen
e5b3cd91d3
feat(unrar): add an image for unrar tool
2024-11-17 17:03:31 +01:00
Vegard Stenhjem Hagen
944f4a92ba
fix(netbird): expose netbird dashboard
2024-11-17 17:03:31 +01:00
Vegard Hagen
5d69e82eb7
fix: route plex and jellyfin through gateway for tls-termination
2024-11-17 17:03:31 +01:00
Vegard Hagen
d3338da90a
feat(database): add cnpg for database management
2024-11-17 17:03:31 +01:00
Vegard Hagen
505a18cf38
fix(netbird): use internal dns to resolve auth admin-endpoint to internal gateway
2024-11-17 17:03:31 +01:00
Vegard Hagen
91e389dc0e
fix(netbird): allow required endpoint from keycloak
2024-11-17 17:03:30 +01:00
Vegard Hagen
d74b811d84
chore(docs): update readme
2024-11-17 17:03:30 +01:00
Vegard Hagen
9a7894a7ab
feat(vpn): split gateway into external and internal services
2024-11-17 17:03:30 +01:00
Vegard Hagen
0e0a356fd1
fix(oidc): add 'basic' scope to netbird client and update keycloak
...
Change in Keycloak 25.0.0
https://www.keycloak.org/docs/25.0.0/upgrading/\#new-default-client-scope-basic
Thanks to Olav https://github.com/olav-st/homelab/commit/14dac2b576adad90306f9b23026a9048f66b38b7
2024-11-17 17:03:30 +01:00
Vegard Hagen
872f33c295
feat(adguard): mount config-file for declarative configuration
2024-11-17 17:03:30 +01:00
Vegard Hagen
9dec025db7
feat(dns): use Unbound and AdGuardHome for DNS
...
Unbound as a recursive resolver and AdGuardHome as main DNS backed by
Unbound
2024-11-17 17:03:29 +01:00
Vegard Hagen
38f118fa17
fix(jellyfin): use Memory for /cache to avoid NodeDiskPressure
2024-11-17 17:03:29 +01:00
Vegard Hagen
653d3e946c
feat(whoami): add simple whoami-app for testing
2024-11-17 17:03:29 +01:00
Vegard Hagen
5c0c3366b2
feat(netbird): add netbird router agent
...
This should allow me to connect to services from a Netbird VPN connection
2024-11-17 17:03:29 +01:00
Vegard Hagen
0048da7ffa
chore(oidc): collect all oidc-clients under keycloak
2024-11-17 17:03:29 +01:00
Vegard Hagen
d79f57efd3
chore(ingress): remove all ingress resources in favour of http-routes
2024-11-17 17:03:29 +01:00
Vegard Hagen
1602202137
feat(vuetorrent): use git-sync to fetch vuetorrent theme
2024-11-17 17:03:29 +01:00
Vegard Hagen
9de3a6ba0f
chore(cloudflared): clean up cloudflared deployment
...
remove unused config and enable renovate
2024-11-17 17:03:28 +01:00
Vegard Hagen
11cba23ae2
chore(renovate): add renovate comments on deployments
...
This should allow Renovate to pick up the image versions automatically and create update PRs
2024-11-17 17:03:28 +01:00
Vegard Hagen
e03f701119
chore(nas): update TrueNAS IP after router change
...
New router is trash and can't set static IPs, some device stole the old one
2024-11-17 17:03:28 +01:00
Vegard Hagen
5abde08753
fix: conflicting svc name
2024-11-17 17:03:28 +01:00
Vegard Hagen
e6a8ad12c8
chore(plex): use Memory for /tmp and /transcode
...
Try to fix NodeDiskPressure issue where I think Plex filling up ephemeral storage
2024-11-17 17:03:28 +01:00
Vegard Hagen
dbb66ba93d
chore: rename svc for arr-stack applications
...
Dropping -web postfix since it doesn't mean anything and I think it just clutters
2024-11-17 17:03:28 +01:00
Vegard Hagen
8668f58a38
chore(gateway): update to Gateway API 1.1.0
2024-11-17 17:03:28 +01:00
Vegard Hagen
25f977126b
fix(cert): ask for cert for both *.stonegarden.dev and stonegarden.dev
...
try to bypass letsenrypt rate-limiting for exact set of domains
2024-11-17 17:03:27 +01:00
Vegard Hagen
ba2ab6435b
chore(cleanup): Cleanup after cluster rebuild
2024-11-17 17:03:27 +01:00
Vegard Hagen
1c602200c7
chore(pv): consistent naming scheme
2024-11-17 17:03:27 +01:00
Vegard Hagen
69d56e8e71
feat: install Netbird as a VPN solution
...
Also configure Netbird OIDC client in Keycloak using Crossplane
2024-11-17 17:03:27 +01:00
Vegard Stenhjem Hagen
935a13038c
fix(remark42): correct url
...
Wrong URL used from the old cluster. Made it impossible to log in due to a wrong redirect URL.
2024-11-17 17:03:27 +01:00
Vegard Hagen
e2e30a91e2
fix: bind prometheus operator to same node with volume
...
No shared volumes (yet), so have to bind deployment to the node with the volume
2024-11-17 17:03:27 +01:00
Vegard Hagen
c4ba7120dd
feat(tofu): updated kubernetes setup
...
tried to to some tidying while writing an article based on the current
setup.
2024-11-17 17:03:27 +01:00
Vegard Hagen
0a265cbfd5
fix: crossed-wires in Plex and Jellyfin
2024-11-17 17:03:26 +01:00
Vegard Hagen
605e5ef181
fix: increase cpu and mem limits for Argo CD and cloudflared
...
This will hopefully alleviate issues with syncing and routing apparently hanging sometimes
2024-11-17 17:03:26 +01:00
Vegard Hagen
4cb40d3282
feat: configure keycloak using crossplane provider
2024-11-17 17:03:26 +01:00
Vegard Hagen
76ab7a71a2
feat: add crossplane.io
...
Planning to use Crossplane to declaratively create OIDC-clients for Keycloak
2024-11-17 17:03:26 +01:00
Vegard Hagen
628bdb53d6
feat(auth): add keycloak for auth
2024-11-17 17:03:26 +01:00
Vegard Hagen
be08e101b2
feat: configure renovate
2024-07-22 01:05:36 +02:00
Vegard Hagen
c80528ffbd
chore: switch remodelling to main-branch
2024-07-21 23:40:10 +02:00
Vegard Hagen
207b1892bf
feat: cleanup of remodelling
...
move remodel folder down to root and delete old unused manifests
2024-07-21 23:21:12 +02:00
Vegard Hagen
f1797c94ec
feat(monitoring): install kube-prometheus-stack
2024-07-21 23:20:31 +02:00
Vegard Hagen
4d2fe610e2
fix(proxmox-csi-plugin): fetch from Helm chart
2024-07-21 23:20:31 +02:00
Vegard Hagen
1eafca98b5
chore: enable Cilium Hubble
2024-07-21 23:20:31 +02:00
Vegard Hagen
7c492be433
chore: switch Argo CD over to main domain
2024-07-21 23:20:30 +02:00
Vegard Hagen
aa6af35f48
feat: routes to cluster external services
...
Routes to Home Assistant, Proxmox and TrueNAS
2024-07-21 23:20:30 +02:00
Vegard Hagen
482c0368ea
fix: stonegarden routing
...
added a listener for stonegarden.dev
2024-07-21 23:20:30 +02:00
Vegard Hagen
2c1e894af0
fix: media player services
...
Correct labels and svc type
2024-07-21 23:20:30 +02:00
Vegard Hagen
bca0889c47
fix(cloudflared): correct routing to homepage
2024-07-21 23:20:30 +02:00
Vegard Hagen
bf5f26da5a
chore: restore remark42 backup
2024-07-21 23:20:30 +02:00
Vegard Hagen
32cee0d16e
chore: move from euclid sub-domain to main domain
2024-07-21 23:20:30 +02:00
Vegard Hagen
731a16baf3
feat(homepage): add homepage and blog
...
Add Vue Homepage, Hugo blog and Remark 42 for comments
2024-07-21 23:20:30 +02:00
Vegard Hagen
3edf3260d6
feat(media): add media players
...
Adding both Plex and Jellyfin media players
2024-07-21 23:20:29 +02:00
Vegard Hagen
7780078984
chore(tofu): don't use variables for nodes and volumes in main module
2024-07-21 23:20:29 +02:00
Vegard Hagen
ac16aed3d2
feat: add node-feature-discovery and intel-device-plugins
...
label nodes with features to enable e.g. Intel iGPU support
2024-07-21 23:20:29 +02:00