-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Content and Formatting Changes to Knative Kubernetes Services (#1522) #1536
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
knative-prow-robot
merged 15 commits into
knative:master
from
kzjackson1:editKubeServices
Jun 28, 2019
Merged
Changes from all commits
Commits
Show all changes
15 commits
Select commit
Hold shift + click to select a range
c21026d
Document edit for issue 1522
kzjackson1 b7495c8
Update docs/serving/knative-kubernetes-services.md
kzjackson1 1352953
Update docs/serving/knative-kubernetes-services.md
kzjackson1 a1356a8
Update docs/serving/knative-kubernetes-services.md
kzjackson1 481cb62
Update docs/serving/knative-kubernetes-services.md
kzjackson1 4bb9ef9
Update docs/serving/knative-kubernetes-services.md
kzjackson1 6e6ec02
Update docs/serving/knative-kubernetes-services.md
kzjackson1 069cfe3
Update docs/serving/knative-kubernetes-services.md
kzjackson1 7cf24e7
Merge remote-tracking branch 'upstream/master' into editKubeServices
kzjackson1 3d90285
Addressing review comments for issue 1522
kzjackson1 332053d
Addressing review comments for issue 1522
kzjackson1 a14e22e
Addressing review comments for issue 1522
kzjackson1 7bd32ca
Update docs/serving/knative-kubernetes-services.md
kzjackson1 281d040
Update docs/serving/knative-kubernetes-services.md
kzjackson1 f8fccd6
Update docs/serving/knative-kubernetes-services.md
kzjackson1 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -5,25 +5,36 @@ weight: 9 | |||||
| type: "docs" | ||||||
| --- | ||||||
|
|
||||||
| This document describes what is running when running knative serving. | ||||||
| This guide describes the [Kubernetes Services](https://kubernetes.io/docs/concepts/services-networking/service/) that are active when running Knative Serving. | ||||||
|
|
||||||
| After applying the serving yaml, this will install a few knative services and | ||||||
| deployments on your kubernetes cluster. This document provides an overview of | ||||||
| the deployments and the motivations for each one. | ||||||
| ## Before You Begin | ||||||
|
|
||||||
| ```sh | ||||||
| $ kubectl get services -n knative-serving | ||||||
| 1. This guide assumes that you have installed Knative Serving. If you have not, | ||||||
| instructions on how to do this are located [here](https://knative.dev/docs/install/knative-custom-install/). | ||||||
| 2. Verify that you have the proper components in your cluster. To view the services installed in your cluster, use the commmand: | ||||||
kzjackson1 marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||
|
|
||||||
| ```sh | ||||||
| $ kubectl get services -n knative-serving | ||||||
| ``` | ||||||
|
|
||||||
| This should return the following output: | ||||||
|
|
||||||
| ```sh | ||||||
| NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE | ||||||
| activator-service ClusterIP 10.96.61.11 <none> 80/TCP,81/TCP,9090/TCP 1h | ||||||
| autoscaler ClusterIP 10.104.217.223 <none> 8080/TCP,9090/TCP 1h | ||||||
| controller ClusterIP 10.101.39.220 <none> 9090/TCP 1h | ||||||
| webhook ClusterIP 10.107.144.50 <none> 443/TCP 1h | ||||||
| ``` | ||||||
| 3. To view the deployments in your cluster, use the following command: | ||||||
kzjackson1 marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||
|
|
||||||
| ```sh | ||||||
| $ kubectl get deployments -n knative-serving | ||||||
| ``` | ||||||
|
|
||||||
| ```sh | ||||||
| $ kubectl get deployments -n knative-serving | ||||||
| This should return the following output: | ||||||
|
|
||||||
| ```sh | ||||||
| NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE | ||||||
| activator 1 1 1 1 1h | ||||||
| autoscaler 1 1 1 1 1h | ||||||
|
|
@@ -33,41 +44,40 @@ networking-istio 1 1 1 1 1h | |||||
| webhook 1 1 1 1 1h | ||||||
| ``` | ||||||
|
|
||||||
| ## Service: activator | ||||||
| These services and deployments are installed by the `serving.yaml` file during install. The next section describes their function. | ||||||
|
|
||||||
| ## Components | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Oh, and this is still valid ^ |
||||||
|
|
||||||
| ### Service: activator | ||||||
|
|
||||||
| The responsibilities of the activator are: | ||||||
| The activator is responsible for receiving & buffering requests for inactive revisions and reporting metrics to the autoscaler. It also retries requests to a revision after the autoscaler scales the revision based on the reported metrics. | ||||||
|
|
||||||
| - 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. | ||||||
| ### Service: autoscaler | ||||||
|
|
||||||
| ## Service: autoscaler | ||||||
| The autoscaler receives request metrics and adjusts the number of pods required to handle the load of traffic. | ||||||
|
|
||||||
| The autoscaler receives request metrics and adjusts the number of pods required | ||||||
| to handle the load of traffic. | ||||||
| ### Service: controller | ||||||
|
|
||||||
| ## Service: controller | ||||||
| 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 configuration and route. It will convert the configuration into revisions and the revisions into deployments and Knative Pod Autoscalers (KPAs). | ||||||
|
|
||||||
| 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. | ||||||
| ### Service: webhook | ||||||
|
|
||||||
| ## Service: webhook | ||||||
| The webhook intercepts all Kubernetes API calls as well as all CRD insertions and updates. | ||||||
| It sets default values, rejects inconsitent and invalid objects, and validates and mutates Kubernetes API calls. | ||||||
|
|
||||||
| The webhook intercepts all kubernetes api calls, all crd insertions and updates. | ||||||
| It does two things: | ||||||
| ### Deployment: networking-certmanager | ||||||
|
|
||||||
| 1. Set default values | ||||||
| 2. Rejects inconsitent and invalid objects. | ||||||
| The certmanager reconciles cluster ingresses into cert manager objects. | ||||||
|
|
||||||
| It validates and mutates k8s api calls. | ||||||
| ### Deployment: networking-istio | ||||||
|
|
||||||
| ## Deployment: networking-certmanager | ||||||
| The networking-istio deployment reconciles a cluster's ingress into an [Istio virtual service](https://istio.io/docs/reference/config/networking/v1alpha3/virtual-service/). | ||||||
|
|
||||||
| The certmanager reconciles cluster ingress into cert manager objects. | ||||||
| ## What's Next | ||||||
|
|
||||||
| ## Deployment: networking-istio | ||||||
| - For a deeper look at the services and deployments involved in Knative Serving, click [here](https://github.com/knative/serving/blob/master/docs/spec/overview.md#service). | ||||||
| - For a high-level analysis of Serving, look at the [documentation here](./). | ||||||
| - Check out the Knative Seriving code samples [here](./samples/) for more hands-on tutorials. | ||||||
|
|
||||||
| This reconciles cluster ingress into a virtual service. | ||||||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.