Skip to content

Commit e355bef

Browse files
authored
fix: vsphere image repositories, tags and docs (#11564)
The old repository for these has been deleted, leaving the previous configuration not possible to deploy, and even currently running clusters fail after a restart as the DeameonSet has ImagePullPolicy: Always. More details can be found here: kubernetes-sigs/vsphere-csi-driver#3053 As of writing, only CSI driver versions 3.1.2 to 3.3.1 is available in this registry. This "officially" supports Kubernetes 1.26 to 1.30. Since older drivers are not available, I have removed some feature-gating for those unavailable versions while I was at it. For the cloud provider, the `latest` image is now missing, and only 1.28.0 to 1.31.0 are available. I've set the latest of these as the new default. I also updated the documented default versions, as they were all out of date and not aligned with actual code defaults.
1 parent 15bb5b0 commit e355bef

File tree

9 files changed

+25
-29
lines changed

9 files changed

+25
-29
lines changed

docs/CSI/vsphere-csi.md

+11-11
Original file line numberDiff line numberDiff line change
@@ -23,20 +23,20 @@ You need to source the vSphere credentials you use to deploy your machines that
2323
| external_vsphere_password | TRUE | string | | | Password for vCenter (Can also be specified with the `VSPHERE_PASSWORD` environment variable) |
2424
| external_vsphere_datacenter | TRUE | string | | | Datacenter name to use |
2525
| external_vsphere_kubernetes_cluster_id | TRUE | string | | "kubernetes-cluster-id" | Kubernetes cluster ID to use |
26-
| external_vsphere_version | TRUE | string | | "6.7u3" | Vmware Vsphere version where located all VMs |
27-
| external_vsphere_cloud_controller_image_tag | TRUE | string | | "latest" | Kubernetes cluster ID to use |
28-
| vsphere_syncer_image_tag | TRUE | string | | "v2.2.1" | Syncer image tag to use |
29-
| vsphere_csi_attacher_image_tag | TRUE | string | | "v3.1.0" | CSI attacher image tag to use |
30-
| vsphere_csi_controller | TRUE | string | | "v2.2.1" | CSI controller image tag to use |
26+
| external_vsphere_version | TRUE | string | | "7.0u1" | Vmware Vsphere version where located all VMs |
27+
| external_vsphere_cloud_controller_image_tag | TRUE | string | | "v1.31.0" | CPI manager image tag to use |
28+
| vsphere_syncer_image_tag | TRUE | string | | "v3.3.1" | Syncer image tag to use |
29+
| vsphere_csi_attacher_image_tag | TRUE | string | | "v4.3.0" | CSI attacher image tag to use |
30+
| vsphere_csi_controller | TRUE | string | | "v3.3.1" | CSI controller image tag to use |
3131
| vsphere_csi_controller_replicas | TRUE | integer | | 1 | Number of pods Kubernetes should deploy for the CSI controller |
32-
| vsphere_csi_liveness_probe_image_tag | TRUE | string | | "v2.2.0" | CSI liveness probe image tag to use |
32+
| vsphere_csi_liveness_probe_image_tag | TRUE | string | | "v2.10.0" | CSI liveness probe image tag to use |
3333
| vsphere_csi_provisioner_image_tag | TRUE | string | | "v2.1.0" | CSI provisioner image tag to use |
34-
| vsphere_csi_node_driver_registrar_image_tag | TRUE | string | | "v1.1.0" | CSI node driver registrar image tag to use |
35-
| vsphere_csi_driver_image_tag | TRUE | string | | "v1.0.2" | CSI driver image tag to use |
36-
| vsphere_csi_resizer_tag | TRUE | string | | "v1.1.0" | CSI resizer image tag to use |
34+
| vsphere_csi_node_driver_registrar_image_tag | TRUE | string | | "v3.5.0" | CSI node driver registrar image tag to use |
35+
| vsphere_csi_driver_image_tag | TRUE | string | | "v3.3.1" | CSI driver image tag to use |
36+
| vsphere_csi_resizer_tag | TRUE | string | | "v1.8.0" | CSI resizer image tag to use |
3737
| vsphere_csi_aggressive_node_drain | FALSE | boolean | | false | Enable aggressive node drain strategy |
38-
| vsphere_csi_aggressive_node_unreachable_timeout | FALSE | int | 300 | | Timeout till node will be drained when it in an unreachable state |
39-
| vsphere_csi_aggressive_node_not_ready_timeout | FALSE | int | 300 | | Timeout till node will be drained when it in not-ready state |
38+
| vsphere_csi_aggressive_node_unreachable_timeout | FALSE | int | | 300 | Timeout till node will be drained when it in an unreachable state |
39+
| vsphere_csi_aggressive_node_not_ready_timeout | FALSE | int | | 300 | Timeout till node will be drained when it in not-ready state |
4040
| 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 |
4141

4242
## Usage example

inventory/sample/group_vars/all/vsphere.yml

+6-6
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@
1111
# external_vsphere_version: "6.7u3"
1212

1313
## Tags for the external vSphere Cloud Provider images
14-
## gcr.io/cloud-provider-vsphere/cpi/release/manager
15-
# external_vsphere_cloud_controller_image_tag: "latest"
16-
## gcr.io/cloud-provider-vsphere/csi/release/syncer
17-
# vsphere_syncer_image_tag: "v2.5.1"
14+
## registry.k8s.io/cloud-pv-vsphere/cloud-provider-vsphere
15+
# external_vsphere_cloud_controller_image_tag: "v1.31.0"
16+
## registry.k8s.io/csi-vsphere/syncer
17+
# vsphere_syncer_image_tag: "v3.3.1"
1818
## registry.k8s.io/sig-storage/csi-attacher
1919
# vsphere_csi_attacher_image_tag: "v3.4.0"
20-
## gcr.io/cloud-provider-vsphere/csi/release/driver
21-
# vsphere_csi_controller: "v2.5.1"
20+
## registry.k8s.io/csi-vsphere/driver
21+
# vsphere_csi_controller: "v3.3.1"
2222
## registry.k8s.io/sig-storage/livenessprobe
2323
# vsphere_csi_liveness_probe_image_tag: "v2.6.0"
2424
## registry.k8s.io/sig-storage/csi-provisioner

roles/kubernetes-apps/csi_driver/vsphere/defaults/main.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@ external_vsphere_insecure: "true"
44
external_vsphere_kubernetes_cluster_id: "kubernetes-cluster-id"
55
external_vsphere_version: "7.0u1"
66

7-
vsphere_syncer_image_tag: "v3.1.0"
7+
vsphere_syncer_image_tag: "v3.3.1"
88
vsphere_csi_attacher_image_tag: "v4.3.0"
9-
vsphere_csi_controller: "v3.1.0"
9+
vsphere_csi_controller: "v3.3.1"
1010
vsphere_csi_liveness_probe_image_tag: "v2.10.0"
1111
vsphere_csi_provisioner_image_tag: "v3.5.0"
1212
vsphere_csi_snapshotter_image_tag: "v6.2.2"
1313
vsphere_csi_node_driver_registrar_image_tag: "v2.8.0"
14-
vsphere_csi_driver_image_tag: "v3.1.0"
14+
vsphere_csi_driver_image_tag: "v3.3.1"
1515
vsphere_csi_resizer_tag: "v1.8.0"
1616

1717
# Set to kube-system for backward compatibility, should be change to vmware-system-csi on the long run

roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-config.yml.j2

-2
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,10 @@ data:
1919
"multi-vcenter-csi-topology": "true"
2020
"csi-internal-generated-cluster-id": "true"
2121
"listview-tasks": "true"
22-
{% if vsphere_csi_controller is version('v2.7.0', '>=') %}
2322
"improved-csi-idempotency": "true"
2423
"improved-volume-topology": "true"
2524
"use-csinode-id": "true"
2625
"list-volumes": "false"
27-
{% endif %}
2826
kind: ConfigMap
2927
metadata:
3028
name: internal-feature-states.csi.vsphere.vmware.com

roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-deployment.yml.j2

+2-2
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ spec:
9999
name: socket-dir
100100
{% endif %}
101101
- name: vsphere-csi-controller
102-
image: {{ gcr_image_repo }}/cloud-provider-vsphere/csi/release/driver:{{ vsphere_csi_controller }}
102+
image: {{ kube_image_repo }}/csi-vsphere/driver:{{ vsphere_csi_controller }}
103103
args:
104104
- "--fss-name=internal-feature-states.csi.vsphere.vmware.com"
105105
- "--fss-namespace={{ vsphere_csi_namespace }}"
@@ -168,7 +168,7 @@ spec:
168168
- name: socket-dir
169169
mountPath: {{ csi_endpoint }}
170170
- name: vsphere-syncer
171-
image: {{ gcr_image_repo }}/cloud-provider-vsphere/csi/release/syncer:{{ vsphere_syncer_image_tag }}
171+
image: {{ kube_image_repo }}/csi-vsphere/syncer:{{ vsphere_syncer_image_tag }}
172172
args:
173173
- "--leader-election"
174174
- "--leader-election-lease-duration=30s"

roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-rbac.yml.j2

-2
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,9 @@ rules:
3333
- apiGroups: [""]
3434
resources: ["events"]
3535
verbs: ["get", "list", "watch", "create", "update", "patch"]
36-
{% if vsphere_csi_controller is version('v2.0.0', '>=') %}
3736
- apiGroups: ["coordination.k8s.io"]
3837
resources: ["leases"]
3938
verbs: ["get", "watch", "list", "delete", "update", "create"]
40-
{% endif %}
4139
- apiGroups: ["storage.k8s.io"]
4240
resources: ["storageclasses","csinodes"]
4341
verbs: ["get", "list", "watch"]

roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-node.yml.j2

+1-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ spec:
6262
- --mode=kubelet-registration-probe
6363
initialDelaySeconds: 3
6464
- name: vsphere-csi-node
65-
image: {{ gcr_image_repo }}/cloud-provider-vsphere/csi/release/driver:{{ vsphere_csi_driver_image_tag }}
65+
image: {{ kube_image_repo }}/csi-vsphere/driver:{{ vsphere_csi_driver_image_tag }}
6666
imagePullPolicy: {{ k8s_image_pull_policy }}
6767
args:
6868
- "--fss-name=internal-feature-states.csi.vsphere.vmware.com"

roles/kubernetes-apps/external_cloud_controller/vsphere/defaults/main.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ external_vsphere_insecure: "true"
88
## arg1: "value1"
99
## arg2: "value2"
1010
external_vsphere_cloud_controller_extra_args: {}
11-
external_vsphere_cloud_controller_image_tag: "latest"
11+
external_vsphere_cloud_controller_image_tag: "v1.31.0"
1212

1313
external_vsphere_user: "{{ lookup('env', 'VSPHERE_USER') }}"
1414
external_vsphere_password: "{{ lookup('env', 'VSPHERE_PASSWORD') }}"

roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-ds.yml.j2

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ spec:
3636
serviceAccountName: cloud-controller-manager
3737
containers:
3838
- name: vsphere-cloud-controller-manager
39-
image: {{ gcr_image_repo }}/cloud-provider-vsphere/cpi/release/manager:{{ external_vsphere_cloud_controller_image_tag }}
39+
image: {{ kube_image_repo }}/cloud-pv-vsphere/cloud-provider-vsphere:{{ external_vsphere_cloud_controller_image_tag }}
4040
args:
4141
- --v=2
4242
- --cloud-provider=vsphere

0 commit comments

Comments
 (0)