kubernetes 支持将 `support.spec.providerID` 作为节点的字段选择器,

ljo96ir5  于 6个月前  发布在  Kubernetes
关注(0)|答案(7)|浏览(47)

需要添加什么?

我希望能够根据 .spec.providerID 字段选择节点。
例如:kubectl get node --field-selector spec.providerID=aws://us-east-1a/someId

为什么需要这个?

这在以下情况下会很有用:我有一个云服务提供商的ID(例如,EC2示例),但我没有明确的方法将它Map到节点的名称。

bpsygsoo

bpsygsoo1#

@aojea,由于providerID已经存在,这个问题是否仍然相关?
它需要在apiserver中创建一个内存索引,这会产生成本,但让我们召唤@wojtek-t,他是Maven。

ljsrvy3e

ljsrvy3e2#

在今天的SIG云提供商会议上,我同意@aojea的观点,我们应该从api机器学习团队那里获得更多的Maven意见。
/sig api-machinery
/remove-sig cloud-provider

idfiyjo8

idfiyjo83#

/assign @jpbetz
/triage accepted
vd8tlhqk

vd8tlhqk4#

可以添加一个带有或不带有相应索引的字段选择器。如果没有添加索引,服务器将需要扫描列表并在服务器端进行过滤,但客户端只会返回匹配的元素,而服务器仍然需要处理列表。由于我没有足够的领域专业知识来判断这是否可接受,只想指出从apiserver的Angular 来看,这两种方法都是可选的。如果实施了这种方法,将需要进行API审查。

ebdffaop

ebdffaop5#

据我所知,ID的指定并不完善,且与提供者相关。
kubernetes/staging/src/k8s.io/api/core/v1/types.go
第5687行至第5689行
| | // 由云提供商分配的节点ID,格式为::// |
| | // 可选 |
| | ProviderIDstringjson:"providerID,omitempty" protobuf:"bytes,3,opt,name=providerID" |
另外,什么情况下更容易获取providerID而不是节点名称?

ryevplcw

ryevplcw6#

/sig cloud-provider node

ozxc1zmp

ozxc1zmp7#

据我所知,ID的指定并不完善,且与提供者相关。
kubernetes/staging/src/k8s.io/api/core/v1/types.go
第5687行至第5689行
| | // 由云提供商分配的节点ID,格式为::// |
| | // 可选 |
| | ProviderIDstringjson:"providerID,omitempty" protobuf:"bytes,3,opt,name=providerID" |
另外,什么情况下更容易获取providerID而不是节点名称?
@aojea 因为providerID已经存在,这个问题是否仍然相关?

相关问题