我有statefulset mongo-replica
,它创建了两个副本,我想为每个吊舱(副本)设置一个新标签(COMPANY),其值应为吊舱的名称。例如:
in POD mongo-replica-0 -> COMPANY: mongo-replica-0
in POD mongo-replica-1 -> COMPANY: mongo-replica-1
因此,创建/重新启动广告连播中的automatically
是否可以解决?
我知道我们可以通过kubectl label
来做到这一点,但是它是手动的
答案 0 :(得分:0)
在撰写本文时,还没有用于此目的的专用工具。这里我想到两件事:
为使用服务的Statefulset Pod使用initContainer
拥有适当权限的帐户。 initContainer
然后将运行类似kubectl label pod $hostname company=$HOSTNAME"
本文介绍了如何通过图像构建,服务帐户和角色创建来运行kubectl from within a
pod。
a=$(kubectl get pods -o jsonpath='{.items[*].[metadata.name](http://metadata.name/)}' -l app=$stsname) for n in $a ; do kubectl label pod $n company="$n" --overwrite ; done
这是一篇不错的文章,描述了如何编写基本的kubernetes mutating admission webhook。 Kubernetes官方文档分享了一个关于dynamic admission control的很好的部分,值得一看。