kubernetes 在使用kubectl scale命令时,是否有办法为pod的名称添加后缀

jgwigjjp  于 2022-11-21  发布在  Kubernetes
关注(0)|答案(1)|浏览(156)

我运行的命令如下:

# add an executor pod
kubectl scale deployments executor --replicas 1

# show new pod
kubectl get pods
# NAME                              READY   STATUS    RESTARTS   AGE
# executor-8cb7dc8689-w58ls           1/1     Running   0        11m

这通常是为了通过kubectl exec运行某个命令。
我们团队中有多个人偶尔会这样做,有时会忘记缩小规模,留下这些资源。
是否有一种方法可以在扩展时动态地为新单元的名称添加一个后缀,这样我就可以有一些所有权的指示?例如,类似这样的东西:

echo $USER
# myusername
kubectl scale deployments executor --replicas 1 --name-suffix $USER

kubectl get pods
# NAME                                         READY   STATUS    RESTARTS   AGE
# executor-8cb7dc8689-w58ls-myusername           1/1     Running   0        11m
wfveoks0

wfveoks01#

不,这是不可能的。pod的名称是由ReplicaSet给出的,它总是{replicasetname}-{random}
我认为实现类似效果的最佳选择是为每个用户创建一个部署,然后使用RBAC限制对每个部署的访问,以便只有user1可以扩展部署1,user2可以扩展部署2,依此类推。

相关问题