SLAPD-NDB(5)

НАЗВАНИЕ

slapd-ndb - механизм манипуляции данными для slapd MySQL NDB

ОБЗОР

/usr/local/etc/openldap/slapd.conf

ОПИСАНИЕ

Механизм манипуляции данными для slapd(8) ndb использует для хранения данных пакет MySQL Cluster через его API NDB. Он обеспечивает отказоустойчивость с максимальной масштабируемостью, а также возможность совместимости с SQL.

Этот механизм разработан для хранения информации LDAP с использованием таблиц, также видимых из SQL. Для создания этих таблиц в нём используется высокоуровневое API SQL, а для хранения и извлечения данных из этих таблиц используется низкоуровневое API NDB. Движок NDB Cluster позволяет разделять данные между несколькими узлами данных, а этот механизм манипуляции данными позволяет нескольким экземплярам slapd одновременно совместно работать с указанной базой данных.

Общий подход заключается в использовании отдельных таблиц для каждого объектного класса LDAP. Данные записей, состоящих из нескольких объектных классов, будут распределены по нескольким таблицам. В таблицах с данными в качестве первичного ключа используется 64-битный entryID. Иерархия DIT хранится в отдельной таблице, в которой DN записей отображаются в entryID этих записей.

Этот механизм манипуляции данными является экспериментальным. Хотя этот механизм позиционируется как механизм манипуляции данными общего назначения, в настоящее время в нём отсутствует ряд общепринятых функций LDAP. Подробнее смотрите в файле TODO дерева исходных кодов OpenLDAP.

КОНФИГУРАЦИЯ

Приведённые ниже директивы slapd.conf применяются к базам данных механизма манипуляции данными ndb. То есть, они должны следовать за строкой "database ndb" и находиться до последующих строк "backend" или "database". Другие относящиеся к базам данных директивы описаны в man-странице slapd.conf(5).

КОНФИГУРАЦИЯ ИСТОЧНИКА ДАННЫХ

dbhost <имя_хоста>

  Имя или IP-адрес хоста, на котором запущен сервер MySQL. Значение по умолчанию - "localhost". На системах Unix соединение с локальным сервером осуществляется с использованием сокета домена Unix, путь к которому указывается в директиве dbsocket.
dbuser <имя_пользователя>
  Идентификатор учётной записи MySQL, который будет использоваться при соединении с сервером MySQL. У выбранного пользователя должно быть достаточно привилегий для манипулирования SQL-таблицами в целевой базе данных.
dbpasswd <пароль>
  Пароль для пользователя dbuser.
dbname <имя_базы_данных>
  Имя базы данных MySQL, которая будет использоваться.
dbport <порт>
  Номер порта, который будет использоваться для TCP-соединения с сервером MySQL.
dbsocket <путь>
  Сокет, который будет использоваться для соединения с локальным сервером MySQL.
dbflag <целое_число>
  Клиентские флаги для сессии MySQL. Подробности смотрите в документации MySQL.
dbconnect <строка_соединения>
  Имя или IP-адрес хоста, на котором запущен управляющий сервер кластера. Значение по умолчанию - "localhost".
dbconnections <целое_число>
  Количество кластерных соединений, которые будут установлены. Использование вплоть до 4 соединений может повысить производительность при более высокой нагрузке. Значение по умолчанию - 1.

КОНФИГУРАЦИЯ СХЕМЫ ДАННЫХ

attrlen <атрибут> <размер>
  Определяет, какой размер столбца использовать для хранения значений конкретного атрибута. Атрибуты LDAP хранятся в отдельных столбцах SQL-таблиц. Максимальный размер каждого столбца должен быть определён при создании таких таблиц. Если в определении схемы данных LDAP указано ограничение на размер значения атрибута, то эта величина будет использоваться как значение по умолчанию. Если такого ограничения нет, то по умолчанию будет использоваться размер в 128 байт. Максимально допустимое значение на текущий момент составляет 1024 байта.
index <атрибут[,атрибут...]>
  Определяет список атрибутов, для которых необходимо поддерживать индексирование. В настоящее время не реализована поддержка индексирования по подстрокам. Единая структура индексов обеспечивает индексирование наличия атрибута, эквивалентности и неэквивалентности значений для указанных атрибутов.
attrset <имя_набора> <атрибуты>
  Определяет список атрибутов, которые следует рассматривать как набор атрибутов. Данная директива создаёт таблицу с именем имя_набора, в которой будут содержаться все перечисленные атрибуты. Обычно атрибут располагается в таблице, названной по имени объектного класса, в котором он используется. Однако, атрибуты с одним именем разрешено хранить только в одной таблице. При наследовании объектных классов повторяющиеся атрибуты сохраняются только в таблице вышестоящего объектного класса. Наборы атрибутов должны быть определены для любых атрибутов, используемых в нескольких несвязанных друг с другом объектных классах, то есть классах, которые не связаны простой цепочкой наследования.

КОНТРОЛЬ ДОСТУПА

Механизм манипуляции данными ndb соблюдает большинство семантик контроля доступа, указанных в man-странице slapd.access(5).

ФАЙЛЫ

/usr/local/etc/openldap/slapd.conf
  конфигурационный файл slapd по умолчанию.

СМОТРИТЕ ТАКЖЕ

slapd.conf(5), slapd-config(5), slapd(8), slapadd(8), slapcat(8), slapindex(8), документацию кластера MySQL.

AUTHOR

Howard Chu, при содействии Johan Andersson и других людей из MySQL.


OpenLDAP 2.4.46 SLAPD-NDB (5) 2018/03/22
Страница сгенерирована с использованием manServer 1.07.