@@ -281,7 +281,7 @@ Additional documentation about experimental features can be found in [Experiment
281
281
Depending on the infrastructure provider you are planning to use, some additional prerequisites should be satisfied
282
282
before getting started with Cluster API. See below for the expected settings for common providers.
283
283
284
- {{# tabs name:"tab-installation-infrastructure" tabs:"Akamai (Linode),AWS,Azure,CloudStack,DigitalOcean,Docker,Equinix Metal,GCP,Hetzner,Hivelocity,IBM Cloud,IONOS Cloud,K0smotron,KubeKey,KubeVirt,Metal3,Nutanix,OCI,OpenStack,Outscale,Proxmox,VCD,vcluster,Virtink,vSphere,Vultr"}}
284
+ {{# tabs name:"tab-installation-infrastructure" tabs:"Akamai (Linode),AWS,Azure,CloudStack,DigitalOcean,Docker,Equinix Metal,GCP,Harvester, Hetzner,Hivelocity,IBM Cloud,IONOS Cloud,K0smotron,KubeKey,KubeVirt,Metal3,Nutanix,OCI,OpenStack,Outscale,Proxmox,VCD,vcluster,Virtink,vSphere,Vultr"}}
285
285
{{# tab Akamai (Linode)}}
286
286
287
287
` ` ` bash
@@ -574,6 +574,14 @@ export GCP_B64ENCODED_CREDENTIALS=$( cat /path/to/gcp-credentials.json | base64
574
574
clusterctl init --infrastructure gcp
575
575
` ` `
576
576
577
+ {{# /tab }}
578
+ {{# tab Harvester}}
579
+
580
+ ` ` ` bash
581
+ clusterctl init --infrastructure harvester-harvester
582
+ ` ` `
583
+
584
+ For more information, please visit the [Harvester project][Harvester provider].
577
585
{{# /tab }}
578
586
{{# tab Hetzner}}
579
587
@@ -871,7 +879,7 @@ before configuring a cluster with Cluster API. Instructions are provided for com
871
879
Otherwise, you can look at the ` clusterctl generate cluster` [command][clusterctl generate cluster] documentation for details about how to
872
880
discover the list of variables required by a cluster templates.
873
881
874
- {{# tabs name:"tab-configuration-infrastructure" tabs:"Akamai (Linode),AWS,Azure,CloudStack,DigitalOcean,Docker,Equinix Metal,GCP,IBM Cloud,IONOS Cloud,K0smotron,KubeKey,KubeVirt,Metal3,Nutanix,OpenStack,Outscale,Proxmox,Tinkerbell,VCD,vcluster,Virtink,vSphere,Vultr"}}
882
+ {{# tabs name:"tab-configuration-infrastructure" tabs:"Akamai (Linode),AWS,Azure,CloudStack,DigitalOcean,Docker,Equinix Metal,GCP,Harvester, IBM Cloud,IONOS Cloud,K0smotron,KubeKey,KubeVirt,Metal3,Nutanix,OpenStack,Outscale,Proxmox,Tinkerbell,VCD,vcluster,Virtink,vSphere,Vultr"}}
875
883
{{# tab Akamai (Linode)}}
876
884
877
885
` ` ` bash
@@ -1050,6 +1058,46 @@ export CLUSTER_NAME="<CLUSTER_NAME>"
1050
1058
1051
1059
See the [GCP provider] for more information.
1052
1060
1061
+ {{# /tab }}
1062
+ {{#tab Harvester}}
1063
+
1064
+
1065
+ ` ` ` bash
1066
+ # Cloud Provider credentials, which are a Kubeconfig generated using this process: https://docs.harvesterhci.io/v1.3/rancher/cloud-provider/#deploying-to-the-rke2-custom-cluster-experimental
1067
+ # Since v0.1.5, this can be left "", because the controller can update it automatically
1068
+ export CLOUD_CONFIG_KUBECONFIG_B64=" "
1069
+ # Name of the CAPI Cluster
1070
+ export CLUSTER_NAME=" <CLUSTER_NAME>"
1071
+ # Number of Control Plane machines
1072
+ export CONTROL_PLANE_MACHINE_COUNT=3
1073
+ # URL to access the Harvester Cluster, this will be overriden by the controller
1074
+ export HARVESTER_ENDPOINT=" "
1075
+ # Base64-Encoded Kubeconfig to access Harvester, which can be downloaded from Harvester's UI or from a Harvester Manager Node.
1076
+ export HARVESTER_KUBECONFIG_B64=" <HARVESTER_KUBECONFIG_ENCODED_IN_BASE64>"
1077
+ # Namespace for all resources in the Management Cluster
1078
+ export NAMESPACE=" test"
1079
+ # Pod CIDR for the Workload Cluster, it should have the format: 192.168.0.0/16
1080
+ export POD_CIDR=" 10.42.0.0/16"
1081
+ # Service CIDR for the Workload Cluster, it should have the format : 192.168.0.0/16 and be different from POD_CIDR
1082
+ export SERVICE_CIDR=" 10.43.0.0/16"
1083
+ # Reference to SSH Keypair in Harvester. It should follow the format <NAMESPACE>/<NAME>
1084
+ export SSH_KEYPAIR=" default/ssk-key-pair"
1085
+ # Namespace in Harvester where the VMs will be created.
1086
+ export TARGET_HARVESTER_NAMESPACE=" default"
1087
+ # Disk Size to be used by the VMs
1088
+ export VM_DISK_SIZE=" 50Gi"
1089
+ # Reference to OS Image in Harvester which will be used for creating VMs, It must follow the format <NAMESPACE>/<NAME>
1090
+ export VM_IMAGE_NAME=" default/jammy-server"
1091
+ # Reference to VM Network in Harvester. It must follow the format <NAMESPACE>/<NAME>
1092
+ export VM_NETWORK=" default/untagged"
1093
+ # Linux Username for the VMs
1094
+ export VM_SSH_USER=" ubuntu"
1095
+ # Number of Worker nodes in the target Workload cluster
1096
+ export WORKER_MACHINE_COUNT=2
1097
+ ` ` `
1098
+
1099
+ See the [Harvester provider] for more information.
1100
+
1053
1101
{{# /tab }}
1054
1102
{{#tab IBM Cloud}}
1055
1103
@@ -1817,6 +1865,7 @@ kind delete cluster
1817
1865
[Docker]: https://www.docker.com/
1818
1866
[GCP provider]: https://cluster-api-gcp.sigs.k8s.io/
1819
1867
[Helm]: https://helm.sh/docs/intro/install/
1868
+ [Harvester provider]: https://github.com/rancher-sandbox/cluster-api-provider-harvester
1820
1869
[Hetzner provider]: https://github.com/syself/cluster-api-provider-hetzner
1821
1870
[Hivelocity provider]: https://github.com/hivelocity/cluster-api-provider-hivelocity
1822
1871
[IBM Cloud provider]: https://github.com/kubernetes-sigs/cluster-api-provider-ibmcloud
0 commit comments