搭建FastDFS分布式存储环境(使用Nginx模块)

上次搭建FastDFS使用的版本是v4.05,见http://www.linuxidc.com/Linux/2014-10/107592.htm
这个版本已经比较旧了

最新的版本是v5.04,由于作者重构了代码,所以安装过程还是有一些不一致.
最新版本下载地址:http://sourceforge.net/projects/fastdfs/files/
安装可以参考压缩包内的INSTALL文件。

实验还是搭建一个FastDFS环境,并增加Nginx模块
所用软件:
FastDFS_v5.04.tar.gz
libfastcommon-master.zip
fastdfs-nginx-module_v1.16.tar.gz
nginx-1.6.2.tar.gz

与之前版本不同的是,v5.04首先需要安装libfastcommon
下载地址:https://github.com/happyfish100/libfastcommon.git

1.安装libfastcommon
在每一台服务器上,解压libfastcommon,进入libfastcommon-master目录执行
./make.sh
 ./make.sh install

可以看到libfastcommon.so安装到了/usr/lib64/libfastcommon.so

但是FastDFS主程序设置的lib目录是/usr/local/lib
所以需要创建软链接.
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
 ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
 ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
 ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

2.安装FastDFS主程序
 这个版本似乎已经不需要libevent依赖
 在每台服务器,解压缩FastDFS_v5.04.tar.gz,进入FastDFS目录
 执行
./make.sh 
 ./make.sh install
如果上步的软链接创建成功,就应该会非常顺利。

配置Tracker服务器(192.168.1.70)    
 vim /etc/fdfs/tracker.conf文件,修改如下内容
base_path=/tracker
然后执行命令
fdfs_trackerd tracker.conf

配置Storage服务器(192.168.1.80,192.168.1.30)
 vim /etc/fdfs/storage.conf
 group_name=group1
 base_path=/storage
 store_path0=/storage
 tracker_server=192.168.1.70:22122
然后执行命令
fdfs_storaged storage.conf

执行测试,修改Tracker服务器192.168.1.70的配置文件/etc/fdfs/client.conf
 tracker_server=192.168.1.170:22122
执行命令
[[email protected] fdfs]# fdfs_upload_file client.conf /home/nginx/FastDFS_v5.04.tar.gz 
 group1/M00/00/00/wKgBHlQvrQGARrS6AAU9tcFAzok.tar.gz

3.解压fastdfs-nginx-module
 FastDFS通过Tracker服务器,将文件放在Storage服务器存储,
但是同组之间的服务器需要复制文件,有延迟的问题.
假设Tracker服务器将文件上传到了192.168.1.80,文件ID已经返回客户端,
这时,后台会将这个文件复制到192.168.1.30,如果复制没有完成,客户端就用这个ID在192.168.1.30取文件,肯定会出现错误
 这个fastdfs-nginx-module可以重定向连接到源服务器取文件,避免客户端由于复制延迟的问题,出现错误。

修改fastdfs-nginx-module的config文件
 原来的内容是
CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"

vim /home/nginx/fastdfs-nginx-module/src/config,修改为
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon"

各个版本的位置并不统一.所以需要根据自己的版本修改位置。

--------------------------------------分割线 --------------------------------------

CentOS 6.2实战部署Nginx+MySQL+PHP http://www.linuxidc.com/Linux/2013-09/90020.htm

使用Nginx搭建WEB服务器 http://www.linuxidc.com/Linux/2013-09/89768.htm

搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程 http://www.linuxidc.com/Linux/2013-09/89692.htm

CentOS 6.3下Nginx性能调优 http://www.linuxidc.com/Linux/2013-09/89656.htm

CentOS 6.3下配置Nginx加载ngx_pagespeed模块 http://www.linuxidc.com/Linux/2013-09/89657.htm

CentOS 6.4安装配置Nginx+Pcre+php-fpm http://www.linuxidc.com/Linux/2013-08/88984.htm

Nginx安装配置使用详细笔记 http://www.linuxidc.com/Linux/2014-07/104499.htm

Nginx日志过滤 使用ngx_log_if不记录特定日志 http://www.linuxidc.com/Linux/2014-07/104686.htm

4.安装nginx
在每个Storage服务器上安装Nginx  http://www.linuxidc.com/Linux/2014-10/107593.htm

yum -y install gcc automake autoconf libtool make gcc-c++ pcre* zlib openssl openssl-devel

增加fastdfs-nginx-module模块
./configure \
 --prefix=/home/nginx/nginx-1.6.2 \
 --sbin-path=/home/nginx/nginx-1.6.2/nginx \
 --conf-path=/home/nginx/nginx-1.6.2/nginx.conf \
 --pid-path=/home/nginx/nginx-1.6.2/nginx.pid \
 --with-http_ssl_module \
--add-module=/home/nginx/fastdfs-nginx-module/src

make -j `cat /proc/cpuinfo | grep processor| wc -l` && make install

复制fastdfs-nginx-module源码中的配置文件到/etc/fdfs
 cp /home/nginx/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs
修改该配置文件
group_name=group1
 tracker_server=192.168.1.70:22122
 store_path0=/storage
 base_path=/storage

复制FastDFS的配置到/etc/fdfs

修改Nginx配置文件
        location /M00 {
            root /storage;
            ngx_fastdfs_module;
        }
在/storage目录下创建软连接,将其链接到实际存放数据的目录,
 [[email protected] storage]# pwd
 /storage
 [[email protected] storage]# ln -s data/ M00

创建软链接的好处是方便多目录的管理

启动Nginx,就可以使用HTTP下载了.

注意事项:
1.FastDFS各个版本安装方式有差别,需要阅读INSTALL文件
2.FastDFS各个组件的默认位置可能不同,需要按照版本创建相应的软链接

Nginx 的详细介绍请点这里
Nginx 的下载地址请点这里

时间: 2024-10-11 09:45:42

搭建FastDFS分布式存储环境(使用Nginx模块)的相关文章

centos6.5下搭建fastdfs分布式存储

← 使用iftop监控linux网络流量 分布式文件系统FastDFS原理介绍 → centos6.5下搭建fastdfs分布式存储 2014-04-24 Venus FastDFSGo to comment fastDFS下载地址:http://code.google.com/p/fastdfs/downloads/listlibevent官网: http://libevent.org/ 目前最新版:https://github.com/downloads/libevent/libevent/

FastDFS的php和nginx模块配置

一.FastDFS和php整合 1.安装php # 安装依赖包 yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel cu

centos6.5搭建fastdfs分布式存储

系统环境: 操作系统:Centos6.5X86_64 fastdfs版本: FastDFS_v5.02.tar Fastdfs_tracker IP:172.16.4.30 Fastdfs_storage_s1 IP:172.16.4.31 Fastdfs_storage_s1 IP:172.16.4.32 Fastdfs_client IP:172.16.4.33 一.fastdfs和libevent的下载 地址: http://sourceforge.net/projects/fastdfs

FastDFS 配置 Nginx 模块-Linux

1.搭建虚拟机 a.复制虚拟机文件 首先复制我们之前安装好的fastdfs虚拟机,因为我们现在要设置它的IP为21,改名为CentOS-fastdfs - 21. b.设置网络 生成新的MAC地址 设置网络地址为192.168.50.21  # vi /etc/sysconfig/network-scripts/ifcfg-ens33 修改主机名 #vi /etc/sysconfig/network # vi /etc/hosts 重启网络并测试 2.安装配置Nginx模块  a.fastdfs

python服务器环境搭建Flask,uwsgi和nginx

python服务器环境搭建Flask,uwsgi和nginx 环境配置 服务器配置 [部署系统环境Ubuntu] 使用python的Flask框架搭建好网页后台后,便要开始将网站部署到服务器平台了.为了部署python服务器,我选择使用uwsgi和nginx. 使用Nginx和uWSGI来运行Python应用 Nginx Nginx是高效的Web服务器和反向代理服务器,同时并发高,部署简单,内存消耗小,最重要的是,支持uWSGI的uwsgi协议,可以直接使用,一个简单的uwsgi_pass就可以

搭建LNMP环境 (centos7+nginx+MySQL5.7.9+PHP7)

搭建阿里云lnmp环境 (centos7+nginx+MySQL5.7.9+PHP7) 阿里云一台服务器出现问题! 我估计是一键安装包环境的原因,所以打算重新搭建下环境! 首先,当然是先做好快照!安全第一! 对系统盘做更换系统操作,装上纯净版的centos. 装好后,进入系统 一.挂载数据盘 df -h 只有系统盘了,挂载上原来的数据盘 fdisk -l 看到数据盘了/dev/vdb1 挂载上这个数据盘, mkdir /data0 mount /dev/vdb1 /data0 然后写入分区: e

搭建PHP开发环境 apache+MySQL+PHP 安装phpMyAdmin模块

该博文参考的资料来源于: http://wenku.baidu.com/view/0e4c569ddd3383c4bb4cd267.html http://www.cnblogs.com/pharen/archive/2012/02/06/2340628.html http://www.admin10000.com/document/54.html http://blog.csdn.net/zutsoft/article/details/21651041 昨天花了差不多一天的时间,跳过无数“坑”

Ubuntu14.04下搭建LANMP环境(Apache+Nginx+MySQL+PHP)

每回安装环境都要去百度几文章,今天索性自己写一篇,以后省去百度的麻烦了,本文介绍的是在Ubuntu14.04下搭建LANMP环境(Apache+Nginx+MySQL+PHP),如果你只想安装lamp或者lnmp都通用,直接拿去.首先分两步走:每一.先更新系统然后安装必要的依赖(这一步为以后的扩展提供铺垫)第二.安装mysql apache2 php sudo apt-get update sudo apt-get install build-essential gcc g++ autoconf

Centos7单台服务器搭建FastDFS+Nginx

Fastdfs+Nginx配置操作 单台配置 安装包下载: wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz wget http://jaist.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz wget https://github