Kubernetes SIG API Machinery 20230803

Поділитися
Вставка
  • Опубліковано 10 лют 2025
  • [lavalamp, deads2k, liggitt, munnerz] Discovery when apiservers are at mixed versions
    Description of current behavior and some problematic scenarios: docs.google.co...
    Problems to solve (or verify solutions for)
    ensure unhandled local APIService endpoints return 503s, not 404s
    github.com/kub... did this for unready apiservers
    server response GC depends on for GET of individual items
    type known
    list with no objects == 200 with empty list
    list inside missing namespace == 200 with empty list?
    get missing object == 404
    type unknown
    list/get == 404 (404 on get is problematic for GC controller)
    type in discovery but not known locally
    list/get = 404, but maybe should be 503? will this break API clients that use 404 as signal to fall back to other API versions?
    (servers don't have discovery-level type-level info for types not known locally today)
    recording/informing existence (and info like verbs, namespacedness) of resource types so older servers can serve more complete/correct discovery
    would benefit clients who would ignore some types of resources (like namespace controller wouldn't care about metrics server because it wasn't writable, or about cluster-scoped resources)
    related to StorageVersion API, which has an entry per resource
    related to aggregated discovery
    improve namespace controller behavior when discovery permafails (avoid storms)
    improve GC behavior when discovery permafails (avoid locking)
    [ichekrygin] Question/guidance request about controller extensibility for core k8s types.

КОМЕНТАРІ •