Enable direct gRPC connection on KAS via nginx

Issue: Implement gRPC ingress support (gitlab-org/cluster-integration/gitlab-agent#766) • Ashvin Sharma • 18.7

What does this merge request do and why?

Enable direct gRPC connection on KAS via nginx

By default, gRPC communication on KAS is tunnelled in websocket connection. This change includes a flag which configures the nginx to handle gRPCs connections without the websocket tunnel.

Running this requires TLS and HTTP/2 enabled in GDK.

How to set up and validate locally

1. Enable TLS and HTTP/2 in NGINX
2. Enable gRPC for KAS

gdk config set gitlab_k8s_agent.grpc.enabled true
gdk reconfigure

3. Configure agentk to use grpc

--kas-address "grpcs://gdk.test:3000" --token-file "<PATH-TOKEN-FILE>"

Impacted categories

The following categories relate to this merge request:

Merge request checklist

  • This MR references an issue describing the change.
  • This change is backward compatible. If not, include steps to communicate to users.
  • Tests added for new functionality. If not, raise an issue to follow-up.
  • Observability added/updated (logging, metrics, tracing).
  • Documentation added/updated.
  • Announcement added for notable changes.
  • gdk doctor test added.
Edited by Ashvin Sharma

Merge request reports

Loading