WEB

Обзор

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

ADC предоставляет несколько режимов persistence, используя данные из HTTP-заголовков (header, cookie), сети исходного IP-адреса или SSL-сессии (TLS 1.2).

В зависимости от выбранного метода, ADC сохраняет определённые атрибуты в таблице persistence и использует эти записи для маршрутизации последующих запросов.

Настройка

Перейдите в Traffic Management -> Persistence.

../../_images/persistence_main_page.png

Чтобы создать новую запись Persistence, нажмите кнопку Add.

Чтобы удалить запись, выберите её, нажав чекбокс напротив имени Persistence, а затем нажмите Delete или используйте значок корзины в столбце Actions.

Чтобы обновить список записей Persistence, нажмите кнопку Refresh.

Примечание

Чтобы удалить все записи Persistence, отметьте чекбокс рядом с колонкой Name и затем нажмите Delete.

При добавлении новой записи Persistence система запрашивает имя, таймаут и режим работы.

Таймаут — это время жизни записи Persistence после закрытия последней связанной сессии. По умолчанию — 30 секунд.

Поля name и mode обязательны.

../../_images/persistence_add.png

После заполнения обязательных полей, нажмите кнопку Add.

Чтобы отредактировать запись Persistence, нажмите на значок Edit в столбце Actions. После внесения изменений, нажмите Save.

Примечание

Persistence задаётся при создании Сервиса.

Режимы Persistence

Passive cookie

В этом режиме persistence основана на cookie, генерируемых Worker.

ADC проверяет ответы от Worker, и если найдено cookie с указанным Param, его значение сохраняется в таблице persistence.

Запросы от клиента с совпадающим значением cookie направляются на тот же Worker.

Здесь Param — это имя cookie, генерируемого Worker, которое ADC отслеживает для обеспечения persistence.

Active cookie

В отличие от Passive cookie, режим Active cookie не использует cookie, сгенерированные Worker.

Вместо этого ADC генерирует собственный cookie с указанным Param и вставляет его в ответ клиенту. Значение cookie сохраняется в таблице persistence и используется для связывания будущих запросов клиента с соответствующим Worker.

Здесь Param — это имя cookie, которое ADC будет генерировать и вставлять в ответы клиентам для отслеживания persistence.

Header

Этот режим использует значение указанного HTTP-заголовка из входящих запросов клиента для обеспечения persistence.

Когда заголовок с настроенным Param присутствует, его значение сохраняется в таблице persistence и используется для направления будущих запросов на тот же Worker.

Здесь Param — это имя HTTP-заголовка, значение которого будет использоваться для persistence.

Source IP

Этот режим использует сеть исходного IP-адреса клиента для обеспечения persistence. ADC сохраняет сеть исходного IP-адреса клиента в таблице persistence и балансирует все последующие запросы из той же подсети на один и тот же Worker.

Вы можете задать длину префикса для IPv4 (значение от 0 до 32) или IPv6 (значение от 0 до 128) адресов. Эти значения определяют уровень детализации при сопоставлении Persistence (например, применяется ли он к конкретному IP-адресу или к целому диапазону сетевых адресов).

SSL SID

В этом режиме ADC использует идентификатор SSL-сессии (как определено в TLS 1.2) в качестве ключа persistence.

Когда клиент инициирует SSL-рукопожатие, ADC извлекает идентификатор сессии и сохраняет его в таблице persistence. Последующие запросы с тем же идентификатором сессии направляются на тот же Worker.

Примечание

При использовании TLS 1.3 поле session ID недоступно. В этом случае ADC переключается на source-IP persistence, используя указанный prefix-length в качестве длины маски подсети.