Нам нравится Zabbix на работе. Это, оказывается, прибывает установленное с Ubuntu также.
И это может отправить SMS среди целого плота других вещей.
Вам нужна активная + пассивная установка. Вот пример фрагмента nginx conf, чтобы вы начали:
upstream backend {
server 1.2.3.4:80 fail_timeout=5s max_fails=3;
server 4.5.6.7:80 backup;
}
server {
listen 80;
server_name whatevs.com;
location / {
proxy_pass http://backend;
}
}
Итак, «обычно» все запросы будут отправляться на хост 1.2.3.4. Если мы получим три ошибки в этом ящике, то 4.5.6.7 вступит во владение.
Балансировка нагрузки в nginx очень проста, мы просто настраиваем имена серверов в области upstream, где пишем список серверов для балансировки нагрузки.
nginx поддерживает другой алгоритм балансировки нагрузки по умолчанию это круглый робот, но мы настраиваем его различными ключами, например ip_hash...
http{
upstream servername{
ip_hash//for sticky hash
least_conn//FOR least connection
sever localhost:1001;
sever localhost:1002;
sever localhost:1003;
}
Расширяя ответ chrskly, вы можете настроить 3 флага / конфигурации.
В следующем примере GRPC, если главный сервер не может быть подключен в течение 7 секунд, переключитесь на резервное копирование и отметьте главный сервер как отключенный на 6000 секунд:
upstream grpcservers {
server 192.168.0.XX:9997 fail_timeout=6000s max_fails=1; # After 1 fail in 6000s, Main server is marked unavailable for 6000s.
server 192.168.0.XX:9999 backup;
}
location / {
grpc_pass grpc://grpcservers;
grpc_connect_timeout 7s; # If conn cant be made in 7sec, switch to backup
}