kubernetes资源命名约束

名称和 UID

UID:一个非空的、不透明的、系统生成的值,保证在时间和空间上是唯一的;旨在区分类似实体的历史事件。

Name:保证在特定时间在给定范围内唯一的非空字符串;用于资源 URL;由客户在创建时提供,并鼓励对人类友好;旨在促进单例对象的创建幂等性和空间唯一性,区分不同的实体。

名称和 UID 的目标

  1. 跨空间和时间唯一标识(通过 UID)对象。
  2. 跨空间唯一地命名(通过名称)对象。
  3. 在 API 操作或配置文件中提供人性化的名称。
  4. 允许 API 资源的幂等创建 (#148) 和单例对象的空间唯一性的实施。
  5. 允许为某些对象自动生成 DNS 名称。

名称

客户端提供的字符串,它引用资源 URL 中的对象,例如/api/v1/pods/some-name.

一次只能有一个给定类型的对象具有给定名称。但是,如果您删除该对象,您可以创建一个具有相同名称的新对象。

**注意:**当对象代表一个物理实体时,比如 Node 代表一个物理主机,当主机以相同的名称重新创建而不删除和重新创建 Node 时,Kubernetes 将新主机视为旧主机,这可能导致不一致。

DNS 子域名

很多资源类型需要可以用作 DNS 子域名的名称。 DNS 子域名的定义可参见 RFC 1123。 这一要求意味着名称必须满足如下规则:

  • 不能超过 253 个字符
  • 只能包含小写字母、数字,以及 ‘-’ 和 ‘.’
  • 必须以字母数字开头
  • 必须以字母数字结尾

RFC 1123 标签名

某些资源类型需要其名称遵循 RFC 1123 所定义的 DNS 标签标准。也就是命名必须满足如下规则:

  • 最多 63 个字符
  • 只能包含小写字母、数字,以及 ‘-’
  • 必须以字母数字开头
  • 必须以字母数字结尾

RFC 1035 标签名

某些资源类型需要其名称遵循 RFC 1035 所定义的 DNS 标签标准。也就是命名必须满足如下规则:

  • 最多 63 个字符
  • 只能包含小写字母、数字,以及 ‘-’
  • 必须以字母开头
  • 必须以字母数字结尾

路径分段名称

某些资源类型要求名称能被安全地用作路径中的片段。 换句话说,其名称不能是 ...,也不可以包含 /% 这些字符。

节点命名规则

# 公有云方案1
# Node的名称会在集群资源分配阶段确定下来,每个节点都会分配到一个序号`${seq}`,从0开始的自增整型。这个与k8s中StatefulSet的命名规则保持一致,因此能够做到云上云下一致管理。
<cluster_name>-<seq># 公有云方案2
数据中心-机房-node-number# 公有云方案3(推荐)
# 用.分割更好
# 这样dns上你可以分到子域里
# 这样自动化时候,你就对着某个子域,防止写错到全局
# 在私有云环境中可以加上机架号,便于机器故障快速定位
kubenode{number}.集群代号.机房.公司domain

参考链接

Kubernetes 对象名称和 IDs

https://datatracker.ietf.org/doc/html/rfc1123

Kubernetes 设计:标识符和名称

kubernetes资源命名约束和最佳实践相关推荐

  1. idea资源包下创建资源包_资源包技巧和最佳实践

    idea资源包下创建资源包 今天是资源捆绑日. 通常,这是Java中最著名的国际化机制(i18n). 使用它应该很容易. 但是,弄污双手时会出现许多小问题. 如果您有相同的想法,则此文章适合您. 基本 ...

  2. 资源包技巧和最佳实践

    今天是资源捆绑日. 通常,这是Java中最著名的国际化机制(i18n). 使用它应该很容易. 但是,在弄脏手时会出现许多小问题. 如果您有相同的想法,则此文章适合您. 基本 java.util.Res ...

  3. 可能是Asp.net Core On host、 docker、kubernetes(K8s) 配置读取的最佳实践

     写在前面 为了不违反广告法,我竭尽全力,不过"最佳实践"确是标题党无疑,如果硬要说的话 只能是个人最佳实践. 问题引出 可能很多新手都会遇到同样的问题:我要我的Asp.net ...

  4. Kubernetes Ingress 高可靠部署最佳实践

    摘要: 在Kubernetes集群中,Ingress作为集群流量接入层,Ingress的高可靠性显得尤为重要,今天我们主要探讨如何部署一套高性能高可靠的Ingress接入层. 简介 在Kubernet ...

  5. 确保Kubernetes环境安全的3种最佳实践

    Kubernetes编排平台是一个巨大的开源项目,其发展固有地是Swift的. 当使用不断变化的Kubernetes平台来自动化容器化云原生应用程序的部署,扩展和管理时,变更的步伐显着提高了遵守安全最 ...

  6. Spark on K8S 的最佳实践和需要注意的坑

    本文来自 Data Mechanics 的 CEO Jean-Yves Stephan 和 CTO Julien Dumazert 在 Spark Summit North America 2020 ...

  7. 译:Kubernetes 最佳实践

    本文翻译自 Jack Roper 的文章 Kubernetes Best Practice. 译者:文章中作者从应用程序开发.治理和集群配置三个方面给出了一些 Kubernetes 的最佳实践,同时翻 ...

  8. Kubernetes 最佳实践

    公众号关注 「奇妙的 Linux 世界」 设为「星标」,每天带你玩转 Linux ! 本文翻译自 Jack Roper 的文章 Kubernetes Best Practice. 译者:文章中作者从应 ...

  9. SpringCloud 应用在 Kubernetes 上的最佳实践 —— 高可用(弹性伸缩)

    作者 | 三未 前言 弹性伸缩是一种为了满足业务需求.保证服务质量.平衡服务成本的重要应用管理策略.弹性伸缩让应用的部署规模能够根据实时的业务量产生动态调整,在业务高峰期扩大部署规模,保证服务不被业务 ...

最新文章

  1. 小蚂蚁学习mysql性能优化(5)--SQL以及索引优化--需要添加索引的列
  2. NS2仿真:公交车移动周期模型及性能分析
  3. re2c php,PHP的词法解析器:re2c
  4. 作为Leader如何与团队成员更好地沟通?
  5. iptables规则备份和恢复、firewall的zone的操作、service的操作
  6. 行号 设置vim_Vim从小白到入门
  7. CSDN粉丝解答:六月份第二期精选——简单bug处理、资料索取、编程系统设计等
  8. 【Unity3D与23种设计模式】模板方法模式(Template Method)
  9. SQL 2005安装问题解决办法
  10. 异或!!不占用额外空间!!
  11. 华为4g无线路由器虚拟服务器设置方法,华为4g2pro路由器虚拟服务器设置
  12. java对菜单项的监听_我是新手,请问大神java菜单项和下拉列表添加监听和监听方法???有变量和方法就行了...
  13. 9型转x型 cobol_9家企业入列省首批试点 建设培育产教融合型企业
  14. 简述ip地址的abc类如何划分_IP 地址分类及 ABCDE 五类是如何划分的
  15. 百度贴吧界面html程序代码,如何把自己的网址转换为百度贴吧网址?
  16. 如何实现 React 中的状态自动保存?
  17. 老男孩22期python视频_老男孩教育python全栈视频22期
  18. 如何给自己的U盘自定义图标
  19. 小米A1(小米5X国际版)刷机完全指南
  20. delphi 控件大全(确实很全)

热门文章

  1. PR短视频模板 12个创意时尚快节奏Ins动态图形排版pr模板
  2. Linux 中的 Killall 命令及示例
  3. 国产计算机排行榜排名,国产OS排名出炉!十款OS上榜,第一名你想到没?
  4. 网站源码下载项目,小白简单搬运月入1w+
  5. 代码猴子——培养正确的编程态度和方法
  6. opencv环境配置攻略
  7. Three.js实战项目 烘培-云上城市
  8. 4G网络的VoLTE通话网络是什么?在物联网时代,语音通话网络会因此而被短时间内淘汰吗?
  9. 七夕,阿里云AI帮你算算你的撩妹战斗值
  10. 拒绝埋头苦干!PDF办公必备的实用小宝箱