3 ms·
Allowing independent teams to deploy their service into production is a hard problem to manage. One way is to provide them with self-service to abstractions tha
by rswail 6y ago
Allowing independent teams to deploy their service into production is a hard problem to manage. One way is to provide them with self-service to abstractions that are managed with guard rails.
Persistent storage, key/value stores, caches, naming, service discovery, networking, access control, authentication, authorization, versioning etc etc.
Having that as an API means you can deploy safely. Having it as a library means that you're missing the indication that these are networked services that you are relying on and must accomodate.
Having it as a networked "sidecar" means that it can be upgraded independently, so is an extension of the control plane beyond the lower level system services of k8s and equivalent. It can express business logic in terms of deployment policies, sign offs, audits, accounting etc.