Skip to content

Commit

Permalink
update docs for new addons
Browse files Browse the repository at this point in the history
  • Loading branch information
AshleyDumaine committed Feb 20, 2024
1 parent 08d7b53 commit b3a3eff
Showing 1 changed file with 59 additions and 14 deletions.
73 changes: 59 additions & 14 deletions docs/book/src/topics/addons.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Overview

This section provides examples for addons for self-managed clusters.
This section documents addons for self-managed clusters.

```admonish note
Currently, all addons are installed via
Expand All @@ -12,37 +12,82 @@ For more information, please refer to the
[CAAPH Quick Start](https://github.com/kubernetes-sigs/cluster-api-addon-provider-helm/blob/main/docs/quick-start.md).
```

# CNI
```admonish note
The [Linode Cloud Controller Manager](#linode-cloud-controller-manager) and
[Linode Blockstorage CSI Driver](#linode-blockstorage-csi-driver) addons require the `ClusterResourceSet` feature flag
to be set on the management cluster.
```admonish warning
By default, the CNI plugin is not installed for self-managed clusters.
This feature flag is enabled by default in the KIND cluster created by `make tilt-cluster`.
To install a CNI, ensure that your `Cluster` is labeled with one of the below CNI options.
For more information, please refer to [the ClusterResourceSet page in The Cluster API Book](https://cluster-api.sigs.k8s.io/tasks/experimental-features/cluster-resource-set).
```

## Cilium

## Contents

<!-- TOC depthFrom:2 -->

- [CNI](#cni)
- [Cilium](#cilium)
- [CCM](#ccm)
- [Linode Cloud Controller Manager](#linode-cloud-controller-manager)
- [Container Storage](#container-storage)
- [Linode Blockstorage CSI Driver](#linode-blockstorage-csi-driver)

<!-- /TOC -->

## CNI

In order for pod networking to work properly, a Container Network Interface (CNI) must be installed.

### Cilium

```admonish success title=""
Installed by default
```

To install [Cilium](https://cilium.io/) on a self-managed cluster, simply apply the `cni: cilium`
label on the `Cluster` resource if not already present.

```bash
kubectl label cluster $CLUSTER_NAME cni=cilium
kubectl label cluster $CLUSTER_NAME cni=cilium --overwrite
```

Cilium will then be automatically installed via CAAPH into the labeled self-managed cluster.
Cilium will then be automatically installed via CAAPH into the labeled cluster.

# CCM
## CCM

In order for the `InternalIP` and `ExternalIP` of the provisioned Nodes to be set correctly,
the [linode-cloud-controller-manager (linode-ccm)](https://github.com/linode/linode-cloud-controller-manager)
must be installed into provisioned clusters.
a Cloud Controller Manager (CCM) must be installed.

### Linode Cloud Controller Manager

```admonish success title=""
Installed by default
```

To install the [linode-cloud-controller-manager (linode-ccm)](https://github.com/linode/linode-cloud-controller-manager)
on a self-managed cluster, simply apply the `ccm: linode`
label on the `Cluster` resource if not already present.

```bash
kubectl label cluster $CLUSTER_NAME ccm=linode --overwrite
```

The linode-ccm will then be automatically installed via CAAPH into the labeled cluster.

## Container Storage

In order for stateful workloads to create PersistentVolumes (PVs), a storage driver must be installed.

### Linode Blockstorage CSI Driver

To install the linode-ccm on a self-managed cluster, simply apply the `ccm: linode`
To install the [linode-blockstorage-csi-driver](https://github.com/linode/linode-blockstorage-csi-driver)
on a self-managed cluster, simply apply the `csi-driver: linode`
label on the `Cluster` resource if not already present.

```bash
kubectl label cluster $CLUSTER_NAME ccm=linode
kubectl label cluster $CLUSTER_NAME csi-driver=linode --overwrite
```

The linode-ccm will then be automatically installed via CAAPH into the labeled self-managed cluster.
The linode-blockstorage-csi-driver will then be automatically installed via CAAPH into the labeled cluster.

0 comments on commit b3a3eff

Please sign in to comment.