博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
FastDFS分布式文件系统nginx模块安装和部署
阅读量:6456 次
发布时间:2019-06-23

本文共 2588 字,大约阅读时间需要 8 分钟。

hot3.png

上一篇讲了,这篇文章主要描述如何安装、使用fastdfs-nginx-module和nginx实现通过Http方式访问FastDFS分布式文件系统中的文件。

FastDFS通过Tracker服务器将文件放在Storage服务器存储。但是同组之间的服务器需要复制文件有延迟的问题,假设Tracker服务器将文件上传到了192.168.1.80,并将文件ID返回给客户端。这时,后台会将这个文件复制到192.168.1.30,如果复制没有完成,客户端就用这个文件ID在192.168.1.30上获取文件,肯定会出现错误。fastdfs-nginx-module可以重定向连接到源服务器取文件,避免客户端由于复制延迟的问题,出现错误。(此说法来源于http://blog.itpub.net/29254281/viewspace-1288761/,不知道是否正确)

但是,从FastDFS v5.0.1开始,tracker server和storage server已经默认已经不支持Http访问。问过很多人,都是通过搭建nginx或Apache实现的Http访问。解决方法是,在每个存储服务(storage)都应该安装nginx和fastdfs_nginx_module模块,然后用单独一台nginx做反向代理。

安装方法

  1. 首先安装FastDFS存储服务器和客户端库
    FastDFS版本应该>=2.09。
    安装方法详见:
  2. 下载FastDFS-nginx-module源码包并解压,例如:
    tar xzf fastdfs_nginx_module_v1.16.tar.gz

     

  3. 安装nginx的服务器
    FastDFS nginx模块在nginx 0.8.53通测试通过,余庆的nginx安装在“/usr/local/nginx”。
    进入nginx的源代码目录,编译和安装模块,如:
    cd nginx-1.5.12./configure --add-module=/home/yuqing/fastdfs-nginx-module/srcmakemake install
    如果提示下面错误,可以安装pcre模块:
    ./configure: error: the HTTP rewrite module requires the PCRE library.You can either disable the module by using --without-http_rewrite_moduleoption, or install the PCRE library into the system, or build the PCRE librarystatically from the source with nginx by using --with-pcre=
    option.
    sudo apt-get install pcre*
    若安装时找不到上述依赖模块,使用–with-openssl=<openssl_dir>、–with-pcre=<pcre_dir>、–with-zlib=<zlib_dir>指定依赖的模块目录。如已安装过,此处的路径为安装目录;若未安装,则此路径为编译安装包路径,nginx将执行模块的默认编译安装。

    也可以使用类似下面的命令跳过指定模块的安装:

    ./configure --without-http_gzip_module --add-module=/home/cjx/libs/fastdfs-nginx-module-master/srcmakemake install

    注意: 编译之前,可以在config 文件中更改FDFS_OUTPUT_CHUNK_SIZE和FDFS_MOD_CONF_FILENAME宏:

    CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' -DFDFS_MOD_CONF_FILENAME='\"/etc/fdfs/mod_fastdfs.conf\"'"

     

  4. 更改config文件“mod_fastdfs.conf”,将配置文件拷贝到“/etc/fdfs”
    sudo cp /home/cjx/libs/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/

    修改该配置文件:

    group_name=group1tracker_server=192.168.2.163:22122store_path0=/data/fastdfs/storagebase_path=/data/fastdfs/storage

     

  5. 配置nginx的config文件,如nginx.conf,加上下面几行:
    location /M00 {            root /data/fastdfs/storage;            ngx_fastdfs_module;        }

     

  6. 如果在fastdfs-nginx模块的配置文件中指定了启动组名访问则需要改成下面的:

    location /group1/M00 {            root /data/fastdfs/storage;            ngx_fastdfs_module;        }

     

  7. 创建一个符号链接 ${fastdfs_base_path}/data/M00 到 ${fastdfs_base_path}/data,在“/data/fastdfs/storage”目录下创建软连接,将其链接到实际存放数据的目录:
    ln -s /data/fastdfs/storage/data /data/fastdfs/storage/data/M00

     

关闭和启动nginx服务器

关闭和启动nginx可以使用下列命令:

/usr/local/nginx/sbin/nginx -s stop/usr/local/nginx/sbin/nginx

 

 

转载于:https://my.oschina.net/scjelly/blog/700476

你可能感兴趣的文章
三线跑酷例子BlocksRun的技术点
查看>>
如何应对DDOS网络攻击
查看>>
新闻奖颁给了一个写稿机器人(来自新华社)
查看>>
Android应用程序在新的进程中启动新的Activity的方法和过程分析
查看>>
中文字符 与 十六进制Unicode编码 相互转换
查看>>
防止程序重复执行 Controling the number of application instances
查看>>
Android 网络请求超时处理方案
查看>>
05 管理员工和工作
查看>>
Objective-C语法之NSArray和NSMutableArray
查看>>
[原创]浅谈测试行业发展趋势及个人职业规划的一点看法
查看>>
Android EditText 赋值与取值
查看>>
集成 IBM Business Process Manager V8 与企业内容管理系统
查看>>
HTML标签 闭合还是不闭合?
查看>>
【好书摘要】性能优化中CPU、内存、磁盘IO、网络性能的依赖
查看>>
Android 遮罩层效果
查看>>
linux -- ubuntu14.10安装gnome桌面环境和dock工具
查看>>
成都项目中因为MYSQL与SSDB备分时间不一致,导致主键产生器错误解决一例
查看>>
struts2之防止表单重复提交
查看>>
使用kettle转换中的JavaScript对密码进行加密和解密
查看>>
SQL SERVER 2005 数据库置疑修复
查看>>