Skip to content

Commit

Permalink
[release-0.14] Update the docs on operator for release 0.14 (knative#…
Browse files Browse the repository at this point in the history
…2429)

* Update the docs on operator for release 0.14

* Update the release 14 doc on operators

* Add the instruction on removing operators
  • Loading branch information
Vincent authored May 1, 2020
1 parent cc6d24a commit 20dba05
Showing 1 changed file with 109 additions and 26 deletions.
135 changes: 109 additions & 26 deletions docs/install/knative-with-operators.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ type: "docs"
Knative provides operators as tools to install, configure and manage Knative. This guide explains how to install and
uninstall Knative using Knative operators.

Each component in Knative has a separate operator for installation and configuration. This means that there is a [Serving operator](https://github.com/knative/serving-operator)
and an [Eventing operator](https://github.com/knative/eventing-operator), and you can choose to install one or both independently.
New in 0.14, Knative offers a [combined operator for managing both Serving and Eventing](https://github.com/knative-sandbox/operator). For release 0.14,
you may **alternatively** choose to install the [Serving operator](https://github.com/knative/serving-operator) and [Eventing operator](https://github.com/knative/eventing-operator) instead of the combined operator.

## Before you begin

Expand All @@ -25,10 +25,58 @@ Disk storage to at least 30 GB. If you have multiple nodes for your cluster, set

## Limitations of Knative Operators:

Knative Operators use custom resources (CRs) to configure your Knative deployment.
Knative Operators are still in Alpha phase. They have not been tested in a production environment, and should be used
for development or test purposes only.

- Currently, the CRs included with Knative Operators do not provide high availability (HA) capabilities.
- Knative Operators have not been tested in a production environment, and should be used for development or test purposes only.
## Option 1: Install Knative with combined operator

Knative has released a combined operator to install both Serving and Eventing components. You can find the information
about the releases on the [Releases page](https://github.com/knative-sandbox/operator/releases).

### Installing the combined Knative Operator

__From releases__:

Run the following command to install the combined Knative Operator:

```
kubectl apply -f https://github.com/knative-sandbox/operator/releases/download/v0.14.1/operator.yaml
```

__From source code__:

You can also install Knative Operators from source using `ko`.

1. Install the [ko](https://github.com/google/ko) build tool.
1. Download the source code using the following command:

```
git clone https://github.com/knative-sandbox/operator.git
```

1. Install the operator in the root directory of the source using the following command:

```
ko apply -f config/
```

The combined operator installs both Serving and Eventing operators. Go through the following sections to verify your operator:

- [Verify Knative Serving Operator](#verify-the-operator-installation)
- [Verify Knative Eventing Operator](#verify-the-operator-installation-1)

Install Knative Serving and Eventing with Operator CRs:

- [Install Knative Serving](#installing-the-knative-serving-component)
- [Install Knative Eventing](#installing-the-knative-eventing-component)

## Option 2: Install Knative with separate operators

Alternatively, if you would like to install Knative Serving and Knative Eventing Operators separately, go through the
following sections:

- [Install Knative Serving using Operator](#installing-the-knative-serving-operator)
- [Install Knative Eventing using Operator](#installing-the-knative-serving-operator)

## Install Knative Serving with Operator:

Expand All @@ -38,18 +86,23 @@ Information about Knative Serving Operator releases can be found on the [Release

__From releases__:

Replace \<version\> with the latest version or the version you would like to install, and run the following command to
install Knative Serving Operator:
Run the following command to install Knative Serving Operator:

```
kubectl apply -f https://github.com/knative/serving-operator/releases/download/<version>/serving-operator.yaml
kubectl apply -f https://github.com/knative/serving-operator/releases/download/v0.14.0/serving-operator.yaml
```

__From source code__:

You can also install Knative Operators from source using `ko`.

1. Install the [ko](https://github.com/google/ko) build tool.
1. Download the source code using the following command:

```
git clone https://github.com/knative/serving-operator.git
```

1. Install the operator in the root directory of the source using the following command:

```
Expand Down Expand Up @@ -125,18 +178,23 @@ Information about Knative Eventing Operator releases can be found on the [Releas

__From releases__:

Replace \<version\> with the latest version or the version you would like to install, and run the following command to
install Knative Eventing Operator:
Run the following command to install Knative Eventing Operator:

```
kubectl apply -f https://github.com/knative/eventing-operator/releases/download/<version>/eventing-operator.yaml
kubectl apply -f https://github.com/knative/eventing-operator/releases/download/v0.14.1/eventing-operator.yaml
```

__From source code__:

You can also install Knative Operators from source using `ko`.

1. Install the [ko](https://github.com/google/ko) build tool.
1. Download the source code using the following command:

```
git clone https://github.com/knative/eventing-operator.git
```

1. Install the operator in the root directory of the source using the following command:

```
Expand Down Expand Up @@ -205,6 +263,20 @@ imc-dispatcher 1/1 1 1 42h

## Uninstall Knative

Follow the following sections to remove Knative components:

- [Remove Knative Serving](#removing-the-knative-serving-component)
- [Remove Knative Eventing](#removing-the-knative-eventing-component)

If you install the combined Knative Operator, go to the following section to uninstall it:

- [Remove combined Knative Operator](#removing-the-combined-knative-operator)

If you install the separate Knative Operators, follow the following sections to uninstall them:

- [Remove Knative Serving Operator](#removing-the-knative-serving-operator)
- [Remove Knative Eventing Operator](#removing-the-knative-eventing-operator)

### Removing the Knative Serving component

Remove the Knative Serving CR:
Expand All @@ -217,44 +289,55 @@ Knative Serving operator prevents unsafe removal of Knative serving resources. E
removed, all the CRDs in Knative Serving are still kept in the cluster. All your resources relying on Knative CRDs
can still work.

### Removing the Knative Serving Operator:
### Removing the Knative Eventing component

If you have installed Knative Serving using the Release page, remove the operator using the following command:
Remove the Knative Eventing CR:

```
kubectl delete -f https://github.com/knative/serving-operator/releases/download/<version>/serving-operator.yaml
kubectl delete KnativeEventing knative-eventing -n knative-eventing
```

Replace <version> with the version number of Knative Serving you have installed.
Knative Eventing operator also prevents unsafe removal of Knative Eventing resources by keeping the Knative Eventing CRDs.

If you have installed Knative Serving from source, uninstall it using the following command while in the root directory
### Removing the combined Knative Operator:

If you have installed the combined Knative Operator using the Release page, remove the operator using the following command:

```
kubectl delete -f https://github.com/knative-sandbox/operator/releases/download/v0.14.1/operator.yaml
```

If you have installed it from the source, uninstall it using the following command while in the root directory
for the source:

```
ko delete -f config/
```

### Removing Knative Eventing component
### Removing the Knative Serving Operator:

Remove the Knative Eventing CR:
If you have installed Knative Serving Operator using the Release page, remove the operator using the following command:

```
kubectl delete KnativeEventing knative-eventing -n knative-eventing
kubectl delete -f https://github.com/knative/serving-operator/releases/download/v0.14.0/serving-operator.yaml
```

Knative Eventing operator also prevents unsafe removal of Knative Eventing resources by keeping the Knative Eventing CRDs.
If you have installed Knative Serving Operator from source, uninstall it using the following command while in the root directory
for the source:

### Removing Knative Eventing Operator:
```
ko delete -f config/
```

### Removing the Knative Eventing Operator:

If you have installed Knative Eventing using the Release page, remove the operator using the following command:
If you have installed Knative Eventing Operator using the Release page, remove the operator using the following command:

```
kubectl delete -f https://github.com/knative/eventing-operator/releases/download/<version>/eventing-operator.yaml
kubectl delete -f https://github.com/knative/eventing-operator/releases/download/v0.14.1/eventing-operator.yaml
```

Replace <version> with the version number of Knative Eventing you have installed.

If you have installed Knative Eventing from source, uninstall it using the following command while in the root directory
If you have installed Knative Eventing Operator from source, uninstall it using the following command while in the root directory
for the source:

```
Expand Down

0 comments on commit 20dba05

Please sign in to comment.