Csi-external-attacher#
Сsi-external-attacher - компонент управляет присоединением томов к pod. Он обеспечивает подключение томов к указанному pod. Компонент предоставляет API для присоединения томов и запускается в DropApp Plus в виде pod.
Последовательность выполнения#
Параметры командной строки Сsi-external-attacher представлены в таблице ниже.
Таблица. Параметры командной строки
Синтаксис флага |
Значение |
|---|---|
|
Путь к сокету драйвера CSI внутри модуля, который контейнер внешнего подключения будет использовать для выполнения операций CSI. По умолчанию используется |
|
Включает выборы главного процесса. Это полезно, когда для одного драйвера CSI работает несколько реплик одного и того же Сsi-external-attacher. Активным может быть только один из них |
|
Пространство имен, в котором запускается Сsi-external-attacher, и где будет создан объект выбора главного процесса. Рекомендуется, чтобы этот параметр заполнялся из DropApp Plus DownwardAPI |
|
Тайм-аут всех обращений к драйверу CSI. Он должен быть установлен на значение, которое подходит для большинства вызовов |
|
Количество рабочих узлов для обработки |
|
Время ожидания в случае неудачного старта. По умолчанию – |
|
Максимальное время отсрочки действия. По умолчанию – |
|
Сетевой адрес TCP, где будет прослушиваться HTTP-сервер для диагностики, включая метрики и проверку работоспособности при выборе главного процесса ( |
|
HTTP-путь, по которому будут отображаться метрики prometheus. По умолчанию |
|
Частота повторной синхронизации подключенных томов с драйвером. По умолчанию – |
|
Количество запросов в секунду, отправленных клиентом DropApp Plus на API server DropApp Plus. По умолчанию – |
|
Количество запросов к серверу API DropApp Plus, превышающее число запросов в секунду, которые можно отправить в любой момент времени. По умолчанию – |
|
Тип файловой системы тома для публикации по умолчанию. По умолчанию пустая строка |
Создайте новую учетную запись службы и предоставьте ей права для запуска Сsi-external-attacher.
Разверните Сsi-external-attacher:
oc create deploy/deployment.yamlСодержание манифеста будет следующим:
apiVersion: v1 kind: ServiceAccount metadata: name: csi-attacher namespace: default --- kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 metadata: name: external-attacher-runner rules: - apiGroups: [""] resources: ["persistentvolumes"] verbs: ["get", "list", "watch", "patch"] - apiGroups: ["storage.k8s.io"] resources: ["csinodes"] verbs: ["get", "list", "watch"] - apiGroups: ["storage.k8s.io"] resources: ["volumeattachments"] verbs: ["get", "list", "watch", "patch"] - apiGroups: ["storage.k8s.io"] resources: ["volumeattachments/status"] verbs: ["patch"] --- kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: csi-attacher-role subjects: - kind: ServiceAccount name: csi-attacher # replace with non-default namespace name namespace: default roleRef: kind: ClusterRole name: external-attacher-runner apiGroup: rbac.authorization.k8s.io --- kind: Role apiVersion: rbac.authorization.k8s.io/v1 metadata: # replace with non-default namespace name namespace: default name: external-attacher-cfg rules: - apiGroups: ["coordination.k8s.io"] resources: ["leases"] verbs: ["get", "watch", "list", "delete", "update", "create"] --- kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: csi-attacher-role-cfg namespace: default subjects: - kind: ServiceAccount name: csi-attacher namespace: default roleRef: kind: Role name: external-attacher-cfg apiGroup: rbac.authorization.k8s.ioЭтот файл содержит все объекты RBAC, необходимые для запуска Сsi-external-attacher.
Вышеприведенная команда – для создания развертывания в DropApp Plus. Deployment - это набор компонентов, которые запускаются вместе и выполняют определенную задачу. В данном случае, команда создает deployment, который запускает контейнер с драйвером DropApp Plus.
Сsi-external-attacher может работать в одном pod с другими внешними контроллерами CSI, такими как Csi-external-provisioner, Csi-external-snapshotter и Csi-external-resizer.
Результат#
Сsi-external-attacher настроен и готов к использованию.