kubernetes - Kubernetes pod Name 中的随机字符串是如何决定的

标签 kubernetes deployment replicaset

关于如何决定 kubernetes podname 中的随机字符串部分,我有几个问题。

pod-template-hash 是如何决定的? (我知道它是由部署 Controller 生成的随机字符串)。但部署 Controller 在生成此随机字符串之前具体考虑的输入是什么。 这个哈希字符串是否有最大长度限制??

之所以问这个问题,是因为我们将完整的 Pod 名称存储在数据库中,并且它不能超过一定的字符长度。

大多数时候我看到的长度是 10 个字符。可以超过10个字符吗?

最佳答案

10 个字符?这只是副本集名称的字母数字后缀。副本集下的 Pod 将具有破折号加上 5 个字符长的字母数字字符串的附加后缀。

Pod 的名称结构会根据 Controller 类型的不同而不同:

  • StatefulSet:StatefulSet名称+“-”+从0开始的序号
  • DaemonSet:DaemonSet 名称 + “-” + 5 个字母数字字符长字符串
  • 部署:ReplicaSet 名称(即部署名称 + “-” + 10 个字母数字字符长字符串)+ “-” + 5 个字母数字字符长字符串

但是,Pod 的全名还将包含其 Controller 的名称,这是相当任意的。

那么,你要如何进行呢?

您只需将列的长度准备为 the maximum length of a pod name, which is 253 characters .

关于kubernetes - Kubernetes pod Name 中的随机字符串是如何决定的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71090356/

相关文章:

jenkins - 使用minikube kubernetes集群在Jenkins中运行kubectl命令

sql-server - 无法部署项目。有关更多信息,请查询操作标识符 '20132' 的 operation_messages View ?

javascript - MongoDB:无法连接到新的副本集主服务器

python - 如何(以何种形式)共享(交付)一个 Python 函数?

exception - Play Framework、WARs 和 Tomcat 6 部署异常

mongodb - 如何使用 mongoengine 连接 mongodb 副本集?

node.js - MongoDB - 如何使副本集真正无缝地降级

nginx - LoadBalancer-Kubernetes或Nginx或两者兼而有之

kubernetes - 使用单个副本时,Kubernetes部署不会执行滚动更新

kubernetes - 错误 "remote error: tls: bad certificate",服务器名称 ""