Translate content/ru/docs/concepts/architecture/controller.md to russian (#27564)
* Add description to index file for content/ru/docs/_index.mdi * Add cloud-controller.md file to content/ru/docs/concepts/architecture/cloud-controller.md * Add cloud-controller.md to content/ru/docs/concepts/architecture/cloud-controller.md * Full translate cloud-controller.md file in the content/ru/docs/concepts/architecture/cloud-controller.md * Full translate cloud-controller.md file in the content/ru/docs/concepts/architecture/controller.md * Update controller.md * Update cloud-controller.md * Update cloud-controller.md * Update controller.md * Update cloud-controller.md * Update controller.md * Update controller.md * Edit [ru] community/static/README.md * Full translate control-plane-node-communication.md file in the content/ru/docs/concepts/architecture * Update cloud-controller.md * [ru] Update translate controller.md file in the content/ru/docs/concepts/architecture * Update cloud-controller.md * Update cloud-controller.md * [ru] Add translate cloud-controller-manager.md file in the content/ru/docs/reference/glossary * [ru] Add translate community-values.md file in the content/ru/community/static
This commit is contained in:
@@ -0,0 +1,192 @@
|
||||
---
|
||||
title: Диспетчер облочных контроллеров
|
||||
content_type: concept
|
||||
weight: 40
|
||||
---
|
||||
|
||||
<!-- overview -->
|
||||
|
||||
{{< feature-state state="beta" for_k8s_version="v1.11" >}}
|
||||
|
||||
Технологии облочной инфраструктуры позволяет запускать Kubernetes в общедоступных, частных и гибритных облоках. Kubernetes верит в автоматизированную,управляемую API инфраструктуру без жесткой связи между компонентами.
|
||||
|
||||
{{< glossary_definition term_id="cloud-controller-manager" length="all" prepend="Диспетчер облочных контроллеров">}}
|
||||
|
||||
Диспетчер облочных контроллеров структурирован с использованием механизма плагинов, которые позволяют различным облочным провайдерам интегрировать свои платформы с Kubernetes.
|
||||
|
||||
|
||||
|
||||
<!-- body -->
|
||||
|
||||
## Дизайн
|
||||
|
||||

|
||||
|
||||
Диспетчер облочных контроллеров работает в панели управления как реплицированный набот процессов (обычно это контейнер в Pod-ах). Каждый диспетчер облочных контроллеров реализует многоразовые {{< glossary_tooltip text="контроллеры" term_id="controller" >}} в единственном процессе.
|
||||
|
||||
|
||||
{{< note >}}
|
||||
Вы так же можете запустить диспетчер облочных контроллеров как {{< glossary_tooltip text="дополнение" term_id="addons" >}} Kubernetes, а некак часть панели управления.
|
||||
{{< /note >}}
|
||||
|
||||
## Функции диспетчера облочных контроллеров {#functions-of-the-ccm}
|
||||
|
||||
Контроллеры внутри диспетчера облочных контроллеров включают в себя:
|
||||
|
||||
### Контролер узла
|
||||
|
||||
Контроллер узла отвечает за создание объектов {{< glossary_tooltip text="узла" term_id="node" >}} при создании новых серверов в вашей облочной инфраструктуре. Контроллер узла получает информацию
|
||||
о работающих хостах внутри вашего арендуемого облочного провайдера.
|
||||
Контроллер узла выполняет следующие функции:
|
||||
|
||||
1. Инициализация объектов узла для каждого сервера, контроллер которого через API облочного провайдера.
|
||||
2. Аннотирование и маркировка объеко узла специфичной для облока информацией, такой как регион, в котором развернут узел и доступные ему ресурсы (процессор, память и т.д.).
|
||||
3. Получение имени хоста и сетевых адресов.
|
||||
4. Проверка работоспособности ущла. В случае, если узел перестает отвечать на запросы, этот контроллер проверяется с помощью API вашего облочного провайдера, был ли сервер деактевирован / удален / прекращен.
|
||||
Если узел был удален из облока, контроллер удлаяет объект узла из вашего Kubernetes кластера..
|
||||
|
||||
Некоторые облочные провайдеры реализуют его разделение на контроллер узла и отдельный контроллер жизненного цикла узла.
|
||||
|
||||
### Контролер маршрута
|
||||
|
||||
Контролер маршрута отвечае за соответствующую настройку маршрутов облоке, чтобы контейнеры на разных узлах кластера Kubernetes могли взаимодействовать друг с другом.
|
||||
|
||||
В зависимости от облочного провайдера, контроллер маршрута способен также выделять блоки IP адресов для сети Pod.
|
||||
|
||||
### Сервисный контроллер
|
||||
|
||||
{{< glossary_tooltip text="Службы" term_id="service" >}} интегрируются с компонентами облочной инфраструктуры, такими как управляемые балансировщики нагрузки, IP адреса, фильтрация сетевых пакетов и проверка работоспособности целевых объектов. Сервисный контроллер взаимодействует с API вашего облочного провайдера для настройки балансировщиков нагрузки и других компонентов инфраструктуры, когда вы объявляете ресурсные службы которые он требует.
|
||||
|
||||
## Авторизация
|
||||
|
||||
В этом разделе разбирается доступ, который нужен для управления облочным контроллером к различным объектам API для выполнения своих операций.
|
||||
|
||||
### Контроллер узла {#authorization-node-controller}
|
||||
|
||||
Контроллер узла работает только с объектом узла. Он требует полного доступа для и изменения объектов узла.
|
||||
|
||||
`v1/Node`:
|
||||
|
||||
- Get
|
||||
- List
|
||||
- Create
|
||||
- Update
|
||||
- Patch
|
||||
- Watch
|
||||
- Delete
|
||||
|
||||
### Контролер маршрута {#authorization-route-controller}
|
||||
|
||||
Контролер маршрута прослушивает создание объектов узла и соответствующим образом настраивает маршруты. Для этого требуется получить доступ к объектам узла.
|
||||
|
||||
`v1/Node`:
|
||||
|
||||
- Get
|
||||
|
||||
### Сервисный контроллер {#authorization-service-controller}
|
||||
|
||||
Сервисный контроллер прослушивает события Create, Update и Delete объектов службы, а затем соответствующим образом настраивает конечные точки для этих соответствующих сервисов.
|
||||
|
||||
Для доступа к сервисам, требуется доступ к событиям List и Watch. Для обновления сервисов, требуется доступ к событиям Patch и Update.
|
||||
|
||||
Чтобы настроить ресурсы конечных точек для сервисов, требуется доступ к событиям Create, List, Get, Watch, и Update.
|
||||
|
||||
`v1/Service`:
|
||||
|
||||
- List
|
||||
- Get
|
||||
- Watch
|
||||
- Patch
|
||||
- Update
|
||||
|
||||
### Другие {#authorization-miscellaneous}
|
||||
|
||||
Реализация ядра диспетчера облочных контроллеров требует доступ для создания создания объектов события, а для обеспечения безопасной работы требуется доступ для создания учетных записей сервисов (ServiceAccounts).
|
||||
|
||||
`v1/Event`:
|
||||
|
||||
- Create
|
||||
- Patch
|
||||
- Update
|
||||
|
||||
`v1/ServiceAccount`:
|
||||
|
||||
- Create
|
||||
|
||||
The {{< glossary_tooltip term_id="rbac" text="RBAC" >}} ClusterRole для диспетчера облочных контроллеров выглядить так:
|
||||
|
||||
```yaml
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: cloud-controller-manager
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- create
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- nodes
|
||||
verbs:
|
||||
- '*'
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- nodes/status
|
||||
verbs:
|
||||
- patch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- services
|
||||
verbs:
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- serviceaccounts
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- persistentvolumes
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- endpoints
|
||||
verbs:
|
||||
- create
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- update
|
||||
```
|
||||
|
||||
|
||||
## {{% heading "whatsnext" %}}
|
||||
|
||||
[Администрирование диспетчера облочных контроллеров](/docs/tasks/administer-cluster/running-cloud-controller/#cloud-controller-manager)
|
||||
содержить инструкции по запуску и управлению диспетером облочных контроллеров.
|
||||
|
||||
Хотите знать как реализовать свой собственный диспетчер облочных контроллеров или расширить проект?
|
||||
|
||||
Диспетчер облочных контроллеров использует интерфейс Go, который позволяет реализовать подключение из любого облока. В частности, он использует `CloudProvider` интерфейс, который определен в [`cloud.go`](https://github.com/kubernetes/cloud-provider/blob/release-1.17/cloud.go#L42-L62) из [kubernetes/cloud-provider](https://github.com/kubernetes/cloud-provider).
|
||||
|
||||
Реализация общих контроллеров выделенных в этом документе (Node, Route, и Service),а так же некоторые возведения вместе с общим облочным провайдерским интерфейсом являются частью ядра Kubernetes. особые реализации, для облочных провайдеров находятся вне ядра Kubernetes и реализуют интерфейс `CloudProvider`.
|
||||
|
||||
Дополнительные сведения о разработке плагинов см. в разделе [Разработка диспетчера облочных контроллеров](/docs/tasks/administer-cluster/developing-cloud-controller-manager/).
|
||||
Reference in New Issue
Block a user