У меня есть требование в F5, где мне нужно настроить несколько пулов, и все пулы будут использовать один виртуальный сервер [1 VIP] для получения трафика из внешнего мира. Я пытаюсь выяснить, требуется какая-то конкретная конфигурация, которой мне не хватает для достижения этой цели. На данный момент моя конфигурация F5 работает, когда я назначаю пул по умолчанию виртуальному серверу, так как мне нужно использовать 1 VIP с несколькими клиентами, размещенными на нем, поэтому я застрял на этом этапе. может кто-нибудь помочь мне здесь.
Вам нужно будет использовать iRules, чтобы иметь несколько пулов на одном VIP. См. Соответствующую документацию Вот
Теперь вам нужно подумать о том, как выбрать, какой пул использовать. Вы можете проверить значения хоста или URI следующим образом:
when HTTP_REQUEST {
if { [HTTP::uri] contains "blabla"} {
pool "Your pool name here"
}
}
Пожалуйста, дайте мне знать, если вам нужна дополнительная информация, я хорошо знаком с F5 iRules;)
Предполагая, что вы переключаете пул по имени приложения (читай: fqdn), вы можете назвать свои пулы соответствующим образом, и iRule может быть общим:
when HTTP_REQUEST {
if { [catch {pool [HTTP::host]}] } {
log local0. "error - pool [HTTP::host] does not exist"
# Set pool to default since HTTP::host did not match existing pool
pool [LB::server pool]
}
}