-
Daniel VG authored
* docs: fix storageClassName in PersistentVolume * docs: minor typo fix and formatting * docs: fix proper STORAGECLASS in example prompt
Daniel VG authored* docs: fix storageClassName in PersistentVolume * docs: minor typo fix and formatting * docs: fix proper STORAGECLASS in example prompt
vsphere-csi.md 8.41 KiB
vSphere CSI Driver
vSphere CSI driver allows you to provision volumes over a vSphere deployment. The Kubernetes historic in-tree cloud provider is deprecated and will be removed in future versions.
Prerequisites
The vSphere user for CSI driver requires a set of privileges to perform Cloud Native Storage operations. Follow the official guide to configure those.
Kubespray configuration
To enable vSphere CSI driver, uncomment the vsphere_csi_enabled
option in group_vars/all/vsphere.yml
and set it to true
.
To set the number of replicas for the vSphere CSI controller, you can change vsphere_csi_controller_replicas
option in group_vars/all/vsphere.yml
.
You need to source the vSphere credentials you use to deploy your machines that will host Kubernetes.
Variable | Required | Type | Choices | Default | Comment |
---|---|---|---|---|---|
external_vsphere_vcenter_ip | TRUE | string | IP/URL of the vCenter | ||
external_vsphere_vcenter_port | TRUE | string | "443" | Port of the vCenter API | |
external_vsphere_insecure | TRUE | string | "true", "false" | "true" | set to "true" if the host above uses a self-signed cert |
external_vsphere_user | TRUE | string | User name for vCenter with required privileges (Can also be specified with the VSPHERE_USER environment variable) |
||
external_vsphere_password | TRUE | string | Password for vCenter (Can also be specified with the VSPHERE_PASSWORD environment variable) |
||
external_vsphere_datacenter | TRUE | string | Datacenter name to use | ||
external_vsphere_kubernetes_cluster_id | TRUE | string | "kubernetes-cluster-id" | Kubernetes cluster ID to use | |
external_vsphere_version | TRUE | string | "6.7u3" | Vmware Vsphere version where located all VMs | |
external_vsphere_cloud_controller_image_tag | TRUE | string | "latest" | Kubernetes cluster ID to use | |
vsphere_syncer_image_tag | TRUE | string | "v2.2.1" | Syncer image tag to use | |
vsphere_csi_attacher_image_tag | TRUE | string | "v3.1.0" | CSI attacher image tag to use | |
vsphere_csi_controller | TRUE | string | "v2.2.1" | CSI controller image tag to use | |
vsphere_csi_controller_replicas | TRUE | integer | 1 | Number of pods Kubernetes should deploy for the CSI controller | |
vsphere_csi_liveness_probe_image_tag | TRUE | string | "v2.2.0" | CSI liveness probe image tag to use | |
vsphere_csi_provisioner_image_tag | TRUE | string | "v2.1.0" | CSI provisioner image tag to use | |
vsphere_csi_node_driver_registrar_image_tag | TRUE | string | "v1.1.0" | CSI node driver registrar image tag to use | |
vsphere_csi_driver_image_tag | TRUE | string | "v1.0.2" | CSI driver image tag to use | |
vsphere_csi_resizer_tag | TRUE | string | "v1.1.0" | CSI resizer image tag to use | |
vsphere_csi_aggressive_node_drain | FALSE | boolean | false | Enable aggressive node drain strategy | |
vsphere_csi_aggressive_node_unreachable_timeout | FALSE | int | 300 | Timeout till node will be drained when it in an unreachable state | |
vsphere_csi_aggressive_node_not_ready_timeout | FALSE | int | 300 | Timeout till node will be drained when it in not-ready state | |
vsphere_csi_namespace | TRUE | string | "kube-system" | vSphere CSI namespace to use; kube-system for backward compatibility, should be change to vmware-system-csi on the long run |