[5] Load Balancing w Warstwie 4

7 lutego 2022 Wyłączono przez Adam [zicherka] Nogły

Skonfiguruj HAProxy w trybie warstwy 4. W tym przykładzie skonfiguruj Backend MariaDB (MariaDB Server #1 oraz MariaDB Server #2) tak, jak w poniższym środowisku.

[1] Skonfiguruj HAProxy.

[root@vlsr01 ~]# mcedit /etc/haproxy/haproxy.cfg
#zmień wartość [mode] w sekcji [defaults]
defaults
    mode            tcp
#zdefiniuj MariaDB dla Frontend i Backend
frontend mysql-in
    bind *:3306
    default_backend backend_servers_SQL
backend backend_servers_SQL
    balance         roundrobin
    server          sql01 192.168.100.102:3306 check
    server          sql02 192.168.100.103:3306 check

[2] Jeżeli SELinux pracuje, należy zmienić zasady polityki.

[root@vlsr01 ~]# setsebool -P haproxy_connect_any on

[3] Uruchom/zrestartuj HAProxy.

[root@vlsr01 ~]# systemctl restart haproxy

[4] Jeżeli Firewalld jest uruchomiony, zezwól HAProxy na nasłuchiwanie na następujących portach.

[root@vlsr01 ~]# firewall-cmd --add-service=mysql --permanent
[root@vlsr01 ~]# firewall-cmd –reload

[5] Sprawdź, czy MariaDB działa normalnie, aby uzyskać dostęp do Frontendowego serwera HAproxy.

[root@vlsr04 ~]# mysql -u user01 -p -h 192.168.100.101 -e "show variables like 'hostname';"
Enter password: #wpisz hasło użytkownika user01 w MariaDB
+---------------+-------------------+
| Variable_name | Value             |
+---------------+-------------------+
| hostname      | vlsr02.zicher.lab |
+---------------+-------------------+

[root@vlsr04 ~]# mysql -u user01 -p -h 192.168.100.101 -e "show variables like 'hostname';"
Enter password: #wpisz hasło użytkownika user01 w MariaDB
+---------------+-------------------+
| Variable_name | Value             |
+---------------+-------------------+
| hostname      | vlsr03.zicher.lab |
+---------------+-------------------+