Page MenuHomePhabricator

Add support for a pool of backend hosts to DynamicProxy's urlproxy mode
Open, Needs TriagePublic

Description

Identified in T228500: Toolforge: evaluate ingress mechanism as a useful feature for fronting a Kubernetes cluster.

We would like to be able to configure a pool of backend servers which will handle ingress into the Toolforge Kubernetes cluster. The ideal solution would somehow interrogate the paired Kubernetes API to find the list of entry points, cache that list for X minutes, and also perform periodic dynamic health checks to ensure that the pooled entry points are responsive.

These changes also need to preserve backwards compatibility with the legacy grid engine backends as well as the legacy Kubernetes backends. This likely means a large rethinking of how the nginx config and urlproxy.lua interact, updating the data model of the invisible-unicorn registration service, and changes to kube2proxy.py to register things. So yeah... kind of rewrite the whole scattered stack and do it without breaking everything. ;)

Event Timeline

bd808 created this task.Jul 31 2019, 10:44 PM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptJul 31 2019, 10:44 PM

Assuming this task is about Toolforge, hence adding project tag so others can find this task when searching for tasks under that code project.