vsphere-csi-driver icon indicating copy to clipboard operation
vsphere-csi-driver copied to clipboard

Decouple vSphere Container Storage Plug-in from vSphere CPI.

Open indreek opened this issue 2 years ago • 5 comments

Hi.

I'm new to this plugin. What does it mean exactly? Is this manual still valid https://docs.vmware.com/en/VMware-vSphere-Container-Storage-Plug-in/2.0/vmware-vsphere-csp-getting-started/GUID-0AB6E692-AA47-4B6A-8CEA-38B754E16567.html? Do i need to install https://raw.githubusercontent.com/kubernetes/cloud-provider-vsphere/release-$VERSION/releases/v$VERSION/vsphere-cloud-controller-manager.yaml or it's not needed anymore?

Kube version 1.22/1.23

Thanks, Indrek

indreek avatar Mar 21 '22 17:03 indreek

Yes this manual - https://docs.vmware.com/en/VMware-vSphere-Container-Storage-Plug-in/2.0/vmware-vsphere-csp-getting-started/GUID-0AB6E692-AA47-4B6A-8CEA-38B754E16567.html is still valid.

Previously there is a tight dependency of vSphere CSI on vSphere CPI to set the Provider ID on the node.

With Decouple vSphere Container Storage Plug-in from vSphere CPI, what it says is

  1. You can continue to install vSphere CPI on CSI.
  2. You can also install any external CPI that works with VMware on top on CSI.

Both of these scenario tend to work.

I am unable to access this - https://raw.githubusercontent.com/kubernetes/cloud-provider-vsphere/release-$VERSION/releases/v$VERSION/vsphere-cloud-controller-manager.yaml. It says "404: Not Found" error. Can you check whether this is a valid link.

Irrespective of it, the above information holds true.

BaluDontu avatar Mar 22 '22 20:03 BaluDontu

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle stale
  • Mark this issue or PR as rotten with /lifecycle rotten
  • Close this issue or PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Jun 20 '22 20:06 k8s-triage-robot

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle rotten
  • Close this issue or PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

k8s-triage-robot avatar Jul 20 '22 21:07 k8s-triage-robot

/remove-lifecycle rotten

sathieu avatar Jul 21 '22 07:07 sathieu

From my understanding, this is ok since 2.5.1. I was able to activate CSI without vsphere cpi

poblin-orange avatar Jul 25 '22 10:07 poblin-orange

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle stale
  • Mark this issue or PR as rotten with /lifecycle rotten
  • Close this issue or PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Oct 23 '22 10:10 k8s-triage-robot

Can we get some clarification on this please?

Do I need a CPI or not? I currently have clusters that do not have a CPI and honestly don't need one, so I'd prefer not to have one at all if it actually isn't needed.

I really just want the CSI, but the documentation and the release notes seem to contradict each other on this particular topic.

MalHaak avatar Oct 24 '22 07:10 MalHaak

@MalHaak I agree with you. It looks like this bug is already fixed, but cannot be closed because the docs are outdated.

/remove-lifecycle stale

sathieu avatar Oct 24 '22 07:10 sathieu

/assign @chethanv28

lipingxue avatar Nov 17 '22 22:11 lipingxue

We have removed dependency on ProviderID set on the Node by CPI from release 2.5. Closing this issue. Please refer to - https://docs.vmware.com/en/VMware-vSphere-Container-Storage-Plug-in/2.5/rn/vmware-vsphere-container-storage-plugin-25-release-notes/index.html

divyenpatel avatar Dec 02 '22 18:12 divyenpatel

We have removed dependency on ProviderID set on the Node by CPI from release 2.5. Closing this issue. Please refer to - https://docs.vmware.com/en/VMware-vSphere-Container-Storage-Plug-in/2.5/rn/vmware-vsphere-container-storage-plugin-25-release-notes/index.html

So why isn't the rest of the documentation updated? This shouldn't be closed until the documentation ACTUALLY MAKES SENSE compared with the state of the project.

MalHaak avatar Dec 12 '22 23:12 MalHaak

@MalHaak

We have just removed dependency on vSphere CPI which is setting ProviderID on the Node, which driver was using it.

We need to have some CPI or CCM installed on the cluster which executes Cloud Provider Interfaces. Refer to https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/cloud-provider/cloud.go#L164-L194 and https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/#running-cloud-controller-manager

We can not document that CSI only is sufficient on the cluster without CPI or CCM.

divyenpatel avatar Dec 13 '22 00:12 divyenpatel

@divyenpatel Running CPI/CCM is out of scope of CSI. We use CSI without CPI and have no problem. Could you just remove any reference to CPI in the docs ?

sathieu avatar Dec 13 '22 08:12 sathieu

@sathieu in your setup if you delete Node VM from vCenter server. How is the associated node object getting removed from the API server without CCM executing InstanceExistsByProviderID?

Can you point me to any document or spec which says CSI should only be installed without external CCM on the k8s cluster? cc: @xing-yang

divyenpatel avatar Dec 13 '22 22:12 divyenpatel

@divyenpatel Node lifecycle is more a cluster-api concern than a vsphere-csi concern. And this is needed even without vsphere-csi.

Can you point me to any document or spec which says CSI should only be installed without external CCM on the k8s cluster?

I don't say "should only be installed without external CCM", but "could be installed without CPI/CCM".

sathieu avatar Dec 14 '22 04:12 sathieu