It seems like only pages ago that I was extolling the virtues of history and of Knative’s ability to juggle it a bit with Revisions. And I wasn’t wrong. But by itself, this is just an exercise in decorative bookkeeping. I need my Revisions to do something.
In Knative Serving, this brings us to Routes. These are the way you can describe to Knative how to map from an incoming HTTP request to a specific Revision. In this chapter, my focus is going to be on the business of what you can ask Knative to do. I’ll pay much less attention to how Knative does the network magic.
The first two points (from and to) are pretty typical of generations of proxies, routers, traffic doodads, and thingamajiggers. The third, traffic splitting or weighting, isn’t universal, but it’s common. Everything you can do with a Route can be done some other way. You might, for example, already have some elaborate tooling built around using a Kubernetes Ingress controller. Or, you might just run Nginx by hand with a bit of spit and elbow polish.