4.2 KiB
title | content_type | weight |
---|---|---|
Имена и идентификаторы объектов | concept | 20 |
Каждый объект в кластере имеет уникальное имя для конкретного типа ресурса. Кроме этого, у каждого объекта Kubernetes есть собственный уникальный идентификатор (UID) в пределах кластера.
Например, в одном и том же пространстве имён может быть только один Pod-объект с именем myapp-1234
, и при этом существовать объект Deployment с этим же названием myapp-1234
.
Для создания пользовательских неуникальных атрибутов у Kubernetes есть метки и аннотации.
Имена
{{< glossary_definition term_id="name" length="all" >}}
Ниже перечислены три типа распространённых требований к именам ресурсов.
Имена поддоменов DNS
Большинству типов ресурсов нужно указать имя, используемое в качестве имени поддомена DNS в соответствии с RFC 1123. Соответственно, имя должно:
- содержать не более 253 символов
- иметь только строчные буквенно-цифровые символы, '-' или '.'
- начинаться с буквенно-цифрового символа
- заканчивается буквенно-цифровым символом
Имена меток DNS
Некоторые типы ресурсов должны соответствовать стандарту меток DNS, который описан в RFC 1123. Таким образом, имя должно:
- содержать не более 63 символов
- содержать только строчные буквенно-цифровые символы или '-'
- начинаться с буквенно-цифрового символа
- заканчивается буквенно-цифровым символом
Имена сегментов пути
Определённые имена типов ресурсов должны быть закодированы для использования в качестве сегмента пути. Проще говоря, имя не может быть "." или "..", а также не может содержать "/" или "%".
Пример файла манифеста пода nginx-demo
.
apiVersion: v1
kind: Pod
metadata:
name: nginx-demo
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
{{< note >}} У отдельных типов ресурсов есть дополнительные ограничения именования. {{< /note >}}
Уникальные идентификаторы
{{< glossary_definition term_id="uid" length="all" >}}
Уникальные идентификатор (UID) в Kubernetes — это универсальные уникальные идентификаторы (известные также как Universally Unique IDentifier, сокращенно UUID). Эти идентификаторы стандартизированы под названием ISO/IEC 9834-8, а также как ITU-T X.667.
{{% heading "whatsnext" %}}
- Узнать подробнее про метки в Kubernetes.
- Посмотреть архитектуру идентификаторов и имён Kubernetes.