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

My question may not make sense, but this is what I'm trying to do:

  • I have a running Kubernetes cluster running on CoreOS bare metal.
  • I am trying to connect block storage from an OpenStack cloud provider using Cinder.

From my testimony, in order to be able to connect to the block storage provider, I need to kubeletconfigure cloud-provider=openstackand use the file cloud.confto configure credentials.

I did this, and the auth part seems to be working fine (i.e., I successfully connected to the cloud provider), but kubeletthen complains that it cannot find my node at the provider openstack.

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:

Failed to create api.Node object for kubelet: could not get external identifier from cloud provider: could not find object

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

In short, how can I say kubeletnot to look for my node there, since I only need to find the storage unit to mount it?

Is such a connection to block storage possible? I don’t understand how it works?

+4
source share
2 answers

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

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

+2

, , node , , .

+1

All Articles