リバースプロキシの検証
疑問~リバースプロキシとは?~
(バックエンドの)Webサーバに変わって代理応答してくれたり、(バックエンドの)Webサーバに負荷分散してくれるものらしい。
そんなに使っている人がいるのかわからないが、やってみようと思う。
検証~リバースプロキシとWebサーバ(バックエンドサーバ)構築~
・EC2作成 forward backend バックエンドは自動的にipが振られないようにする。ローカルipアドレスは10.0.3.180。 ・selinux 無効化 略 ●forward設定 ・Apacheインストール yum install httpd ・モジュール確認 httpd -M | grep proxy ----- proxy_module (shared) proxy_ajp_module (shared) proxy_balancer_module (shared) proxy_connect_module (shared) proxy_express_module (shared) proxy_fcgi_module (shared) proxy_fdpass_module (shared) proxy_ftp_module (shared) proxy_http_module (shared) proxy_scgi_module (shared) proxy_wstunnel_module (shared) ----- ↓ proxy_module 、proxy_http_moduleがあるし問題なさそう ・コンフィグ書き換え cp -ai /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.0 ProxyRequests Off ProxyPass / http://10.0.3.180/ ProxyPassReverse / http://10.0.3.180/ ----- ・見れない予定のファイル設置 vi /var/www/html/index.html forward ●backend設定 フォワードサーバにCentOSユーザの鍵(名前はkey)を仕込んでフォワードサーバからログイン vi key ----- 秘密鍵張り付け ----- chmod 600 key ssh -i key centos@10.0.3.180 ・Apacheインストール yum install httpd ・ファイル設置 vi /var/www/html/index.html ----- localnetwork ----- vi /var/www/html/test.txt ----- localnetworktest.txt ----- ・アクセス確認 http://3.114.179.180 http://3.114.179.180/test.txt localnetwork localnetworktest.txt ↓ よし、バックエンドサーバにあるファイルを見に行く。 ■
所感
今回、バックエンド一台だけだが次回は複数台にして冗長化してみよう。
ただリバースプロキシでないといけない理由についてまだよく理解できていない。
AWSの場合、ELBでよくないか?とは思ってしまう。