Назад | Перейти на главную страницу

AWS ELB с настройкой HAProxy

Мы хотим использовать один ELB для обработки бесплатного SSL / TLS-сертификата AWS с подстановочными знаками. Например, у нас есть n серверов app1.example.com app2.example.com ... appn.example.com Каждое приложение имеет свой собственный сервер или набор серверов.

Мы хотим использовать HAProxy для решения этой проблемы, потому что AWS elb не может выполнять балансировку поддоменов уровня 7, и мы хотим воспользоваться преимуществами бесплатного сертификата aws ssl / tls. Как это: Схема инфраструктуры

Файл конфигурации HAProxy выглядит следующим образом.

global
daemon
maxconn 15000

defaults
    mode http
    timeout connect 5000ms
    timeout client 5000ms
    timeout server 5000ms

frontend http-in
    bind *:80
    # Define hosts
    acl host_app1 hdr(host) -i app1.example.com
    acl host_app2 hdr(host) -i app2.example.com
    acl host_app3 hdr(host) -i app3.example.com

## figure out which one to use
    use_backend app1_cluster if host_app1
    use_backend app2_cluster if host_app2
    use_backend app3_cluster if host_app3

backend app1_cluster
    server node1 10.0.1.107:80 check

backend app2_cluster
    server node1 10.0.1.203:80 check

backend app3_cluster
    server node1 10.0.1.41:80 check

Однако эта конфигурация не работает. Я новичок в HAProxy, поэтому приветствую любые советы.