Home >

Группы высокой доступности

Архитектура SafeNet Luna HSM предоставляет широкие возможности для создания надежных и масштабируемых систем криптографической обработки данных. Чтобы обеспечить бесперебойную работу какого-либо важного для системы приложения, можно, например, на двух (или более) HSM выделить для этого приложения партиции, объединить эти партиции в одну логическую группу; тогда, если один из HSM станет недоступен, это приложение продолжит работу с партициями оставшимися на других HSM. Такое решение позволит, кроме того, проводить профилактику системы не прерывая работу приложения. Дополнительным преимуществом организации партиций в группы будет повышение производительности системы - криптографические операции, затребованные приложением, распределяются между партициями. Кроме того, криптографические объекты реплицируются между всеми партициями группы, обеспечивая непрерывное резервирование.

Режимом высокой доступости управляет программное обеспечение SafeNet Luna HSM Client. Сама партиция не "знает" что она входит в группу - Вы конфигурируете взаимодействие в группе на уровне использующего её приложения. То как Вы организуете работу группы высокой доступности, зависит от конкретой задачи и требуемой производительности.

Производительность

Если выполняемые операции носят однотипный характер (например, множественные операции подписи на одном и том же ключе), рост производительности будет прямо пропорционален увеличению количества членов группы. Наилучшим решением здесь представляется организация группы размером, достаточным чтобы обеспечить проектную производительность для использующего её сервера приложений, а для случаев непредусмотренных пиковых нагрузок добавить еще один HSM (на практике, если пики не ожидаются одновременно, он может обслуживать пиковые нагрузки нескольких приложений).

Балансировка нагрузки

Запросы от приложений на криптографическую обработку данных, направляемые группе, распределяются между членами группы равномерно. В соответствии с алгоритмом распределения заданий между членами группы, задача отправляется наименее занятому в этот момент члену группы. При этом принимается во внимание размер данных. Это нужно для того, чтобы чтобы обеспечить балансировку очередей даже в том случае, когда партиции выполняют длительные операции с большими числами. Этот метод хорошо работает в случае исполнения повторяющегося набора операций. Ели же повторяющаяся последовательность прерывается, режим балансировки меняется соответственноо типу операций:

>Балансировщик обрабатывает односложные (не связанные друг с другом) криптографические операции.

>Балансировщик обрабатывает составные (связанные друг с другом) криптографические операции.

>Балансировщик НЕ обрабатывает составные (связанные друг с другом) запросы на ВЫДАЧУ информации. В этом случае затраты на распределение таких запросов между членами группы не оправдываются. Поэтому все такие запросы просто передаются на обработку одному из группы.

> Балансировке также не подлежат и запросы на управление ключами. Операции, связанные с состоянием ключей (создание, удаление) осуществляет один из членов группа и по завершению, реплицирует результат остальным.

Репликация ключей

Сразу после создания на партиции ключа по запросу приложения, он автоматически реплицируется по всем членам группы (входящим в группу партициям) и лишь после этого приложение получает подтверждение о создании ключа. Таким образом, ключ создается на одной партиции, входящей в группу, и реплицируется на все остальные члены группы. Если в этот момент хотя бы один из членов группу недоступен, группа продолжает попытки реплицировать ключ до тех пор, пока репликация не пройдет успешно, либо до исчерпания заданного количества попыток. Как только ключ среплицирован на все партиции группы, приложение получает код подтверждения о том, что ключ готов к использованию.

Процесс репликации основан на протоколе клонирования Luna, предусматривающем взаимную аутентификацию, конфиденциальность и проверку целостности для каждого объекта клонируемого с одной партиции на другую. Из этого с очевидностью следует, что все партиции должны принадлежать к одному и тому же домену клонирования.

Failover

Если один из членов группы (партиция) вышел из строя, то эта партиция удаляется из списка группы и все операции её очереди автоматически распределяются между оставшимися. Мониторинг состояния группы постоянно осуществляется SafeNet Luna HSM Client на двух уровнях:

> сетевом – если соединение отсутствует более 20 секунд, генерируется событие ошибки.

>завершение выполнения команды – если команда не исполнена в течении 20 секунд, также генерируется код ошибки.

Группа будет обслуживать запросы до тех пор, пока функционирует хотя бы один член группы.

Восстановление

При восстановлении работоспособности члена группы, система в большинстве случаев автоматически возвращает его группу при первой же возможности. Вы можете поменять настройки автоматического восстановления таким образом, чтобы необходимость ручного вмешательства в процесс восстановления соответствовала задачам вашего предприятия и не вызывала дополнительных неудобств. В любом случае - происходит ли процесс восстановления автоматически или вручную, Вам не нужно перезапускать приложение работающее с этой группой. В процессе восстановления:

>Все криптографические объекты, созданные за время пока данный член группы был недоступен, автоматически реплицируются действующим партициям.

>"Ожившая" партиция возвращается в общий список частников балансировки нагрузки.

Автоматическое восстановление

В этом режиме система предпринимает периодические попытки вернуть не отвечающего на запросы члена группы в список действующих. Частота таких попыток может быть изменена. Опыт показывает, что большинство пользователей оборудования выбирают режим самовосстановления во всех конфигурациях.

Ручное восстановление

Для этого запустите команду client recovery и попытка восстановить данные будет предпринята при следующем запросе приложения к HSM. Все криптографические объекты, созданные за время пока данный член группы был недоступен, автоматически реплицируются действующим партициям.

При ручном восстановлении систему перезапускать не требуется.

Полный отказ

Под полным отказом мы понимаем обнуление всех данных, хранящихся в HSM - по причине ли полного выхода его из строя или при реинициализации. В этом случае Вам нужно заменить неисправное устройство и включить новое в группу. Все ключи и очереди балансировщика для нового члена группы восстановятся автоматически.

Холодный резерв

После того, как Вы сформировали группу высокой доступности, Вы можете назначить некоторых из них в качестве холодного резерва. Криптографические объекты реплицируются по всем членам группы, включая холодный резерв, однако члены группы холодного резерва не участвуют в общей работе группы пока она работоспособна. Но если активные члены группы выходят из строя, то холодный резерв немедленно их заменяет и приложение может продолжить беспрерывную работу в привычных условиях.

Организация группы высокой доступности для разных моделей HSM

Как правило,Gemalto рекомендует включать в группы высокой доступности HSM с однотипными версиями ПО/прошивка; дело в том, что HSM разных версий обладают разными возможностями, и тогда возможности группы будут ограничены только теми, которые являются общими для этих версий. Группа, состоящая из HSM разных версий, будет способна выполнять ограниченный набор криптографических операций или иметь ограничения, если активирован режим FIPS. Тем не менее,SafeNet Luna Network HSM версий 6 и 7 можно объединять в группы. Такая конфигурация удобна, если надо провести миграцию ключей с HSM версии 6 на версию 7, и/или осуществить постепенный переход с 6й на 7ю версию.