feat: Add GatewayAPI support to cluster bootstrap

This commit is contained in:
Peter 2025-10-29 21:07:54 +01:00
parent 7d3c60325f
commit bd50783229
Signed by: Peter
SSH key fingerprint: SHA256:B5tYaxBExaDm74r1px9iVeZ6F/ZDiyiy9SbBqfZYrvg
6 changed files with 11 additions and 2 deletions

View file

@ -55,6 +55,7 @@ resource "talos_machine_configuration_apply" "config_apply_cp" {
node_name = format("%s.wheatley.in", var.node_config.proxmox_node)
machine_type = each.value.type
talos_version = var.node_config.talos_version
gateway-api_version = var.node_config.gateway_api_version
cilium_version = var.node_config.cilium_version
cilium_install_file = file("${path.module}/templates/cilium-install.yaml.tmpl")
})
@ -79,6 +80,7 @@ resource "talos_machine_configuration_apply" "config_apply_worker" {
node_name = format("%s.wheatley.in", var.node_config.proxmox_node)
machine_type = each.value.type
talos_version = var.node_config.talos_version
gateway-api_version = var.node_config.gateway_api_version
cilium_version = var.node_config.cilium_version
cilium_install_file = file("${path.module}/templates/cilium-install.yaml.tmpl")
})

View file

@ -94,3 +94,5 @@ spec:
- gatewayAPI.enableAlpn=true
- --set
- gatewayAPI.enableAppProtocol=true
- --set
- hubble.relay.enabled=true

View file

@ -8,13 +8,11 @@ machine:
hostname: ${hostname}
nameservers:
- 10.13.37.2
%{ if machine_type == "controlplane" }
interfaces:
- interface: eth0
dhcp: false
vip:
ip: ${vip_address}
%{ endif }
kubelet:
extraArgs:
pod-max-pids: 1000
@ -37,6 +35,8 @@ cluster:
name: none
proxy:
disabled: true
extraManifests:
- https://github.com/kubernetes-sigs/gateway-api/releases/download/v${gateway-api_version}/standard-install.yaml
inlineManifests:
- name: cilium-bootstrap
contents: |

View file

@ -30,6 +30,8 @@ cluster:
name: none
proxy:
disabled: true
extraManifests:
- https://github.com/kubernetes-sigs/gateway-api/releases/download/v${gateway-api_version}/standard-install.yaml
inlineManifests:
- name: cilium-bootstrap
contents: |

View file

@ -3,6 +3,7 @@ variable "node_config" {
type = object({
ipv4_gateway = string
talos_version = string
gateway_api_version = string
cilium_version = string
cluster_name = string
kubernetes_version = string