9月 4th, 2012
Hadoop(CDH3u4)管理画面をリバースプロキシ? 由で圏 ?
手段として、いぜ つかのサイトで公開されているようぜ
mod_rewrite、mod_proxy_htmlを利用します。
圏 考:
http://d.hatena.ne.jp/matobat/20100916/1284626356
CDHの管理画面は、コミュニティ版と地 し異なる為、
いぜ つか変更を加えながら確? してみました。
準備作業は以下のようになります。
# yum install httpd-devel libxml2 libxml2-devel # wget http://apache.webthing.com/mod_proxy_html/mod_proxy_html.tar.bz2 # bzip2 -d mod_proxy_html.tar.bz2 | tar xvf # cd mod_proxy_html # apxs -c -I/usr/include/libxml2 -I./ -i mod_proxy_html.c # wget http://apache.webthing.com/svn/apache/filters/mod_xml2enc.c # wget http://apache.webthing.com/svn/apache/filters/mod_xml2enc.h # apxs -c -I/usr/include/libxml2 -I./ -i mod_xml2enc.c
httpd.confには、以? の設定を追加しました。
もっと効? 的な方? があるかもしれません。
# mod_rewrite RewriteEngine On RewriteRule ^/namenode/(.*)$ http://(MasterNode_VIP):50070/$1 [P,L,QSA] RewriteRule ^/jobtracker/(.*)$ http://(MasterNode_VIP):50030/$1 [P,L,QSA] RewriteRule ^/datanode/([^/]*)/(.*)$ http://$1:50075/$2 [P,L,QSA] RewriteRule ^/tasktracker/([^/]*)/(.*)$ http://$1:50060/$2 [P,L,QSA] Header edit Location ^http://(MasterNode_VIP):50070/(.*)$ /namenode/$1 Header edit Location ^http://(MasterNode_VIP):50030/(.*)$ /jobtracker/$1 Header edit Location ^http://([^:]*):50075/(.*)$ /datanode/$1/$2 Header edit Location ^http://([^:]*):50060/(.*)$ /tasktracker/$1/$2 # mod_proxy_html LoadFile /usr/lib64/libxml2.so LoadModule proxy_html_module modules/mod_proxy_html.so LoadModule xml2enc_module modules/mod_xml2enc.so ProxyHTMLEnable On #ProxyHTMLLogVerbose On ProxyHTMLURLMap ^http://(.*):50070/(.*)$ /namenode/$2 [R,x,l,e,c] ProxyHTMLURLMap ^http://(.*):50030/(.*)$ /jobtracker/$2 [R,x,l,e,c] ProxyHTMLURLMap ^http://(.*):50075/(.*)$ /datanode/$1/$2 [R,x,l,e,c] ProxyHTMLURLMap ^http://(.*):50060/(.*)$ /tasktracker/$1/$2 [R,x,l,e,c] ProxyHTMLURLMap ^http://(.*):50060$ /tasktracker/$1/ [R,x,l,e,c] ProxyHTMLURLMap ^/static/(.*) /namenode/static/$1 [R,x,l,e,c] ProxyHTMLURLMap ^/nn_browsedfscontent.jsp /namenode/nn_browsedfscontent.jsp [R,x,l,e,c] ProxyHTMLURLMap ^/logs/$ logs/ [R,x,l,e,c] ProxyHTMLURLMap ^/logs/(.*)$ $1 [R,x,l,e,c] ProxyHTMLURLMap ^/dfshealth.jsp /namenode/dfshealth.jsp [R,x,l,e,c] ProxyHTMLURLMap ^/jobdetails.jsp(.*)$ /jobtracker/jobdetails.jsp$1 [R,x,l,e,c] ProxyHTMLURLMap ^/taskgraph(.*)$ /jobtracker/taskgraph$1 [R,x,l,e,c] ProxyHTMLURLMap ^/taskstats.jsp(.*)$ /jobtracker/taskstats.jsp$1 [R,x,l,e,c] ProxyHTMLURLMap ^/taskstatshistory.jsp(.*)$ /jobtracker/taskstatshistory.jsp$1 [R,x,l,e,c]
また、MapReduce、Shuffleのグラフ表示ぜ embedタグのリンク部分を
書き朏 える為、proxy_html.confへの追記も行っています。
ProxyHTMLLinks embed src
画面アクセス時は、/namenode/、/jobtracker/のようにアクセスします。
また、スレーブボ ードぜ IPアドレスは、リバースプロキシで名前解決できるようぜ
hostsに登録しています。
Comments are closed!