2016-04-28 3 views
1

私は、ハプロロードロードバランサの背後にある複数のマシンによって提供されるウェブサイトを持っています。今では、クッキーに基づいたスティッキーセッションを使用しています。私はuptimerobotを使ってマシンの健全性をチェックしていますが、クッキーを使用するように設定することはできず、ロードバランサをインターネットの唯一のオープンポイントにしたくありません。ヘビロキシロードバランサの背後にある特定のマシンにヘルスチェックのためにアクセスすることができます

urlパラメータでマシンにアクセスするようにロードバランサを設定する方法はありますか?

答えて

1

方法はありますが、それはお勧めできません。設定では、重複するバックエンドブロックとurl_paramベースのACLを作成して、URLパラメータに基づいて特定のサーバに要求をルーティングします。

例:

frontend fe 
    bind x.x.x.x:80 
    bind x.x.x.x:443 ssl crt.. blah 
    ... 
    default_backend www 

    acl is_healthchk_s1 url_param(CHECK) -i s1 
    acl is_healthchk_s2 url_param(CHECK) -i s2 
    acl is_healthchk_sn url_param(CHECK) -i sn 

    use_backend be_healthchk_s1 if is_healthchk_s1 
    use_backend be_healthchk_s2 if is_healthchk_s2 
    use_backend be_healthchk_sn if is_healthchk_sn 

backend www 
    server s1 x.x.x.x:8080 check 
    server s2 x.x.x.x:8080 check 
    server sn x.x.x.x:8080 check 

backend be_healthchk_s1 
    server s1 x.x.x.x:8080 check 
backend be_healthchk_s2 
    server s2 x.x.x.x:8080 check 
backend be_healthchk_s3 
    server s3 x.x.x.x:8080 check 

だから、あなたの稼働時間のロボットが代わりにこれらを確認することができます。

  • をdomain.com/?CHECK=s1
  • domain.com/?CHECK=s2
  • domain.com/?CHECK=sn
関連する問題