Csi-driver-shared-resource#
Csi-driver-shared-resource предназначен для создания встроенных временных томов, содержащих данные из объектов Secret или ConfigMap. Обеспечивает безопасное использование содержимого этих объектов в различных namespaces в кластере DropApp Plus.
Csi-driver-shared-resource предоставляет следующие функциональности:
Позволяет администраторам кластера создавать встроенные временные тома, содержащие данные из объектов
SecretилиConfigMap.Обеспечивает безопасное использование данных из объектов
SecretилиConfigMapв различных namespaces в кластере.Поддерживает два типа общих ресурсов:
SharedSecretдляSecretобъектов иSharedConfigMapдляConfigMapобъектов.
Последовательность выполнения#
Рекомендуемые флаги приведены в таблице.
Таблица. Рекомендуемые флаги Csi-driver-shared-resource
Синтаксис флага |
Значение |
|---|---|
|
Применить конфигурацию из файла |
|
Получить список |
|
Узнать, какие |
|
Создать связку роли с аккаунтом |
Создание SharedSecret для Secret#
Выполните команду:
$ oc apply -f - <<EOF
apiVersion: sharedresource.openshift.io/v1alpha1
kind: SharedSecret
metadata:
name: my-share
spec:
secretRef:
name: <name of secret>
namespace: <namespace of secret>
EOF
Использование SharedSecret в pod#
Создайте роли:
oc apply -f - <<EOF apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: shared-resource-my-share namespace: my-namespace rules: - apiGroups: - sharedresource.openshift.io resources: - sharedsecrets resourceNames: - my-share verbs: - use EOFВыполните привязку к роли:
oc create rolebinding shared-resource-my-share --role=shared-resource-my-share --serviceaccount=my-namespace:builderСоздайте pod с использованием
SharedSecret:oc apply -f - <<EOF kind: Pod apiVersion: v1 metadata: name: my-app namespace: my-namespace spec: serviceAccountName: default # containers omitted …. Follow standard use of ‘volumeMounts’ for referencing your shared resource volume volumes: - name: my-csi-volume csi: readOnly: true driver: csi.sharedresource.openshift.io volumeAttributes: sharedSecret: my-share EOF
Создание SharedConfigMap для ConfigMap#
Выполните команду:
oc apply -f - <<EOF apiVersion: sharedresource.openshift.io/v1alpha1 kind: SharedConfigMap metadata: name: my-share spec: configMapRef: name: <name of configmap> namespace: <namespace of configmap> EOF
Использование SharedConfigMap в pod#
Выполните шаги аналогично пункту Использование SharedSecret в pod.
Результат#
Csi-driver-shared-resource настроен и готов к использованию.