Настройка подключения к S3-совместимому хранилищу
Чтобы использовать S3-совместимое хранилище в качестве пространства для хранения общих файлов конфигураций и файлов состояний, выполните шаги:
-
Cоздайте конфигурационный файл
/etc/salt/master.d/fileserver_backend.confи в параметреfileserver_backendукажите имя хранилища, используемое в качестве бэкенда для файлов.Пример:
fileserver_backend: - s3fs
-
Cоздайте конфигурационный файл
/etc/salt/master.d/s3.confи задайте в нем настройки подключения к S3-совместимому хранилищу.Пример:
s3.service_url: <s3_hostname>:<s3_port> s3.keyid: <acceess_key> s3.key: <secret-key> s3.buckets: - salt-bucket s3.path_style: True s3.location: <region>Где:
-
s3.service_url— URL-адрес и порт для обращения к S3-совместимому хранилищу; -
s3.keyid— ключ доступа, который обеспечивает авторизацию и доступ к S3-совместимому хранилищу; -
s3.key— секретный ключ, который обеспечивает авторизацию и доступ к S3-совместимому хранилищу; -
s3.buckets— имя бакета (например,salt-bucket) для хранения файлов состояния и формул; -
s3.path_style— стиль представления пути к объектам в S3-совместимом хранилище; -
s3.location— регион, в котором расположено S3-совместимое хранилище.Для хранилища Ceph параметр s3.locationне учитывается. Если вы используете Сeph в качестве хранилища, укажите значениеdefault.Подробное описание всех параметров приведено в официальной документации.
-
Настройка SSL
Чтобы подключиться к S3-совместимому хранилищу используя защищенное SSL-соединение, в конфигурационном файле
/etc/salt/master.d/s3.conf задайте значения параметров:
s3.https_enable: True
s3.verify_ssl: False
При выставлении значения False для параметра verify_ssl валидация сертификата S3-совместимого хранилища
выполняться не будет.
|
Если требуется валидация сертификатов S3-совместимого хранилища, выполните следующие действия, выбрав один из двух вариантов, описанных ниже:
-
вариант 1:
-
Скопируйте файл СА-сертификатов на сервер управления (master).
-
Определите расположение хранилища сертификатов на сервере управления (master):
$ /opt/saltstack/salt/bin/python3 Python 3.10.13 (main, Oct 4 2023, 21:54:22) [GCC 11.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import certifi >>> certifi.where() '/opt/saltstack/salt/lib/python3.10/site-packages/certifi/cacert.pem'
-
Добавьте сертификат в хранилище.
Пример команды для добавления сертификата
ca.crt:cat ca.crt | sudo tee -a /opt/saltstack/salt/lib/python3.10/site-packages/certifi/cacert.pem
-
В конфигурационном файле
/etc/salt/master.d/s3.confзадайте значение параметраverify_ssl: True(аналогично параметруhttps_enable: True).Пример:
s3.verify_ssl: True s3.https_enable: True
-
-
вариант 2:
-
Разместите файл СА-сертификатов, используемый в качестве Issuer в S3-совместимом хранилище, на сервере управления (master) по пути
/etc/salt/pki/ca.crt. -
В конфигурационном файле
/etc/salt/master.d/s3.confзадайте значение параметраverify_ssl: /etc/salt/pki/ca.crt.Пример:
s3.verify_ssl: /etc/salt/pki/ca.crt s3.https_enable: True
-