-
Notifications
You must be signed in to change notification settings - Fork 0
Knative solution notes
Knative components build on top of Kubernetes, abstracting away the complex details and enabling developers to focus on what matters. Built by codifying the best practices shared by successful real-world implementations, Knative solves the "boring but difficult" parts of building, deploying, and managing cloud native services so you don't have to.
- Focused API with higher level abstractions for common app use-cases.
- Stand up a scalable, secure, stateless service in seconds.
- Loosely coupled features let you use the pieces you need.
- Pluggable components let you bring your own logging and monitoring, networking, and service mesh.
- Knative is portable: run it anywhere Kubernetes runs, never worry about vendor lock-in.
- Idiomatic developer experience, supporting common patterns such as GitOps, DockerOps, ManualOps. Knative can be used with common tools and frameworks such as Django, Ruby on Rails, Spring, and may more.
The responsibilities of the activator are:
- Receiving & buffering requests for inactive Revisions.
- Reporting metrics to the autoscaler.
- Retrying requests to a Revision after the autoscaler scales such Revision based on the reported metrics.
The autoscaler receives request metrics and adjusts the number of pods required to handle the load of traffic.
The controller service reconciles all the public knative objects and autoscaling CRDs. When a user applies a knative service to the kubernetes api, this creates the config and route. It will convert config into revisions. It will convert Revision into Deployment and KPA.
The webhook intercepts all kubernetes api calls, all crd insertions and updates. It does two things:
- Set default values
- Rejects inconsitent and invalid objects. It validates and mutates k8s api calls.
The certmanager reconciles cluster ingress into cert manager objects.
This reconciles cluster ingress into a virtual service.