--- kind: GatewayClass apiVersion: networking.x-k8s.io/v1alpha1 metadata: name: my-gateway-class namespace: default spec: controller: traefik.io/gateway-controller --- kind: Gateway apiVersion: networking.x-k8s.io/v1alpha1 metadata: name: my-tcp-gateway namespace: default spec: gatewayClassName: my-gateway-class listeners: # Use GatewayClass defaults for listener definition. - protocol: TCP port: 9000 routes: kind: TCPRoute namespaces: from: Same selector: matchLabels: app: whoamitcp --- kind: TCPRoute apiVersion: networking.x-k8s.io/v1alpha1 metadata: name: tcp-app-default namespace: default labels: app: whoamitcp spec: rules: - forwardTo: - serviceName: whoamitcp port: 9000 weight: 1 --- kind: TCPRoute apiVersion: networking.x-k8s.io/v1alpha1 metadata: name: tcp-app-bar namespace: bar labels: app: whoamitcp spec: rules: - forwardTo: - serviceName: whoamitcp-bar port: 9000 weight: 1