美文网首页
配置Mogilefs中使用Nginx做反代查询

配置Mogilefs中使用Nginx做反代查询

作者: lib在线 | 来源:发表于2018-11-19 16:28 被阅读0次

    配置Mogilefs中使用Nginx做反代查询:
    Nginx做MogileFS的前端程序,我们需要重新编译nginx,下载nginx-mogilefs-module模块即可。
    1,介绍
    在没有做nginx mogilefs之前的URL:
    http://192.168.125.200:7500/dev1/0/000/000/0000000011.fid
    如果正常nginx访问:
    http://192.168.125.211/images/linux.jpg
    反代流程:
    1、客户端向服务器端发送请求,Nginx接收请求;
    2、Nginx通过反向代理挑选后端任意一台Trackers服务器响应请求;
    3、Trackers接收请求后再向后端数据库获取数据存储的位置;
    4、Trackers接收到数据库响应回来的数据位置后再响应给Nginx;
    5、Nginx接收到Trackers响应回来的数据位置后再到Storage服务器上获取实际的存储数据;
    6、Storage存储服务器将文件内容通过http协议返回给Nginx;
    7、Nginx将结果返回给应用层客户端。
    2,安装

    wget http://www.grid.net.ru/nginx/download/nginx_mogilefs_module-1.0.4.tar.gz
    wget http://nginx.org/download/nginx-1.4.7.tar.gz
    [root@localhost ~]# yum -y install pcre-devel
    [root@localhost ~]# tar xf nginx-1.4.7.tar.gz
    [root@localhost ~]# unzip nginx-mogilefs-module-master
    [root@localhost ~]# cd nginx-1.4.7
    [root@localhost ~]#./configure \
      --prefix=/usr \
      --sbin-path=/usr/sbin/nginx \
      --conf-path=/etc/nginx/nginx.conf \
      --error-log-path=/var/log/nginx/error.log \
      --http-log-path=/var/log/nginx/access.log \
      --pid-path=/var/run/nginx/nginx.pid  \
      --lock-path=/var/lock/nginx.lock \
      --user=nginx \
      --group=nginx \
      --with-http_ssl_module \
      --with-http_flv_module \
      --with-http_stub_status_module \
      --with-http_gzip_static_module \
      --http-client-body-temp-path=/var/tmp/nginx/client/ \
      --http-proxy-temp-path=/var/tmp/nginx/proxy/ \
      --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
      --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
      --http-scgi-temp-path=/var/tmp/nginx/scgi \
      --with-pcre \
      --with-debug \
      --add-module=  ##指定模块解压的路径
    # make && make install    
    
    wget http://www.grid.net.ru/nginx/download/nginx_mogilefs_module-1.0.4.tar.gz
    wget http://nginx.org/download/nginx-1.4.7.tar.gz
    [root@localhost ~]# yum -y install pcre-devel
    [root@localhost ~]# tar xf nginx-1.4.7.tar.gz
    [root@localhost ~]# unzip nginx-mogilefs-module-master
    [root@localhost ~]# cd nginx-1.4.7
    [root@localhost ~]#./configure \
      --prefix=/usr \
      --sbin-path=/usr/sbin/nginx \
      --conf-path=/etc/nginx/nginx.conf \
      --error-log-path=/var/log/nginx/error.log \
      --http-log-path=/var/log/nginx/access.log \
      --pid-path=/var/run/nginx/nginx.pid  \
      --lock-path=/var/lock/nginx.lock \
      --user=nginx \
      --group=nginx \
      --with-http_ssl_module \
      --with-http_flv_module \
      --with-http_stub_status_module \
      --with-http_gzip_static_module \
      --http-client-body-temp-path=/var/tmp/nginx/client/ \
      --http-proxy-temp-path=/var/tmp/nginx/proxy/ \
      --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
      --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
      --http-scgi-temp-path=/var/tmp/nginx/scgi \
      --with-pcre \
      --with-debug \
      --add-module=  ##指定模块解压的路径
    # make && make install
    

    3,配置

    [root@manager ~]# cat /etc/nginx/nginx.conf
    #user  nobody;
    worker_processes  1;
    #pid        logs/nginx.pid;
    events {
        worker_connections  1024;
    }
    http {
        include      mime.types;
        default_type  application/octet-stream;
        keepalive_timeout  65;
    ##定义upstream server调度器集群,实现负载均衡功能。
    upstream trackers { 
    server 192.168.125.200:7001 weight=1;
    server 192.168.125.201:7001 weight=1;
        server 192.168.125.202:7001 weight=1;
    check interval=1000 rise=2 fall=5 timeout=1000;  #状态检测
    }
        server {
            listen      80;
            server_name  localhost;
            location / {
                root  html;
                index  index.html index.htm;
            }
    ##定义domain,如果mogilefs有多个domain,那么就定义多个mogilefs
    location /images/ {
            mogilefs_tracker trackers;
            mogilefs_domain imgs;
            mogilefs_methods get;
    mogilefs_noverify on;
    
            mogilefs_pass {
            proxy_pass $mogilefs_path;
            proxy_hide_header Content-Type;
            proxy_buffering off;
            }
            expires 1h;
            }
    ##开启status功能:
    location /status {
    check_status;
    }
            # redirect server error pages to the static page /50x.html
            #
            error_page  500 502 503 504  /50x.html;
            location = /50x.html {
                root  html;
            }
        }
    }
    

    4,添加服务脚本;

    此处略去。

    5,服务重启,进行验证。

    相关文章

      网友评论

          本文标题:配置Mogilefs中使用Nginx做反代查询

          本文链接:https://www.haomeiwen.com/subject/eqjafqtx.html