11.1. Логические компоненты балансировщика¶
Для работы балансировщика необходимы только 4 компонента: Worker, Target-группа, Access point и Сервис.
Вначале создается Target-группа, к которой привязывается Worker (сервер).
Потом создается Сервис, к которому привязывается Target-группа с Worker.
И в конце к Сервису привязывается Access point.
Остальные компоненты являются дополнительными и служат для расширения функционала балансировщика.
![digraph {
bgcolor="transparent";
node [shape=box, color="white", fontcolor="white"];
edge [color="white", fontcolor="white"];
W [label = "Worker"];
TG [label = "Target-группа"];
S [label = "Сервис"];
AP [label = "Access point"];
C [label = "Сертификаты"];
TCP [label = "TCP-профиль"];
HM [label = "Health Monitor"];
NAT [label = "NAT pool"];
PER [label = "Persistence-группа"];
ACL [label = "Access-лист"];
ACL -> AP [style = "dotted"];
W -> TG [minlen = 4];
AP -> S [minlen = 3];
TG -> S [minlen = 4];
NAT -> W [style = "dotted"; minlen = 4];
NAT -> TG [style = "dotted"];
HM -> W [style = "dotted"; minlen = 4];
TCP -> W [style = "dotted" minlen = 4];
TCP -> S [style = "dotted" minlen = 4];
TCP -> TG [style = "dotted"];
C -> S [label = <<i> SSL/HTTPS</i>>; style = "dotted"; minlen = 4];
C -> HM [label = <<i><br />HTTPS</i>>; style = "dotted"];
C -> TG [style = "dotted"; minlen = 4];
C -> W [style = "dotted"];
PER -> S [style = "dotted"; minlen = 4];
subgraph {
rank="same";
AP;
S;
W;
}
subgraph {
rank="same";
TG;
}
{ rank = max; TG; }
{ rank = min; C; TCP; HM; NAT; PER; }
}](../_images/graphviz-569a1ec67f8027374fe6e89617d8c79909ff22f2.png)
![digraph {
bgcolor="transparent";
node [shape=box, color="#000000", fontcolor="#000000"];
edge [color="#000000", fontcolor="#000000"];
W [label = "Worker"];
TG [label = "Target-группа"];
S [label = "Сервис"];
AP [label = "Access point"];
C [label = "Сертификаты"];
TCP [label = "TCP-профиль"];
HM [label = "Health Monitor"];
NAT [label = "NAT pool"];
PER [label = "Persistence-группа"];
ACL [label = "Access-лист"];
ACL -> AP [style = "dotted"];
W -> TG [minlen = 4];
AP -> S [minlen = 3];
TG -> S [minlen = 4];
NAT -> W [style = "dotted"; minlen = 4];
NAT -> TG [style = "dotted"];
HM -> W [style = "dotted"; minlen = 4];
TCP -> W [style = "dotted" minlen = 4];
TCP -> S [style = "dotted" minlen = 4];
TCP -> TG [style = "dotted"];
C -> S [label = <<i> SSL/HTTPS</i>>; style = "dotted"; minlen = 4];
C -> HM [label = <<i><br />HTTPS</i>>; style = "dotted"];
C -> TG [style = "dotted"; minlen = 4];
C -> W [style = "dotted"];
PER -> S [style = "dotted"; minlen = 4];
subgraph {
rank="same";
AP;
S;
W;
}
subgraph {
rank="same";
TG;
}
{ rank = max; TG; }
{ rank = min; C; TCP; HM; NAT; PER; }
}](../_images/graphviz-ff4391dc7f88e524e100cd64309f93a1533292a8.png)