问题描述
也许我的问题没有道理,但这就是我想要做的:
Maybe my question does not make sense, but this is what I'm trying to do:
- 我有一个正在运行的Kubernetes集群,该集群在裸机上的CoreOS上运行.
- 我正在尝试使用Cinder从OpenStack云提供商挂载块存储.
根据我的阅读,要能够连接到块存储提供程序,我需要将kubelet
配置为cloud-provider=openstack
,并使用cloud.conf
文件进行凭据配置.
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.
我这样做了,并且auth部分似乎工作正常(即我已成功连接到云提供程序),但是kubelet
然后抱怨说它无法在openstack
提供程序上找到我的节点.
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.
我得到:
Unable to construct api.Node object for kubelet: failed to get external ID from cloud provider: Failed to find object
这类似于以下问题:
无法为kubelet构造api.Node对象:无法从云提供商获取外部ID:无法找到对象
但是,我知道kubelet
不会在OpenStack提供程序上找到我的节点,因为它不在此处托管!该错误是有道理的,但是我该如何避免呢?
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?
简而言之,我该如何告诉kubelet
不要在那儿寻找我的节点,因为我只需要它来查找要安装的存储块?
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?
推荐答案
似乎有将Cinder存储连接到裸机的新方法,但显然只是PoC
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
这篇关于Kubernetes:使用来自一个云提供商的OpenStack Cinder,而使用另一个云提供商的节点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!