From 6357899ac716de1fff2a870c29d746c6bc0d5664 Mon Sep 17 00:00:00 2001 From: amold1 Date: Wed, 29 May 2024 09:50:54 -0400 Subject: [PATCH] [docs] Add docs for new flavors (#344) * Add docs for supported flavor matrix --- docs/src/topics/flavors/cluster-autoscaler.md | 8 ++-- docs/src/topics/flavors/dual-stack.md | 9 ++-- .../src/topics/flavors/etcd-backup-restore.md | 8 ++-- docs/src/topics/flavors/etcd-disk.md | 8 ++-- docs/src/topics/flavors/flavors.md | 43 +++++++++++++++++++ docs/src/topics/flavors/vpcless.md | 9 ++-- 6 files changed, 65 insertions(+), 20 deletions(-) diff --git a/docs/src/topics/flavors/cluster-autoscaler.md b/docs/src/topics/flavors/cluster-autoscaler.md index 14d776c9..fe470d63 100644 --- a/docs/src/topics/flavors/cluster-autoscaler.md +++ b/docs/src/topics/flavors/cluster-autoscaler.md @@ -5,9 +5,9 @@ Autoscaler](https://www.github.com/kubernetes/autoscaler/tree/master/cluster-aut ## Specification -| Control Plane | CNI | Default OS | Installs ClusterClass | IPv4 | IPv6 | -|---------------|--------|--------------|-----------------------|------|------| -| Kubeadm | Cilium | Ubuntu 22.04 | No | Yes | No | +| Supported Control Plane | CNI | Default OS | Installs ClusterClass | IPv4 | IPv6 | +|-------------------------|--------|--------------|-----------------------|------|------| +| kubeadm, k3s, rke2 | Cilium | Ubuntu 22.04 | No | Yes | Yes | ## Prerequisites @@ -34,7 +34,7 @@ Autoscaler](https://www.github.com/kubernetes/autoscaler/tree/master/cluster-aut clusterctl generate cluster test-cluster \ --kubernetes-version v1.29.1 \ --infrastructure linode-linode \ - --flavor cluster-autoscaler > test-cluster.yaml + --flavor -cluster-autoscaler > test-cluster.yaml ``` 3. Apply cluster yaml diff --git a/docs/src/topics/flavors/dual-stack.md b/docs/src/topics/flavors/dual-stack.md index 2565a53b..db2b5d53 100644 --- a/docs/src/topics/flavors/dual-stack.md +++ b/docs/src/topics/flavors/dual-stack.md @@ -1,8 +1,9 @@ # Dual-Stack ## Specification -| Control Plane | CNI | Default OS | Installs ClusterClass | IPv4 | IPv6 | -|---------------|--------|--------------|-----------------------|------|------| -| Kubeadm | Cilium | Ubuntu 22.04 | No | Yes | Yes | +| Supported Control Plane | CNI | Default OS | Installs ClusterClass | IPv4 | IPv6 | +|-------------------------|--------|--------------|-----------------------|------|------| +| kubeadm, k3s | Cilium | Ubuntu 22.04 | No | Yes | Yes | + ## Prerequisites [Quickstart](../getting-started.md) completed ## Usage @@ -11,7 +12,7 @@ clusterctl generate cluster test-cluster \ --kubernetes-version v1.29.1 \ --infrastructure linode-linode \ - --flavor dual-stack > test-cluster.yaml + --flavor -dual-stack > test-cluster.yaml ``` 2. Apply cluster yaml ```bash diff --git a/docs/src/topics/flavors/etcd-backup-restore.md b/docs/src/topics/flavors/etcd-backup-restore.md index 74c9133b..bf47ffe6 100644 --- a/docs/src/topics/flavors/etcd-backup-restore.md +++ b/docs/src/topics/flavors/etcd-backup-restore.md @@ -1,9 +1,9 @@ # etcd-backup-restore ## Specification -| Control Plane | CNI | Default OS | Installs ClusterClass | Installs etcd backup | IPv4 | IPv6 | -|---------------|--------|--------------|-----------------------|----------------------|------|------| -| Kubeadm | Cilium | Ubuntu 22.04 | No | Yes | Yes | No | +| Supported Control Plane | CNI | Default OS | Installs ClusterClass | IPv4 | IPv6 | +|-------------------------|--------|--------------|-----------------------|------|------| +| kubeadm, k3s, rke2 | Cilium | Ubuntu 22.04 | No | Yes | Yes | ## Prerequisites [Quickstart](../getting-started.md) completed @@ -13,7 +13,7 @@ clusterctl generate cluster test-cluster \ --kubernetes-version v1.29.1 \ --infrastructure linode-linode \ - --flavor etcd-backup-restore > test-cluster.yaml + --flavor -etcd-backup-restore > test-cluster.yaml ``` 2. Apply cluster yaml ```bash diff --git a/docs/src/topics/flavors/etcd-disk.md b/docs/src/topics/flavors/etcd-disk.md index e76ad757..19233303 100644 --- a/docs/src/topics/flavors/etcd-disk.md +++ b/docs/src/topics/flavors/etcd-disk.md @@ -6,9 +6,9 @@ the `quota-backend-bytes` to `8589934592` (8 GiB) per recommendation from [the etcd documentation](https://etcd.io/docs/latest/dev-guide/limit/#storage-size-limit). ## Specification -| Control Plane | CNI | Default OS | Installs ClusterClass | IPv4 | IPv6 | -|---------------|--------|--------------|-----------------------|------|------| -| Kubeadm | Cilium | Ubuntu 22.04 | No | Yes | No | +| Supported Control Plane | CNI | Default OS | Installs ClusterClass | IPv4 | IPv6 | +|-------------------------|--------|--------------|-----------------------|------|------| +| kubeadm, rke2 | Cilium | Ubuntu 22.04 | No | Yes | Yes | ## Prerequisites [Quickstart](../getting-started.md) completed @@ -19,7 +19,7 @@ the `quota-backend-bytes` to `8589934592` (8 GiB) per recommendation from clusterctl generate cluster test-cluster \ --kubernetes-version v1.29.1 \ --infrastructure linode-linode \ - --flavor etcd-disk > test-cluster.yaml + --flavor -etcd-disk > test-cluster.yaml ``` 2. Apply cluster yaml ```bash diff --git a/docs/src/topics/flavors/flavors.md b/docs/src/topics/flavors/flavors.md index 2a56992e..8ca3bfb2 100644 --- a/docs/src/topics/flavors/flavors.md +++ b/docs/src/topics/flavors/flavors.md @@ -13,3 +13,46 @@ clusterctl generate cluster test-cluster --flavor clusterclass-kubeadm To use the default flavor, omit the `--flavor` flag. See the [`clusterctl` flavors docs](https://cluster-api.sigs.k8s.io/clusterctl/commands/generate-cluster.html#flavors) for more information. +

+

+ +## Supported CAPL flavors + +| Control Plane | Flavor | Notes | +|----------------|----------------------------|------------------------------------------------------| +| kubeadm | default | Installs Linode infra resources, kubeadm resources, | +| | | CNI, CSI driver, CCM and clusterresourceset | +| | kubeadm-cluster-autoscalar | Installs default along with the cluster autoscalar | +| | | add-on | +| | kubeadm-etcd-disk | Installs default along with the disk configuration | +| | | for etcd disk | +| | kubeadm-etcd-backup-restore| Installs default along with etcd-backup-restore addon| +| | kubeadm-vpcless | Installs default without a VPC | +| | kubeadm-dualstack | Installs vpcless and enables IPv6 along with IPv4 | +| | kubeadm-self-healing | Installs default along with the machine-health-check | +| | | add-on | +| | kubeadm-full | Installs all non-vpcless based flavors combinations | +| | kubeadm-fullvpcless | Installs all vpcless based flavors combinations | +| k3s | k3s | Installs Linode infra resources, k3s resources and | +| | | cilium network policies | +| | k3s-cluster-autoscalar | Installs default along with the cluster autoscalar | +| | | add-on | +| | k3s-etcd-backup-restore | Installs default along with etcd-backup-restore addon| +| | k3s-vpcless | Installs default without a VPC | +| | k3s-dualstack | Installs vpcless and enables IPv6 along with IPv4 | +| | k3s-self-healing | Installs default along with the machine-health-check | +| | | add-on | +| | k3s-full | Installs all non-vpcless based flavors combinations | +| | k3s-fullvpcless | Installs all vpcless based flavors combinations | +| rke2 | rke2 | Installs Linode infra resources, rke2 resources, | +| | | cilium and cilium network policies | +| | rke2-cluster-autoscalar | Installs default along with the cluster autoscalar | +| | | add-on | +| | rke2-etcd-disk | Installs default along with the disk configuration | +| | | for etcd disk | +| | rke2-etcd-backup-restore | Installs default along with etcd-backup-restore addon| +| | rke2-vpcless | Installs default without a VPC | +| | rke2-self-healing | Installs default along with the machine-health-check | +| | | add-on | +| | rke2-full | Installs all non-vpcless based flavors combinations | +| | rke2-fullvpcless | Installs all vpcless based flavors combinations | diff --git a/docs/src/topics/flavors/vpcless.md b/docs/src/topics/flavors/vpcless.md index 8f03266a..4a821785 100644 --- a/docs/src/topics/flavors/vpcless.md +++ b/docs/src/topics/flavors/vpcless.md @@ -4,9 +4,10 @@ This flavor supports provisioning k8s clusters outside of VPC. It uses kubeadm f setting up control plane and uses cilium with VXLAN for pod networking. ## Specification -| Control Plane | CNI | Default OS | Installs ClusterClass | IPv4 | IPv6 | -|---------------|--------|--------------|-----------------------|------|------| -| Kubeadm | Cilium | Ubuntu 22.04 | No | Yes | No | +| Supported Control Plane | CNI | Default OS | Installs ClusterClass | IPv4 | IPv6 | +|-------------------------|--------|--------------|-----------------------|------|------| +| kubeadm, k3s, rke2 | Cilium | Ubuntu 22.04 | No | Yes | No | + ## Prerequisites [Quickstart](../getting-started.md) completed @@ -20,7 +21,7 @@ supported in this flavor and it uses VXLAN for pod to pod communication. ```bash clusterctl generate cluster test-cluster \ --infrastructure linode-linode \ - --flavor vpcless > test-cluster.yaml + --flavor -vpcless > test-cluster.yaml ``` 2. Apply cluster yaml ```bash