自由気ままに書いちゃおう

好きなことをつらつらと・・・

HAproxyについて

過去の記事でLPIC304の体験記を書いたのですが、当時学習した内容を少しずつアップしていこうと思います。
※アップ順番はアルファベット順を予定。

今回は、HAproxyについてです。
※過去の投稿は、一番下にリンクのみ記載しております。

↓LPIC304の体験記はこちら↓

www.guri2o1667.work


↓使用した参考書はこちら↓

徹底攻略LPIC Level3 304教科書+問題集[Version 2.0]対応 徹底攻略シリーズ

徹底攻略LPIC-Level3-304教科書+問題集[Version-2-0]対応-徹底攻略シリーズ

 

■HAproxyについて
■概要
・Linuxカーネルには組み込まれていない。
・L4負荷分散(tcp/udp)と一部L7負荷分散(HTTPのみ)が可能。
・L7の場合、ルーティングポリシーやACLが使用可能。
 ※LVSはL4のみ。
 
■分散アルゴリズム
ラウンドロビン・・・リクエストを順番に振り分ける。
 ・roundrobin
 
静的ラウンドロビン・・・ラウンドロビン+重みづけを静的に設定。
 ・static-rr
 
最小接続・・・アクティブな接続数が最も少ないサーバを優先
 ・leastconn
 
ソース・・・送信元IPアドレスをハッシュ化してリアルサーバに振り分け
 ・source
 
URI・・・リクエストURI全体をハッシュ化してリアルタイムサーバに振り分け
 ・uri
 
URLパラメータ・・・GETリクエストにおけるクエリーによって振り分け。
 ・url_param
 
ヘッダ名・・・HTTPリクエスト内のヘッダによって振り分け。ヘッダが存在しない場合はラウンドロビン。
 ・hdr
 
RDPクッキー
 ・rdp-cookie
 
■補足
よくある分散アルゴリズムとして、「cookie-persistent」があるが、これはBIG-IPとかで可能。
 
■設定ファイル
/etc/haproxy/haproxy.cfg
 
 frontendセクション(仮想サーバ側の設定セクション)
 
 backendセクション(リアルサーバ側の設定セクション)
    server ~            
 
 aclセクション
 
■forwardfor設定について
HAProxyは送信元IPアドレスを自身のIPアドレスに書き換えるため、通常ではバックエンドサーバ(=リアルサーバ)では実際のアクセス元のIPアドレスが分からない。
バックエンドサーバにアクセス元のIPアドレスを通知するようにするには"option forwardfor"パラメータを設定する。
これによって"X-Forwarded-For"ヘッダーが付加され、ヘッダの値にアクセス元のIPアドレスが記載されるようになる。
    drbdadm -m,--drbdmeta



■試験料について
15,000円です。
※前は30,000円だったので半額になった。

(2020/1/10更新)
LPIC304関連のブログは下記の通りです。
興味ある方は一度目を通してもらえると、(何かしらの)役に立つ・・・??

↓LPIC304関連記事はこちら(アルファベット順)↓

www.guri2o1667.work

www.guri2o1667.work

 

www.guri2o1667.work

 

www.guri2o1667.work

www.guri2o1667.work

 

www.guri2o1667.work

www.guri2o1667.work

 

www.guri2o1667.work

www.guri2o1667.work

 

www.guri2o1667.work

 

www.guri2o1667.work

www.guri2o1667.work

 

www.guri2o1667.work

www.guri2o1667.work

 

www.guri2o1667.work

www.guri2o1667.work

 

www.guri2o1667.work