New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
deprecating in-tree vsphere volume diskformat parameters, vsphere less than 67u3, vm hardware less than 15 and multi vCenter support #98546
deprecating in-tree vsphere volume diskformat parameters, vsphere less than 67u3, vm hardware less than 15 and multi vCenter support #98546
Conversation
@divyenpatel: This issue is currently awaiting triage. If a SIG or subproject determines this is a relevant issue, they will accept it by applying the The Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
cc @yuga711 |
/assign @andrewsykim |
Assuming not everyone reads release-notes and these changes are big enough that impact large number of users - should we consider logging a deprecating warning when a node is discovered that does not match HW version requirement? And same thing for vsphere version too. |
@gnufied @yuga711 please see the latest commit. I am working on validating change on the vSphere releases less than 67u3 with VM hardware version less than 15. |
ccf0431
to
1af247f
Compare
/retest |
staging/src/k8s.io/legacy-cloud-providers/vsphere/vclib/utils.go
Outdated
Show resolved
Hide resolved
The deprecation message here says: |
I tried to check how often are the deprecation messages logged (goal: don't spam log every second), but I failed to find all the code paths and when various connections could be re-created. Therefore asking here: can you please confirm that the deprecation messages are logged only few times per kube-controller-manager or kubelet? |
We need to upgrade both ESX and Center to 67u3. Updated message to be more clear - |
Deprecation message is printed few times only 1) while creating a connection to vCenter and 2) During node discovery. |
8e1aaae
to
0a10e67
Compare
…ess than 67u3, vm hardware less than 15 and multi vCenter server
0a10e67
to
3e91ac2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/approve
Approving the legacy-cloud-providers
changes since this is deprecating capabilities that would otherwise block users from migrating to the CSI driver and there are no new features being added here. cc @cheftako if you want to double-check on the changes here.
Would appreciate extra eyes on the vSphere code changes from another reviewer though.
Regarding future plans -- I am not sure we need to actually ever remove support for some of these features. It can stay supported until the eventual removal of the in-tree cloud providers. Specifically, users on vSphere 6.5 should be able to continue to use the in-tree drivers assuming they know CSI migration will never be supported there. Wondering if we can improve some of the wording to reflect this more accurately.
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: andrewsykim, chethanv28, divyenpatel, msau42 The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
lgtm from vsphere code changes side. |
The purpose of this messaging is to inform users that these features will no longer work once the intree providers are removed. I think the current messaging accomplishes that? |
lgtm for the vSphere code changes. |
/re-test |
/retest |
Discussed at sig-storage meeting today. This is good to go. |
/lgtm |
@divyenpatel: The following test failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
retest |
/retest |
Just want to confirm, for ESXi 67u3 checks, is it enough to check if the ESXi version is 6.7 and the build number is at least 14320388? (https://kb.vmware.com/s/article/2143832) |
What type of PR is this?
/kind feature
/kind deprecation
What this PR does / why we need it:
This PR is deprecating followings for in-tree vSphere cloud provider and in-tree vSphere volume plugin
PR checks vCenter API version vSphere Cloud Provider is interacting with. If the vCenter version is less than 67u3, a deprecation warning message is printed.
Note: code block for vCenter version check is validated for vSphere releases mentioned in this gist - https://gist.github.com/divyenpatel/b537c949c1078e2005d42e0e2c07f38d using https://play.golang.org/p/6IR0KMPOrjk
PR checks Node VM's guest hardware version during node discovery, and it finds hardware version is less than 15, a deprecation warning message is printed.
PR checks if vSphere Cloud Provider is configured to work with multiple vCenter servers when kubernetes nodes in the cluster are spread across multiple vCenter servers, and prints a deprecation warning message for multi vCenter support.
Special notes for your reviewer:
vSphere CSI driver can not support provisioning of thick/zerored thick volume using in-tree vSphere storageclass parameter
diskformat
after the migration is turned on.Existing thick/zeroed thick volumes created using the in-tree vSphere volume plugin, can be migrated to CSI, but new thick/zeroed thick volumes can not be created by the vSphere CSI driver.
We have already deprecated raw vsan policy parameters
hostfailurestotolerate
,forceprovisioning
,cachereservation
,diskstripes
,objectspacereservation
,iopslimit
as of Kubernetes 1.19 - https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.19.md#deprecationvSphere CSI driver does not support Kubernetes nodes spread across multiple vCenter servers.
Does this PR introduce a user-facing change?:
cc: @xing-yang @SandeepPissay @chethanv28