Kubernetes 对象名称和IDs

网友投稿 793 2022-10-30

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

Kubernetes 对象名称和IDs

集群中的每一个对象都一个名称 来标识在同类资源中的唯一性。每个 Kubernetes 对象也有一个UID 来标识在整个集群中的唯一性。

在同一个namespace中只能命名一个名为 myapp-1234 的 Pod, 但是可以命名一个 Pod 和一个 Deployment 同为 myapp-1234. 对于非唯一的用户提供的属性,Kubernetes 提供了标签和注释。

名称

客户端提供的字符串,引用资源 url 中的对象,如/api/v1/pods/some name。

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

以下是比较常见的三种资源命名约束。

DNS 子域名

某些资源类型需要一个 name 来作为一个 DNS 子域名,见定义 RFC 1123。也就是命名必须满足如下规则:

不能超过253个字符只能包含字母数字,以及'-' 和 '.'须以字母数字开头须以字母数字结尾

DNS 标签名称

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

最多63个字符只能包含字母数字,以及'-'须以字母数字开头须以字母数字结尾

Path 部分名称

一些用与 Path 部分的资源类型要求名称能被安全的 encode。换句话说,其名称不能含有这些字符 "."、".."、"/"或"%"。

下面是一个名为nginx-demo的 Pod 的配置清单:

apiVersion: v1kind: Podmetadata: name: nginx-demospec: containers: - name: nginx image: nginx:1.14.2 ports: - containerPort: 80

说明:某些资源类型可能有其相应的附加命名约束。

UIDs

Kubernetes 系统生成的字符串,唯一标识对象。

在 Kubernetes 集群的整个生命周期中创建的每个对象都有一个不同的 uid,它旨在区分类似实体的历史事件。

Kubernetes UIDs 是通用的唯一标识符 (也叫 UUIDs).UUIDs 是标准化的,见 ISO/IEC 9834-8 和 ITU-T X.667.

上一篇:系统应用成效二
下一篇:系统应用成效一
相关文章

 发表评论

暂时没有评论,来抢沙发吧~