MrE
MrE

Reputation: 20768

Kubernetes: using OpenStack Cinder from one cloud provider while nodes on another

Maybe my question does not make sense, but this is what I'm trying to do:

From my readings, to be able to connect to the block storage provider, I need kubelet to be configured with cloud-provider=openstack, and use a cloud.conf file for the configuration of credentials.

I did that and the auth part seems to work fine (i.e. I successfully connect to the cloud provider), however kubelet then complains that it cannot find my node on the openstack provider.

I get:

Unable to construct api.Node object for kubelet: failed to get external ID from cloud provider: Failed to find object

This is similar to this question:

Unable to construct api.Node object for kubelet: failed to get external ID from cloud provider: Failed to find object

However, I know kubelet will not find my node at the OpenStack provider since it is not hosted there! The error makes sense, but how do I avoid it?

In short, how do I tell kubelet not to look for my node there, as I only need it to look up the storage block to mount it?

Is it even possible to mount block storage this way? Am I misunderstanding how this works?

Upvotes: 4

Views: 1256

Answers (2)

MrE
MrE

Reputation: 20768

There seem to be new ways to attach Cinder storage to bare metal, but it's apparently just PoC

http://blog.e0ne.info/post/Attach-Cinder-Volume-to-the-Ironic-Instance-without-Nova.aspx

Upvotes: 2

Yu-Ju Hong
Yu-Ju Hong

Reputation: 7287

Unfortunately, I don't think you can decouple the cloud provider for the node and that for the volume, at least not in the vanilla kubernetes.

Upvotes: 1

Related Questions