diff --git a/docs/serving/README.md b/docs/serving/README.md index 2d991b8e4..b9e7ddbd8 100644 --- a/docs/serving/README.md +++ b/docs/serving/README.md @@ -38,14 +38,14 @@ serverless workload behaves on the cluster: are immutable objects and can be retained for as long as useful. Knative Serving Revisions can be automatically scaled up and down according to incoming traffic. See - [Configuring the Autoscaler](autoscaling) for more + [Configuring the Autoscaler](autoscaling/README.md) for more information. ![Diagram that displays how the Serving resources coordinate with each other.](https://github.com/knative/serving/raw/main/docs/spec/images/object_model.png) ## Getting Started -To get started with Serving, check out one of the [hello world](samples/) +To get started with Serving, check out one of the [hello world](samples/README.md) sample projects. These projects use the `Service` resource, which manages all of the details for you. @@ -57,21 +57,21 @@ For more information on the resources and their interactions, see the [Resource ## More samples and demos -- [Knative Serving code samples](samples/) +- [Knative Serving code samples](samples/README.md) ## Debugging Knative Serving issues -- [Debugging Application Issues](debugging-application-issues) +- [Debugging application issues](../developer/serving/troubleshooting/debugging-application-issues.md) ## Configuration and Networking - [Configuring cluster local routes](../developer/serving/services/private-services.md) -- [Using a custom domain](../developer/serving/services/using-a-custom-domain) -- [Using subroutes](../developer/serving/services/using-subroutes) +- [Using a custom domain](using-a-custom-domain.md) +- [Traffic management](../developer/serving/traffic-management.md) ## Observability -- [Serving Metrics API](metrics) +- [Serving Metrics API](../admin/collecting-metrics/serving-metrics/metrics.md) ## Known Issues diff --git a/docs/serving/autoscaling/README.md b/docs/serving/autoscaling/README.md index feef2a133..c55ac8707 100644 --- a/docs/serving/autoscaling/README.md +++ b/docs/serving/autoscaling/README.md @@ -7,16 +7,16 @@ The Autoscaler component watches traffic flow to the application, and scales rep Knative services default to using autoscaling settings that are suitable for the majority of use cases. However, some workloads may require a custom, more finely-tuned configuration. This guide provides information about configuration options that you can modify to fit the requirements of your workload. -For more information about how autoscaling for Knative works, see the [Autoscaling concepts](autoscaling-concepts) documentation. +For more information about autoscaling in Knative, see the [Autoscaler types](autoscaler-types.md) documentation. -For more information about which metrics can be used to control the Autoscaler, see the [metrics](autoscaling-metrics) documentation. +For more information about which metrics can be used to control the Autoscaler, see the [metrics](autoscaling-metrics.md) documentation. ## Optional autoscaling configuration tasks * Configure your Knative deployment to use the Kubernetes Horizontal Pod Autoscaler (HPA) instead of the default KPA. -For how to install HPA, see [Install optional Serving extensions](../../install/install-extensions#install-optional-serving-extensions). -* Disable scale to zero functionality for your cluster ([global configuration only](scale-to-zero)). -* Configure the [type of metrics](autoscaling-metrics) your Autoscaler consumes. -* Configure [concurrency limits](concurrency) for applications. -* Try out the [Go Autoscale Sample App](autoscale-go/). +For how to install HPA, see [Install optional Serving extensions](../../admin/install/serving/install-serving-with-yaml.md#install-optional-serving-extensions). +* Disable scale to zero functionality for your cluster ([global configuration only](scale-to-zero.md)). +* Configure the [type of metrics](autoscaling-metrics.md) your Autoscaler consumes. +* Configure [concurrency limits](concurrency.md) for applications. +* Try out the [Go Autoscale Sample App](autoscale-go/README.md). diff --git a/docs/serving/autoscaling/autoscale-go/README.md b/docs/serving/autoscaling/autoscale-go/README.md index 2ef124ac3..790865a73 100644 --- a/docs/serving/autoscaling/autoscale-go/README.md +++ b/docs/serving/autoscaling/autoscale-go/README.md @@ -4,7 +4,7 @@ A demonstration of the autoscaling capabilities of a Knative Serving Revision. ## Prerequisites -1. A Kubernetes cluster with [Knative Serving](../../../install/) +1. A Kubernetes cluster with [Knative Serving](../../../admin/install/serving/install-serving-with-yaml.md)) installed. 1. The `hey` load generator installed (`go get -u github.com/rakyll/hey`). 1. Clone this repository, and move into the sample directory: diff --git a/docs/serving/deploying-from-private-registry.md b/docs/serving/deploying-from-private-registry.md index a24883979..597545a86 100644 --- a/docs/serving/deploying-from-private-registry.md +++ b/docs/serving/deploying-from-private-registry.md @@ -14,7 +14,7 @@ and then deploy those configurations to your Knative cluster. You need: -- A Kubernetes cluster with [Knative Serving installed](../../install/). +- A Kubernetes cluster with [Knative Serving installed](../admin/install/serving/install-serving-with-yaml.md). - The credentials to the private container registry where your container images are stored. ## Configuring your credentials in Knative @@ -84,4 +84,4 @@ your credentials and have access to your container images in the private registr ## What's next -[Learn how to create a Knative service](../getting-started-knative-app). +[Learn how to create a Knative service](getting-started-knative-app.md). diff --git a/docs/serving/getting-started-knative-app.md b/docs/serving/getting-started-knative-app.md index 71480d560..268d8c96e 100644 --- a/docs/serving/getting-started-knative-app.md +++ b/docs/serving/getting-started-knative-app.md @@ -7,14 +7,14 @@ using cURL requests. You need: -- A Kubernetes cluster with [Knative Serving installed](../install/). +- A Kubernetes cluster with [Knative Serving installed](../admin/install/serving/install-serving-with-yaml.md). - An image of the app that you'd like to deploy available on a container registry. The image of the sample app used in this guide is available on Google Container Registry. ## Sample application This guide demonstrates the basic workflow for deploying the -[Hello World sample app (Go)](../serving/samples/hello-world/helloworld-go) from the +[Hello World sample app (Go)](samples/hello-world/helloworld-go/README.md) from the [Google Container Registry](https://cloud.google.com/container-registry/docs/pushing-and-pulling). You can use these steps as a guide for deploying your container images from other registries like [Docker Hub](https://docs.docker.com/docker-hub/repos/). @@ -26,7 +26,7 @@ To deploy a local container image, you need to disable image tag resolution by r docker tag local-image dev.local/local-image ``` -[Learn more about image tag resolution.](tag-resolution) +[Learn more about image tag resolution.](../developer/serving/tag-resolution.md) The Hello World sample app reads in an `env` variable, `TARGET`, then prints "Hello World: \${TARGET}!". If `TARGET` isn't defined, it will print "NOT SPECIFIED". @@ -34,7 +34,7 @@ The Hello World sample app reads in an `env` variable, `TARGET`, then prints "He The easiest way to deploy a Knative Service is by using the Knative CLI [kn](https://github.com/knative/client). -**Prerequisite:** Install the `kn` binary as described in [Installing the Knative CLI](../install/install-kn) +**Prerequisite:** Install the `kn` binary as described in [Installing the Knative CLI](../client/install-kn.md) It will create a corresponding resource description internally as when using a YAML file directly. `kn` provides a command-line mechanism for managing Services. @@ -156,7 +156,7 @@ To see if your app has been deployed successfully, you need the URL created by K > Note: If your URL includes `example.com` then consult the setup instructions for - > configuring DNS (e.g. with `sslip.io`), or [using a Custom Domain](../serving/using-a-custom-domain). + > configuring DNS (e.g. with `sslip.io`), or [using a Custom Domain](using-a-custom-domain.md). If you changed the name from `helloworld-go` to something else when creating the `.yaml` file, replace `helloworld-go` in these commands with the name you entered. diff --git a/docs/serving/installing-cert-manager.md b/docs/serving/installing-cert-manager.md index 6d82e8323..da152884e 100644 --- a/docs/serving/installing-cert-manager.md +++ b/docs/serving/installing-cert-manager.md @@ -19,17 +19,14 @@ cert-manager. You must meet the following requirements to install cert-manager for Knative: - Knative Serving must be installed. For details about installing the Serving - component, see the [Knative installation guides](../install/). + component, see the [Knative installation guide](../admin/install/serving/install-serving-with-yaml.md). - You must configure your Knative cluster to use a [custom domain](using-a-custom-domain.md). - Knative currently supports cert-manager version `1.0.0` and higher. ## Downloading and installing cert-manager -Follow the steps from the official `cert-manager` website to download and install cert-manager - - [Installation steps](https://cert-manager.io/docs/installation/kubernetes/) - +To download and install cert-manager, follow the [Installation steps](https://cert-manager.io/docs/installation/kubernetes/) from the official `cert-manager` website. ## Completing the Knative configuration for TLS support diff --git a/docs/serving/istio-authorization.md b/docs/serving/istio-authorization.md index d7843e9e2..a77f41643 100644 --- a/docs/serving/istio-authorization.md +++ b/docs/serving/istio-authorization.md @@ -8,7 +8,7 @@ If you have configured additional security features, such as Istio's authorizati You must meet the following prerequisites to use Istio AuthorizationPolicy: - Istio must be used for your Knative Ingress. -See [Install a networking layer](../../admin/install/install-serving-with-yaml/#install-a-networking-layer). +See [Install a networking layer](../admin/install/serving/install-serving-with-yaml.md#install-a-networking-layer). - Istio sidecar injection must be enabled. See the [Istio Documentation](https://istio.io/latest/docs/setup/additional-setup/sidecar-injection/). @@ -50,7 +50,7 @@ If the activator isn't injected: - In STRICT mode, requests will simply be rejected. -To understand when requests are forwarded through the activator, see [documentation](../load-balancing/target-burst-capacity/) on the `TargetBurstCapacity` setting. +To understand when requests are forwarded through the activator, see the [target burst capacity](load-balancing/target-burst-capacity.md) documentation. This also means that many Istio AuthorizationPolicies won't work as expected. For example, if you set up a rule allowing requests from a particular source into a Knative service, you will see requests being rejected if they are forwarded by the activator. diff --git a/docs/serving/load-balancing/README.md b/docs/serving/load-balancing/README.md index ea7d26cf0..18fd8ea2a 100644 --- a/docs/serving/load-balancing/README.md +++ b/docs/serving/load-balancing/README.md @@ -16,7 +16,7 @@ The Activator load balancing algorithm works as follows: - If concurrency is unlimited, the request is sent to the better of two random choices. - If concurrency is set to a value less or equal than 3, the Activator will send the request to the first pod that has capacity. Otherwise, requests will be balanced in a round robin fashion, with respect to container concurrency. -For more information, see the documentation on [concurrency](../../serving/autoscaling/concurrency). +For more information, see the documentation on [concurrency](../autoscaling/concurrency.md). ## Configuring target burst capacity @@ -24,7 +24,7 @@ Target burst capacity is mainly responsible for determining whether the Activato Target burst capacity can be configured using a combination of the following parameters: -- Setting the targeted concurrency limits for the revision. See [concurrency](../../serving/autoscaling/concurrency). -- Setting the target utilization parameters. See [target utilization](../../serving/autoscaling/concurrency#target-utilization). -- Setting the target burst capacity. You can configure target burst capacity using the `autoscaling.knative.dev/targetBurstCapacity` annotation key in the `config-autoscaler` ConfigMap. See [Setting the target burst capacity](target-burst-capacity#setting-the-target-burst-capacity). -- Setting the Activator capacity by using the `config-autoscaler` ConfigMap. See [Setting the Activator capacity](activator-capacity#setting-the-activator-capacity) +- Setting the targeted concurrency limits for the revision. See [concurrency](../autoscaling/concurrency.md). +- Setting the target utilization parameters. See [target utilization](../autoscaling/concurrency.md#target-utilization). +- Setting the target burst capacity. You can configure target burst capacity using the `autoscaling.knative.dev/targetBurstCapacity` annotation key in the `config-autoscaler` ConfigMap. See [Setting the target burst capacity](target-burst-capacity.md#setting-the-target-burst-capacity). +- Setting the Activator capacity by using the `config-autoscaler` ConfigMap. See [Setting the Activator capacity](activator-capacity.md#setting-the-activator-capacity). diff --git a/docs/serving/load-balancing/target-burst-capacity.md b/docs/serving/load-balancing/target-burst-capacity.md index 19ed07e34..3328bdadc 100644 --- a/docs/serving/load-balancing/target-burst-capacity.md +++ b/docs/serving/load-balancing/target-burst-capacity.md @@ -1,14 +1,14 @@ # Configuring target burst capacity -_Target burst capacity_ is a [global and per-revision](../../serving/autoscaling/autoscaler-types.md#global-versus-per-revision-settings) integer setting that determines the size of traffic burst a Knative application can handle without buffering. +_Target burst capacity_ is a [global and per-revision](../autoscaling/autoscaler-types.md#global-versus-per-revision-settings) integer setting that determines the size of traffic burst a Knative application can handle without buffering. If a traffic burst is too large for the application to handle, the _Activator_ service will be placed in the request path to protect the revision and optimize request load balancing. The Activator service is responsible for receiving and buffering requests for inactive revisions, or for revisions where a traffic burst is larger than the limits of what can be handled without buffering for that revision. It can also quickly spin up additional pods for capacity, and throttle how quickly requests are sent to pods. Target burst capacity can be configured using a combination of the following parameters: -- Setting the targeted concurrency limits for the revision. See [concurrency](../../serving/autoscaling/concurrency). -- Setting the target utilization parameters. See [target utilization](../../serving/autoscaling/concurrency#target-utilization). +- Setting the targeted concurrency limits for the revision. See [concurrency](../autoscaling/concurrency.md). +- Setting the target utilization parameters. See [target utilization](../autoscaling/concurrency.md#target-utilization). - Setting the target burst capacity. You can configure target burst capacity using the `autoscaling.knative.dev/targetBurstCapacity` annotation key in the `config-autoscaler` ConfigMap. See [Setting the target burst capacity](#setting-the-target-burst-capacity). ## Setting the target burst capacity @@ -64,7 +64,7 @@ Target burst capacity can be configured using a combination of the following par - If `autoscaling.knative.dev/targetBurstCapacity` is set to `0`, the Activator is only added to the request path during scale from zero scenarios, and ingress load balancing will be applied. !!! note - Ingress gateway load balancing requires additional configuration. For more information about load balancing using an ingress gateway, see the [Serving API](../../reference/api/serving-api) documentation. + Ingress gateway load balancing requires additional configuration. For more information about load balancing using an ingress gateway, see the [Serving API](../../reference/api/serving-api.md) documentation. - If `autoscaling.knative.dev/targetBurstCapacity` is set to `-1`, the Activator is always in the request path, regardless of the revision size. diff --git a/docs/serving/samples/README.md b/docs/serving/samples/README.md index fb2718b6f..d701f21de 100644 --- a/docs/serving/samples/README.md +++ b/docs/serving/samples/README.md @@ -3,18 +3,18 @@ Use the following code samples to help you understand the various Knative Serving resources and how they can be applied across common use cases. -[**See all Knative code samples**](../../samples) +[**See all Knative code samples**](../../samples.md) | Name | Description | Languages | | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| Hello World | A quick introduction that highlights how to deploy an app using Knative Serving. | [C#](hello-world/helloworld-csharp/), [Go](hello-world/helloworld-go/), [Java (Spark)](hello-world/helloworld-java-spark/), [Java (Spring)](hello-world/helloworld-java-spring/), [Kotlin](hello-world/helloworld-kotlin/), [Node.js](hello-world/helloworld-nodejs/), [PHP](hello-world/helloworld-php/), [Python](hello-world/helloworld-python/), [Ruby](hello-world/helloworld-ruby/), [Scala](hello-world/helloworld-scala/), [Shell](hello-world/helloworld-shell/) | -| Cloud Events | A quick introduction that highlights how to send and receive Cloud Events. | [C#](cloudevents/cloudevents-dotnet/), [Go](cloudevents/cloudevents-go/), [Node.js](cloudevents/cloudevents-nodejs/), [Rust](cloudevents/cloudevents-rust/), [Java (Vert.x)](cloudevents/cloudevents-vertx/) | -| Advanced Deployment | Simple blue/green-like application deployment pattern illustrating the process of updating a live application without dropping any traffic. | [YAML](blue-green-deployment) | -| Autoscale | A demonstration of the autoscaling capabilities of Knative. | [Go](../autoscaling/autoscale-go/) | -| Github Webhook | A simple webhook handler that demonstrates interacting with Github. | [Go](gitwebhook-go/) | -| gRPC | A simple gRPC server. | [Go](grpc-ping-go/) | -| Knative Routing | An example of mapping multiple Knative services to different paths under a single domain name using the Istio VirtualService concept. | [Go](knative-routing-go/) | -| Knative Secrets | A simple app that demonstrates how to use a Kubernetes secret as a Volume in Knative. | [Go](secrets-go/) | -| REST API | A simple Restful service that exposes an endpoint defined by an environment variable described in the Knative Configuration. | [Go](rest-api-go/) | -| Traffic Splitting | This samples builds off the [Creating a RESTful Service](rest-api-go) sample to illustrate applying a revision, then using that revision for manual traffic splitting. | [YAML](traffic-splitting/) | -| Multi Container | A quick introduction that highlights how to build and deploy an app using Knative Serving for multiple containers. | [Go](multi-container/) | +| Hello World | A quick introduction that highlights how to deploy an app using Knative Serving. | [C#](hello-world/helloworld-csharp/), [Go](hello-world/helloworld-go/README.md), [Java (Spark)](hello-world/helloworld-java-spark/README.md), [Java (Spring)](hello-world/helloworld-java-spring/README.md), [Kotlin](hello-world/helloworld-kotlin/README.md), [Node.js](hello-world/helloworld-nodejs/README.md), [PHP](hello-world/helloworld-php/README.md), [Python](hello-world/helloworld-python/README.md), [Ruby](hello-world/helloworld-ruby/README.md), [Scala](hello-world/helloworld-scala/README.md), [Shell](hello-world/helloworld-shell/README.md) | +| Cloud Events | A quick introduction that highlights how to send and receive Cloud Events. | [C#](cloudevents/cloudevents-dotnet/README.md), [Go](cloudevents/cloudevents-go/README.md), [Node.js](cloudevents/cloudevents-nodejs/README.md), [Rust](cloudevents/cloudevents-rust/README.md), [Java (Vert.x)](cloudevents/cloudevents-vertx/README.md) | +| Advanced Deployment | Simple blue/green-like application deployment pattern illustrating the process of updating a live application without dropping any traffic. | [YAML](../../developer/serving/traffic-management.md#routing-and-managing-traffic-with-bluegreen-deployment) | +| Autoscale | A demonstration of the autoscaling capabilities of Knative. | [Go](../autoscaling/autoscale-go/README.md) | +| Github Webhook | A simple webhook handler that demonstrates interacting with Github. | [Go](gitwebhook-go/README.md) | +| gRPC | A simple gRPC server. | [Go](grpc-ping-go/README.md) | +| Knative Routing | An example of mapping multiple Knative services to different paths under a single domain name using the Istio VirtualService concept. | [Go](knative-routing-go/README.md) | +| Knative Secrets | A simple app that demonstrates how to use a Kubernetes secret as a Volume in Knative. | [Go](secrets-go/README.md) | +| REST API | A simple Restful service that exposes an endpoint defined by an environment variable described in the Knative Configuration. | [Go](rest-api-go/README.md) | +| Traffic Splitting | This samples builds off the [Creating a RESTful Service](rest-api-go) sample to illustrate applying a revision, then using that revision for manual traffic splitting. | [YAML](../../developer/serving/traffic-management.md) | +| Multi Container | A quick introduction that highlights how to build and deploy an app using Knative Serving for multiple containers. | [Go](multi-container/README.md) | diff --git a/docs/serving/samples/cloudevents/cloudevents-dotnet/README.md b/docs/serving/samples/cloudevents/cloudevents-dotnet/README.md index 9583faea7..f5243ba6d 100644 --- a/docs/serving/samples/cloudevents/cloudevents-dotnet/README.md +++ b/docs/serving/samples/cloudevents/cloudevents-dotnet/README.md @@ -27,7 +27,7 @@ cd knative-docs/docs/serving/samples/cloudevents/cloudevents-dotnet ## Before you begin - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/) if you need to + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md) if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/cloudevents/cloudevents-go/README.md b/docs/serving/samples/cloudevents/cloudevents-go/README.md index 9c9633b64..c3e3ccaef 100644 --- a/docs/serving/samples/cloudevents/cloudevents-go/README.md +++ b/docs/serving/samples/cloudevents/cloudevents-go/README.md @@ -27,7 +27,7 @@ cd knative-docs/docs/serving/samples/cloudevents/cloudevents-go ## Before you begin - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/) if you need to + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md) if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/cloudevents/cloudevents-nodejs/README.md b/docs/serving/samples/cloudevents/cloudevents-nodejs/README.md index 499ba291a..dc5f0b48a 100644 --- a/docs/serving/samples/cloudevents/cloudevents-nodejs/README.md +++ b/docs/serving/samples/cloudevents/cloudevents-nodejs/README.md @@ -27,7 +27,7 @@ cd knative-docs/docs/serving/samples/cloudevents/cloudevents-nodejs ## Before you begin - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/) if you need to + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md) if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/cloudevents/cloudevents-rust/README.md b/docs/serving/samples/cloudevents/cloudevents-rust/README.md index 8dfec316b..dc60a8690 100644 --- a/docs/serving/samples/cloudevents/cloudevents-rust/README.md +++ b/docs/serving/samples/cloudevents/cloudevents-rust/README.md @@ -29,7 +29,7 @@ cd knative-docs/docs/serving/samples/cloudevents/cloudevents-rust ## Before you begin - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/) if you need to + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md)if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/cloudevents/cloudevents-spring/README.md b/docs/serving/samples/cloudevents/cloudevents-spring/README.md index 3e5208ce7..111d9767e 100644 --- a/docs/serving/samples/cloudevents/cloudevents-spring/README.md +++ b/docs/serving/samples/cloudevents/cloudevents-spring/README.md @@ -29,7 +29,7 @@ cd knative-docs/docs/serving/samples/cloudevents/cloudevents-spring ## Before you begin - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/) if you need to + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md) if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/cloudevents/cloudevents-vertx/README.md b/docs/serving/samples/cloudevents/cloudevents-vertx/README.md index 7303bb3da..56ce8acba 100644 --- a/docs/serving/samples/cloudevents/cloudevents-vertx/README.md +++ b/docs/serving/samples/cloudevents/cloudevents-vertx/README.md @@ -29,7 +29,7 @@ cd knative-docs/docs/serving/samples/cloudevents/cloudevents-vertx ## Before you begin - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/) if you need to + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md) if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/gitwebhook-go/README.md b/docs/serving/samples/gitwebhook-go/README.md index e9793ca56..f5b9eee65 100644 --- a/docs/serving/samples/gitwebhook-go/README.md +++ b/docs/serving/samples/gitwebhook-go/README.md @@ -11,7 +11,7 @@ You must meet the following requirements to run this sample: [Google Domains](https://domains.google/). - A Kubernetes cluster running with the following: - Knative Serving must be installed. For details about setting up a Knative - cluster, see the [installation guides](../../../install/). + cluster, see the [installation guide](../../../admin/install/serving/install-serving-with-yaml.md). - Your Knative cluster must be [configured to use your custom domain](../../using-a-custom-domain.md). - You must ensure that your Knative cluster uses a static IP address refer to your provider's documentation. diff --git a/docs/serving/samples/grpc-ping-go/README.md b/docs/serving/samples/grpc-ping-go/README.md index 25e9535e2..91e469a7d 100644 --- a/docs/serving/samples/grpc-ping-go/README.md +++ b/docs/serving/samples/grpc-ping-go/README.md @@ -11,7 +11,7 @@ for production containers. ## Prerequisites -- [Install the latest version of Knative Serving](../../../install/). +- [Install the latest version of Knative Serving](../../../admin/install/serving/install-serving-with-yaml.md). - Install [docker](https://www.docker.com/). diff --git a/docs/serving/samples/hello-world/helloworld-csharp/README.md b/docs/serving/samples/hello-world/helloworld-csharp/README.md index 52fc3100f..9c311e60f 100644 --- a/docs/serving/samples/hello-world/helloworld-csharp/README.md +++ b/docs/serving/samples/hello-world/helloworld-csharp/README.md @@ -16,7 +16,7 @@ cd knative-docs/docs/serving/samples/hello-world/helloworld-csharp ## Before you begin - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/) if you need to + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md) if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/hello-world/helloworld-go/README.md b/docs/serving/samples/hello-world/helloworld-go/README.md index 2c71bcf36..80d6fac52 100644 --- a/docs/serving/samples/hello-world/helloworld-go/README.md +++ b/docs/serving/samples/hello-world/helloworld-go/README.md @@ -8,7 +8,8 @@ If `TARGET` is not specified, `World` is used as the default value. ## Prerequisites You will need: -- A Kubernetes cluster with [Knative installed and DNS configured](../../../../install/). + +- A Kubernetes cluster with [Knative installed and DNS configured](../../../../admin/install/serving/install-serving-with-yaml.md). - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured. - Optional: You can use the Knative CLI client [`kn`](https://github.com/knative/client/releases) to simplify resource creation and deployment. Alternatively, you can use `kubectl` to apply resource files directly. diff --git a/docs/serving/samples/hello-world/helloworld-java-spark/README.md b/docs/serving/samples/hello-world/helloworld-java-spark/README.md index 73fbe0f54..196a7feba 100644 --- a/docs/serving/samples/hello-world/helloworld-java-spark/README.md +++ b/docs/serving/samples/hello-world/helloworld-java-spark/README.md @@ -7,7 +7,8 @@ This guide describes the steps required to to create the `helloworld-java` sampl ## Prerequisites You will need: -- A Kubernetes cluster with [Knative installed and DNS configured](../../../../install/). + +- A Kubernetes cluster with [Knative installed and DNS configured](../../../../admin/install/serving/install-serving-with-yaml.md). - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured. - [Java SE 8 or later JDK](http://www.oracle.com/technetwork/java/javase/downloads/index.html). diff --git a/docs/serving/samples/hello-world/helloworld-java-spring/README.md b/docs/serving/samples/hello-world/helloworld-java-spring/README.md index 6e573f048..93c44aa31 100644 --- a/docs/serving/samples/hello-world/helloworld-java-spring/README.md +++ b/docs/serving/samples/hello-world/helloworld-java-spring/README.md @@ -14,7 +14,7 @@ cd knative-docs/docs/serving/samples/hello-world/helloworld-java-spring ## Prerequisites - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/). + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md). - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured. - Optional. The Knative CLI client [`kn`](https://github.com/knative/client/releases) can be used to simplify the deployment. Alternatively, you can use `kubectl` to apply YAML resource files. diff --git a/docs/serving/samples/hello-world/helloworld-kotlin/README.md b/docs/serving/samples/hello-world/helloworld-kotlin/README.md index c41def7ad..456587782 100644 --- a/docs/serving/samples/hello-world/helloworld-kotlin/README.md +++ b/docs/serving/samples/hello-world/helloworld-kotlin/README.md @@ -16,7 +16,7 @@ cd knative-docs/docs/serving/samples/hello-world/helloworld-kotlin ## Before you begin - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/) if you need to + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md) if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/hello-world/helloworld-nodejs/README.md b/docs/serving/samples/hello-world/helloworld-nodejs/README.md index 1502b9622..0e7d7e4ad 100644 --- a/docs/serving/samples/hello-world/helloworld-nodejs/README.md +++ b/docs/serving/samples/hello-world/helloworld-nodejs/README.md @@ -16,7 +16,7 @@ cd knative-docs/docs/serving/samples/hello-world/helloworld-nodejs ## Before you begin - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/) if you need to + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md) if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/hello-world/helloworld-php/README.md b/docs/serving/samples/hello-world/helloworld-php/README.md index 1a33c1861..5f7d68fe8 100644 --- a/docs/serving/samples/hello-world/helloworld-php/README.md +++ b/docs/serving/samples/hello-world/helloworld-php/README.md @@ -16,7 +16,7 @@ cd knative-docs/docs/serving/samples/hello-world/helloworld-php ## Before you begin - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/) if you need to + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md) if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/hello-world/helloworld-python/README.md b/docs/serving/samples/hello-world/helloworld-python/README.md index fb05cbcae..510f3544b 100644 --- a/docs/serving/samples/hello-world/helloworld-python/README.md +++ b/docs/serving/samples/hello-world/helloworld-python/README.md @@ -18,7 +18,7 @@ cd knative-docs/docs/serving/samples/hello-world/helloworld-python ## Prerequisites - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/). + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md). - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured. - (optional) The Knative CLI client diff --git a/docs/serving/samples/hello-world/helloworld-ruby/README.md b/docs/serving/samples/hello-world/helloworld-ruby/README.md index 7ac017359..52d712b3a 100644 --- a/docs/serving/samples/hello-world/helloworld-ruby/README.md +++ b/docs/serving/samples/hello-world/helloworld-ruby/README.md @@ -16,7 +16,7 @@ cd knative-docs/docs/serving/samples/hello-world/helloworld-ruby ## Prerequisites - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/). + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md). - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured. - (optional) The Knative CLI client [kn](https://github.com/knative/client/releases) that simplifies the deployment. Alternative you can also use [`kubectl`](https://kubernetes.io/docs/tasks/tools/install-kubectl/) and apply resource files directly. diff --git a/docs/serving/samples/hello-world/helloworld-scala/README.md b/docs/serving/samples/hello-world/helloworld-scala/README.md index 988242ecc..26b855c60 100644 --- a/docs/serving/samples/hello-world/helloworld-scala/README.md +++ b/docs/serving/samples/hello-world/helloworld-scala/README.md @@ -17,7 +17,7 @@ cd knative-docs/docs/serving/samples/hello-world/helloworld-scala ## Before you begin -- A Kubernetes cluster [installation](../../../../install/) with +- A Kubernetes cluster [installation](../../../../admin/install/serving/install-serving-with-yaml.md) with Knative Serving up and running. - [Docker](https://www.docker.com) installed locally, and running, optionally a Docker Hub account configured or some other Docker Repository installed diff --git a/docs/serving/samples/hello-world/helloworld-shell/README.md b/docs/serving/samples/hello-world/helloworld-shell/README.md index 661eac189..cc98d62cd 100644 --- a/docs/serving/samples/hello-world/helloworld-shell/README.md +++ b/docs/serving/samples/hello-world/helloworld-shell/README.md @@ -17,7 +17,7 @@ cd knative-docs/docs/serving/samples/hello-world/helloworld-shell ## Prerequisites - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../../install/). + [installation instructions](../../../../admin/install/serving/install-serving-with-yaml.md). - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured. - Optional: You can use the Knative CLI client [`kn`](https://github.com/knative/client/releases) to simplify resource creation and deployment. Alternatively, you can use `kubectl` to apply resource files directly. diff --git a/docs/serving/samples/knative-routing-go/README.md b/docs/serving/samples/knative-routing-go/README.md index 5cd4bc800..03ca3b835 100644 --- a/docs/serving/samples/knative-routing-go/README.md +++ b/docs/serving/samples/knative-routing-go/README.md @@ -15,7 +15,7 @@ the Login service. ## Prerequisites -1. A Kubernetes cluster with [Knative Serving](../../../install/) +1. A Kubernetes cluster with [Knative Serving](../../../admin/install/serving/install-serving-with-yaml.md) installed. 2. Install [Docker](https://docs.docker.com/get-started/#prepare-your-docker-environment). diff --git a/docs/serving/samples/multi-container/README.md b/docs/serving/samples/multi-container/README.md index 752a35fb2..608a04289 100644 --- a/docs/serving/samples/multi-container/README.md +++ b/docs/serving/samples/multi-container/README.md @@ -5,7 +5,7 @@ A simple web app written in Go that you can use for multi container testing. ## Prerequisites - A Kubernetes cluster with Knative installed and DNS configured. Follow the - [installation instructions](../../../install/) if you need to + [installation instructions](../../../admin/install/serving/install-serving-with-yaml.md) if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/rest-api-go/README.md b/docs/serving/samples/rest-api-go/README.md index 81e50e847..7f9252cc6 100644 --- a/docs/serving/samples/rest-api-go/README.md +++ b/docs/serving/samples/rest-api-go/README.md @@ -7,7 +7,7 @@ like `AAPL`,`AMZN`, `GOOG`, `MSFT`, etc. ## Prerequisites -1. A Kubernetes cluster with [Knative Serving](../../../install/) installed +1. A Kubernetes cluster with [Knative Serving](../../../admin/install/serving/install-serving-with-yaml.md) installed and DNS configured. 1. [Docker](https://docs.docker.com/get-started/#prepare-your-docker-environment) installed locally. diff --git a/docs/serving/samples/secrets-go/README.md b/docs/serving/samples/secrets-go/README.md index eb329cda7..ebe853ea8 100644 --- a/docs/serving/samples/secrets-go/README.md +++ b/docs/serving/samples/secrets-go/README.md @@ -17,7 +17,7 @@ cd knative-docs/docs/serving/samples/secrets-go ## Before you begin - A Kubernetes cluster with Knative installed. Follow the - [installation instructions](../../../install/) if you need to create + [installation instructions](../../../admin/install/serving/install-serving-with-yaml.md) if you need to create one. - [Docker](https://www.docker.com) installed and running on your local machine, and a Docker Hub account configured (we'll use it for a container registry). diff --git a/docs/serving/samples/tag-header-based-routing/README.md b/docs/serving/samples/tag-header-based-routing/README.md index 4b32a5bcf..650bfad5c 100644 --- a/docs/serving/samples/tag-header-based-routing/README.md +++ b/docs/serving/samples/tag-header-based-routing/README.md @@ -10,16 +10,16 @@ the same URL of Knative Service. To do this, you must set the specific header `K Currently Istio, Contour and Kourier ingress support this feature. -## Prerequestie +## Prerequisites 1. A Knative cluster that has an ingress controller installed with Knative v0.16 and later. 1. Move into the docs directory: -```bash -cd $GOPATH/src/github.com/knative/docs -``` + ```bash + cd $GOPATH/src/github.com/knative/docs + ``` ## Enabling tag header based routing @@ -31,7 +31,7 @@ kubectl patch cm config-features -n knative-serving -p '{"data":{"tag-header-bas ## Build images -Follow the instructions in [helloworld-go](../hello-world/helloworld-go) to build the `helloworld` image and upload it +Follow the instructions in [helloworld-go](../hello-world/helloworld-go/README.md) to build the `helloworld` image and upload it to your container repository. Replace `{username}` in the [sample.yaml](sample.yaml) with your Docker Hub username. diff --git a/docs/serving/using-a-custom-domain.md b/docs/serving/using-a-custom-domain.md index 26e068512..ed747db50 100644 --- a/docs/serving/using-a-custom-domain.md +++ b/docs/serving/using-a-custom-domain.md @@ -78,7 +78,7 @@ You can also apply an updated domain configuration: > If you have an existing deployment, Knative reconciles the change made to the ConfigMap, and automatically updates the host name for all of the deployed Services and Routes. Deploy an app (for example, -[`helloworld-go`](samples/hello-world/helloworld-go/)), to your +[`helloworld-go`](samples/hello-world/helloworld-go/README.md)), to your cluster as normal. You can retrieve the URL in Knative Route "helloworld-go" with the following command: @@ -126,12 +126,6 @@ quick checks. Follow these steps to make your domain publicly accessible: -### Set static IP for Knative Gateway - -You might want to -[set a static IP for your Knative gateway](gke-assigning-static-ip-address), -so that the gateway IP does not change each time your cluster is restarted. - ### Update your DNS records To publish your domain, you need to update your DNS provider to point to the IP diff --git a/docs/serving/using-a-tls-cert.md b/docs/serving/using-a-tls-cert.md index 174f83831..94ba418ed 100644 --- a/docs/serving/using-a-tls-cert.md +++ b/docs/serving/using-a-tls-cert.md @@ -50,7 +50,7 @@ use and configure your certificate issuer to use the You must meet the following requirements to enable secure HTTPS connections: - Knative Serving must be installed. For details about installing the Serving - component, see the [Knative installation guides](../install/). + component, see the [Knative installation guides](../admin/install/serving/install-serving-with-yaml.md). - You must configure your Knative cluster to use a [custom domain](using-a-custom-domain.md). @@ -259,10 +259,6 @@ follow the steps in the relevant tab to manually add a certificate: In this example, `TLS_HOSTS` represents the hosts of your TLS certificate. It can be a single host, multiple hosts, or a wildcard host. For detailed instructions, please refer [Istio documentation](https://istio.io/latest/docs/tasks/traffic-management/ingress/secure-ingress/) - - - - ## What's next: After your changes are running on your Knative cluster, you can begin using the diff --git a/docs/serving/using-auto-tls.md b/docs/serving/using-auto-tls.md index 2d7f0cbfc..29b6bead3 100644 --- a/docs/serving/using-auto-tls.md +++ b/docs/serving/using-auto-tls.md @@ -3,20 +3,20 @@ If you install and configure cert-manager, you can configure Knative to automatically obtain new TLS certificates and renew existing ones for Knative Services. To learn more about using secure connections in Knative, see -[Configuring HTTPS with TLS certificates](../using-a-tls-cert). +[Configuring HTTPS with TLS certificates](using-a-tls-cert.md). ## Before you begin The following must be installed on your Knative cluster: -- [Knative Serving](../../../admin/install/). -- A Networking layer such as Kourier, Istio with SDS v1.3 or higher, Contour v1.1 or higher, or Gloo v0.18.16 or higher. See [Install a networking layer](../../../admin/install/install-serving-with-yaml#install-a-networking-layer) or [Istio with SDS, version 1.3 or higher](../../../admin/install/installing-istio#installing-istio-with-SDS-to-secure-the-ingress-gateway). +- [Knative Serving](../admin/install/serving/install-serving-with-yaml.md). +- A Networking layer such as Kourier, Istio with SDS v1.3 or higher, Contour v1.1 or higher, or Gloo v0.18.16 or higher. See [Install a networking layer](../admin/install/serving/install-serving-with-yaml.md#install-a-networking-layer) or [Istio with SDS, version 1.3 or higher](../admin/install/installing-istio.md#installing-istio-with-SDS-to-secure-the-ingress-gateway). !!! note Currently, [Ambassador](https://github.com/datawire/ambassador) is unsupported for use with Auto TLS. -- [`cert-manager` version `1.0.0` or higher](../installing-cert-manager). -- Your Knative cluster must be configured to use a [custom domain](../using-a-custom-domain). +- [`cert-manager` version `1.0.0` or higher](installing-cert-manager.md). +- Your Knative cluster must be configured to use a [custom domain](using-a-custom-domain.md). - Your DNS provider must be setup and configured to your domain. - If you want to use HTTP-01 challenge, you need to configure your custom domain to map to the IP of ingress. You can achieve this by adding a DNS A record to map the domain to the IP according to the instructions of your DNS provider.