vault: cut over to GCE Raft HA cluster, retire nook.family media stack
- dns-neuralplatform.tf: add vault.neuralplatform.ai A record → 34.54.164.21 (GCP LB) DNS-only (not proxied) so GCP managed TLS cert can provision correctly - main.tf: remove vault.neuralplatform.ai from Cloudflare tunnel ingress (now served directly via GCP Global HTTPS LB) - main.tf: remove watch.nook.family, jellyfin.nook.family, bazarr.nook.family from tunnel ingress (nook.family media stack retired; infra is Neuron-focused) GCE Vault cluster already initialized and running (3-node Raft, active since 2026-05-04T16:05). Secrets migrated 48/48 from k3s vault. ESO ClusterSecretStore validated against new vault. k3s vault-0 is now superseded.
This commit is contained in:
@@ -23,3 +23,16 @@ resource "cloudflare_record" "np_web_stage" {
|
|||||||
proxied = true
|
proxied = true
|
||||||
ttl = 1
|
ttl = 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# vault.neuralplatform.ai — GCE Raft HA Vault cluster via GCP Global HTTPS LB.
|
||||||
|
# DNS-only (not proxied) — GCP managed TLS cert terminates at the LB.
|
||||||
|
# Vault nodes listen on plain HTTP 8200 internally; LB does TLS.
|
||||||
|
# IP: terraform output vault_lb_ip from servers/gcp workspace = 34.54.164.21
|
||||||
|
resource "cloudflare_record" "np_vault" {
|
||||||
|
zone_id = local.zone_neuralplatform_ai
|
||||||
|
name = "vault"
|
||||||
|
type = "A"
|
||||||
|
content = "34.54.164.21"
|
||||||
|
proxied = false
|
||||||
|
ttl = 60
|
||||||
|
}
|
||||||
|
|||||||
+4
-30
@@ -92,37 +92,11 @@ resource "cloudflare_zero_trust_tunnel_cloudflared_config" "legion" {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ingress_rule {
|
# vault.neuralplatform.ai — moved to GCP Global HTTPS LB (34.54.164.21)
|
||||||
hostname = "vault.neuralplatform.ai"
|
# DNS is now a direct A record (not proxied) in dns-neuralplatform.tf
|
||||||
service = "https://traefik.kube-system.svc:443"
|
|
||||||
origin_request {
|
|
||||||
no_tls_verify = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ingress_rule {
|
# watch.nook.family, jellyfin.nook.family, bazarr.nook.family — removed
|
||||||
hostname = "watch.nook.family"
|
# This infrastructure is focused on Neuron; nook.family media stack retired
|
||||||
service = "https://traefik.kube-system.svc:443"
|
|
||||||
origin_request {
|
|
||||||
no_tls_verify = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ingress_rule {
|
|
||||||
hostname = "jellyfin.nook.family"
|
|
||||||
service = "https://traefik.kube-system.svc:443"
|
|
||||||
origin_request {
|
|
||||||
no_tls_verify = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ingress_rule {
|
|
||||||
hostname = "bazarr.nook.family"
|
|
||||||
service = "https://traefik.kube-system.svc:443"
|
|
||||||
origin_request {
|
|
||||||
no_tls_verify = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# fornax.neuralplatform.ai — Fornax torrent coordinator (qBittorrent API proxy)
|
# fornax.neuralplatform.ai — Fornax torrent coordinator (qBittorrent API proxy)
|
||||||
|
|||||||
Reference in New Issue
Block a user