WEB¶
Обзор¶
Persistence — это набор методов, обеспечивающих устойчивую маршрутизацию запросов: запросы от одного и того же клиента будут направляться к одному и тому же Worker.
ADC предоставляет несколько режимов persistence, используя данные из HTTP-заголовков (header, cookie), сети исходного IP-адреса или SSL-сессии (TLS 1.2).
В зависимости от выбранного метода, ADC сохраняет определённые атрибуты в таблице persistence и использует эти записи для маршрутизации последующих запросов.
Настройка¶
Перейдите в Traffic Management -> Persistence.
Чтобы создать новую запись Persistence, нажмите кнопку Add.
Чтобы удалить запись, выберите её, нажав чекбокс напротив имени Persistence, а затем нажмите Delete или используйте значок корзины в столбце Actions.
Чтобы обновить список записей Persistence, нажмите кнопку Refresh.
Примечание
Чтобы удалить все записи Persistence, отметьте чекбокс рядом с колонкой Name и затем нажмите Delete.
При добавлении новой записи Persistence система запрашивает имя, таймаут и режим работы.
Таймаут — это время жизни записи Persistence после закрытия последней связанной сессии. По умолчанию — 30 секунд.
Поля name и mode обязательны.
После заполнения обязательных полей, нажмите кнопку 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в качестве длины маски подсети.