Skip to content
Merged
Show file tree
Hide file tree
Changes from 30 commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
616d748
Admin and Install docs
iRaindrop Sep 26, 2025
0dd8ca6
Update admin-overview.md
iRaindrop Sep 26, 2025
07f0603
Update admin-overview.md
iRaindrop Sep 29, 2025
d4520ee
Update admin-overview.md
iRaindrop Sep 29, 2025
7a6e659
Update admin-overview.md
iRaindrop Sep 30, 2025
9ae7119
Update admin-overview.md
iRaindrop Sep 30, 2025
98305ae
Update admin-overview.md
iRaindrop Sep 30, 2025
27f6603
Update admin-overview.md
iRaindrop Sep 30, 2025
7ea43dd
Rebuild attempt
iRaindrop Sep 30, 2025
e5f2397
Update admin-overview.md
iRaindrop Oct 1, 2025
24a8160
Update admin-overview.md
iRaindrop Oct 1, 2025
ff0aee6
Update admin-overview.md
iRaindrop Oct 1, 2025
f10feed
Update admin-overview.md
iRaindrop Oct 2, 2025
4eb34b8
Update admin-overview.md
iRaindrop Oct 3, 2025
bd968dd
Update admin-overview.md
iRaindrop Oct 3, 2025
718c280
Update admin-overview.md
iRaindrop Oct 4, 2025
94ca152
Update admin-overview.md
iRaindrop Oct 5, 2025
36d81c2
Update admin-overview.md
iRaindrop Oct 6, 2025
01bcffb
Update admin-overview.md
iRaindrop Oct 6, 2025
d925a17
Update admin-overview.md
iRaindrop Oct 6, 2025
b8a76ea
Update admin-overview.md
iRaindrop Oct 6, 2025
8dc7ca6
Update admin-overview.md
iRaindrop Oct 6, 2025
cbce6fb
Update admin-overview.md
iRaindrop Oct 6, 2025
6fea983
Update admin-overview.md
iRaindrop Oct 6, 2025
6ce725f
Update admin-overview.md
iRaindrop Oct 7, 2025
221b573
Update admin-overview.md
iRaindrop Oct 9, 2025
0f4d62f
Merge branch 'main' into bh_admin-install-docs
iRaindrop Oct 9, 2025
31d22c4
Update .nav.yml
iRaindrop Oct 9, 2025
82445f0
Update admin-overview.md
iRaindrop Oct 9, 2025
0683ac0
Update admin-overview.md
iRaindrop Oct 9, 2025
5abf3b5
Moved install content from overview to install readme
iRaindrop Oct 9, 2025
f5471d8
Reviewer edits and misc
iRaindrop Oct 10, 2025
7bf0355
Wrapping up installation content
iRaindrop Oct 10, 2025
58c26ea
Update .nav.yml
iRaindrop Oct 10, 2025
9c622bb
Update .nav.yml
iRaindrop Oct 10, 2025
6034fe6
Update README.md
iRaindrop Oct 10, 2025
0051916
Update README.md
iRaindrop Oct 10, 2025
2d969a0
Update README.md
iRaindrop Oct 10, 2025
01dcd5e
Put admin install info back in overview
iRaindrop Oct 13, 2025
794f8fa
Update .nav.yml
iRaindrop Oct 13, 2025
b28fa41
Update admin-overview.md
iRaindrop Oct 13, 2025
ec47c75
Link fixes
iRaindrop Oct 13, 2025
ebda591
Update admin-overview.md
iRaindrop Oct 13, 2025
1d9250d
Update admin-overview.md
iRaindrop Oct 13, 2025
322c66d
Update admin-overview.md
iRaindrop Oct 13, 2025
eea866f
Processed reviewer edits
iRaindrop Oct 13, 2025
e3ef406
Formatting fixes
iRaindrop Oct 13, 2025
cbfcce6
Update admin-overview.md
iRaindrop Oct 13, 2025
af71cd0
Update admin-overview.md
iRaindrop Oct 14, 2025
596bab7
minor edit to rebuild
iRaindrop Oct 14, 2025
aa154d0
Update README.md
iRaindrop Oct 14, 2025
c608e5a
Update README.md
iRaindrop Oct 14, 2025
bbb6829
Merge branch 'main' into bh_admin-install-docs
iRaindrop Oct 14, 2025
1e41e00
Update docs/versioned/admin/admin-overview.md
iRaindrop Oct 14, 2025
e129a69
Update docs/versioned/admin/admin-overview.md
iRaindrop Oct 14, 2025
a39a442
Update docs/versioned/admin/admin-overview.md
iRaindrop Oct 14, 2025
d0c2a87
Update docs/versioned/admin/admin-overview.md
iRaindrop Oct 14, 2025
431fcf8
Update docs/versioned/admin/admin-overview.md
iRaindrop Oct 14, 2025
9f251eb
Update docs/versioned/install/README.md
iRaindrop Oct 14, 2025
d266c9f
Processed reviewer edits
iRaindrop Oct 14, 2025
58deddc
Update README.md
iRaindrop Oct 14, 2025
3d2afae
Copy edits and helpful links
iRaindrop Oct 15, 2025
0cf79c7
Delete README.md
iRaindrop Oct 15, 2025
7fce951
Update docs/versioned/install/README.md
iRaindrop Oct 16, 2025
52921ba
Update docs/versioned/admin/admin-overview.md
iRaindrop Oct 16, 2025
41227bb
Update docs/versioned/admin/admin-overview.md
iRaindrop Oct 16, 2025
5511678
Update docs/versioned/admin/admin-overview.md
iRaindrop Oct 16, 2025
63dd0ee
Update docs/versioned/admin/admin-overview.md
iRaindrop Oct 16, 2025
20b6e2c
Update docs/versioned/install/README.md
iRaindrop Oct 16, 2025
266a627
Update docs/versioned/install/README.md
iRaindrop Oct 16, 2025
42c61a7
Update admin-overview.md
iRaindrop Oct 16, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/versioned/.nav.yml
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,7 @@ nav:
# Administration
###############################################################################
- Administration:
- Overview: administer/README.md
- Overview: admin/admin-overview.md
- Installing Knative:
- Overview: install/README.md
# YAML Installation
Expand Down
80 changes: 80 additions & 0 deletions docs/versioned/admin/admin-overview.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
---
audience: administrator
components:
- serving
- eventing
function: reference
---
# Overview

This page provides guidance for administrators on how to install and manage Knative on an existing Kubernetes cluster. It assumes you are familiar with the following:

- Kubernetes and Kubernetes administration.
- The `kubectl` CLI tool. You can use existing Kubernetes management tools (policy, quota, etc) to manage Knative workloads.
- Cloud Native Computing Foundation (CNCF) projects such as Prometheus, Istio, and Strimzi, many of which can be used alongside Knative.
- You should have cluster-admin permissions or equivalent to to install software and manage resources in all clusters in the namespace. For information about permissions, see [Using RBAC Authorization](https://kubernetes.io/docs/reference/access-authn-authz/rbac/AC)

To simplify Knative installation and administration, you can use the Knative operator and the Knative CLI tool, but they are not required. Essentially, Knative aims to extend Kubernetes, and build on existing capabilities where feasible.

Knative has three components, Eventing, Serving, and Functions. Severing and Eventing are installed into clusters, but not Functions. Functions does not require installation.

Serving and Eventing support multiple underlying transports plugins within the same cluster. Serving supports pods with pluggable network ingress routes, and Eventing supports pods with pluggable message transports (e.g. Kafka, RabbitMQ).

Knative has default lightweight messaging implementation if you don't already have a solution.

## Installing Knative

You install Knative using YAML files and other resources either aided or not by the Knative Operator. The Knative Operator is a custom controller that extends the Kubernetes API to install Knative components. It allows you to automate applying the content, along with patching the contents to customize them. You install the Knative Operator either by using the Knative CLI Operator Plugin or by using KS8 Manifests or by Yelm.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
You install Knative using YAML files and other resources either aided or not by the Knative Operator. The Knative Operator is a custom controller that extends the Kubernetes API to install Knative components. It allows you to automate applying the content, along with patching the contents to customize them. You install the Knative Operator either by using the Knative CLI Operator Plugin or by using KS8 Manifests or by Yelm.
You install Knative using YAML files and other resources either aided or not by the Knative Operator. The Knative Operator is a custom controller that extends the Kubernetes API to install Knative components. It enables you to automate applying the content and patching the contents to customize them. You install the Knative Operator either by using the Knative CLI Operator Plugin, or by using KS8 Manifests or Yelm.


For hardware prerequisites and information about installing the quickstart, see the [Installation Roadmap](/install/README.md).

Here are the considerations for installing using YAML or the Knative Operator:

| YAML-based install | Knative Operator install|
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| YAML-based install | Knative Operator install|
| YAML installation | Knative Operator |

| --- | --- |
| You can see exactly what you get. | You specify choices at a higher level. |
| You can adjust any parameters by editing them directly. | Not every setting is exposed. |
| If you make changes, you have to keep track of what you changed when you want to upgrade. | It's easy to separate your customizations from the base installation. |
| Version and audit control as YAML files are stored in a GitHub repository.| No version or audit control. |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This last one isn't quite right -- the KnativeServing and KnativeEventing resources could be stored under version control, and a YAML installation doesn't have to be stored in GitHub. (In fact, I'd probably suggest storing things in a git repository either way.) What about the following:

Suggested change
| Version and audit control as YAML files are stored in a GitHub repository.| No version or audit control. |
| Track and manage changes using existing YAML tooling. | Manage changes using Kubernetes resources. |


You can install Knative in the following ways:

- Use a [YAML-based installation](/install/yaml-install/README.md) with `kubectl`.

This option is the most useful if you're using delivery solutions such as Flux or ArgoCD to apply manifests checked into a Git repository. This is the lowest common denominator approach, giving you granular control of the process and resource definitions.

- Install the [Knative Operator](/install/operator/knative-with-operators.md) using Manifests or Yelm, and then use `kubectl` to install Knative components.

This option alleviates complexity by using the Knative Operator, while still enabling purpose-built manageability using popular tools. It also gives you a separation of the core Knative application definition and the ConfigMap and other changes you make.

- Install the [Knative Operator CLI plugin](/install/operator/knative-with-operator-cli.md) and install the Knative Operator and the Knative CLI `kn` to Knative components.

This is the easiest install option and suitable for using if customization is not a concern.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
This is the easiest install option and suitable for using if customization is not a concern.
This is the easiest install option, suitable if customization is not a concern.


The following table summarizes the options.

| Install option | Resources | kubectl CLI | kn CLI |
| --- | --- | --- | --- |
| YAML-based | All YAML prepared | Install components | not used |
| Knative Operator | Install Knative Operator using Manifests or Yelm |Install components | not used |
| Knative Operator | Install Knative Operator CLI plugin | not used | Install components |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This table is kind of weird, particularly since the previous table was column-major, but this one is row-major.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd probably drop this table, though the other table seemed informative.


Knative supports subsequent installs after the initial installation, you so your initial choices don't lock you in. For example, you can migrate from one message transport or network ingress to another without losing messages.

## Plugins

A Knative installation includes the following plugins:

Networking plugins

- Kourier (internal no-dependency option)
- Istio (service mesh)
- Courier (general-purpose ingress)
- Gateway API (beta)

Messaging plugins

- In-memory (internal no-dependency option)
- Kafka (in-order, high-thoughput but moderate complexity)
- RabbitMQ (configurable order, moderate throughput and complexity)
- NATS (low complexity)
Loading