Translate Working with Kubernetes Objects section into Russian

This commit is contained in:
Alexey Pyltsyn
2020-04-10 13:26:47 +03:00
parent b937f2a0ac
commit ae9eb70652
12 changed files with 1007 additions and 0 deletions
@@ -0,0 +1,78 @@
---
title: Имена и идентификаторы объектов
content_template: templates/concept
weight: 20
---
{{% capture overview %}}
Каждый объект в кластере имеет уникальное [_имя_](#имена) для конкретного типа ресурса.
Кроме этого, у каждого объекта Kubernetes есть собственный [_уникальный идентификатор (UID)_](#идентификаторы) в пределах кластера.
Например, в одном и том же [пространстве имён](/ru/docs/concepts/overview/working-with-objects/namespaces/) может быть только один Pod-объект с именем `myapp-1234`, и при этом существовать объект Deployment с этим же названием `myapp-1234`.
Для создания пользовательских неуникальных атрибутов у Kubernetes есть [метки](/ru/docs/concepts/overview/working-with-objects/labels/) и [аннотации](/ru/docs/concepts/overview/working-with-objects/annotations/).
{{% /capture %}}
{{% capture body %}}
## Имена
{{< glossary_definition term_id="name" length="all" >}}
Ниже перечислены три типа распространённых требований к именам ресурсов.
### Имена поддоменов DNS
Большинству типов ресурсов нужно указать имя, используемое в качестве имени поддомена DNS в соответствии с [RFC 1123](https://tools.ietf.org/html/rfc1123). Соответственно, имя должно:
- содержать не более 253 символов
- иметь только строчные буквенно-цифровые символы, '-' или '.'
- начинаться с буквенно-цифрового символа
- заканчивается буквенно-цифровым символом
### Имена меток DNS
Некоторые типы ресурсов должны соответствовать стандарту меток DNS, который описан в [RFC 1123](https://tools.ietf.org/html/rfc1123). Таким образом, имя должно:
- содержать не более 63 символов
- содержать только строчные буквенно-цифровые символы или '.'
- начинаться с буквенно-цифрового символа
- заканчивается буквенно-цифровым символом
### Имена сегментов пути
Определённые имена типов ресурсов должны закодированы для использования в качестве сегмента пути. Проще говоря, имя не может быть "." или "..", а также не может содержать "/" или "%".
Пример файла манифеста пода `nginx-demo`.
```yaml
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.
{{% /capture %}}
{{% capture whatsnext %}}
* Узнать подробнее про [метки](/ru/docs/concepts/overview/working-with-objects/labels/) в Kubernetes.
* Посмотреть архитектуру [идентификаторов и имён Kubernetes](https://git.k8s.io/community/contributors/design-proposals/architecture/identifiers.md).
{{% /capture %}}