fastdfs安装

0 问题

之前使用最新版本下载,发现安装nginx编译fastdfs-nginx-module时候,make失败;所以换成网上写的版本匹配:

第一组匹配
FastDFS_v5.05.tar.gz
fastdfs-nginx-module_v1.16.tar.gz
libfastcommon-1.0.7.tar.gz

linux版本 Linux version 2.6.32-431.el6
redhat版本 CentOS release 6.5 (Final)

第二组匹配
Linux version 3.10.0-514.el7.x86_64
fastdfs-5.11.tar.gz
libfastcommon-1.0.39.tar.gz

组件版本列表

https://github.com/happyfish100/fastdfs/releases
https://github.com/happyfish100/libfastcommon/releases
FastDFS - Browse /FastDFS Nginx Module Source Code at SourceForge.net

1 安装依赖包
yum install -y libevent

2 下载(依赖3个组件)

fastdfs 文件存储系统主文件(DFS => distribute file system)
libfastcommon c语言的通用函数库
fastdfs-nginx-module nginx的模块

wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz
wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz
fastdfs-nginx-module是从sourceforge.net直接下载下来,rz上传到linux服务器上的

3 安装libfastcommon

解压
tar -zxvf libfastcommon_V1.0.39.tar.gz

进入解压目录
cd libfastcommon-1.0.39/

编译
./make.sh

安装
./make.sh install

设置软连接
由于libfastcommon.so 安装到了/usr/lib64/libfastcommon.so,但是FastDFS主程序设置的lib目录是/usr/local/lib,所以需要创建软链接(linux可能说软连接已经存在了,可以先不管)

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

4 安装fastdfs

tar -zxvf fastdfs_V5.11.tar.gz
./make.sh
./make.sh install

/usr/bin 存放有编译出来的文件

/etc/fdfs 存放有配置文件

5 部署tracker

进入/etc/fdfs修改tracker配置,从示例中拷贝一份
cp tracker.conf.sample tracker.conf

vim tracker.conf
修改指定日志和数据文件的位置
base_path=/opt/fastdfs/tracker/data-and-log/

启动tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf

重启tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart

查看tracker进程
ps aux|grep tracker

6 部署storage
cp storage.conf.sample storage.conf
 

进入/etc/fdfs,从storage.conf.sample拷贝一份storage.conf
vim storage.conf
主要修改3处类容:

tracker的地址,注意不能是127.0.0.1

storage的文件存储空间

启动storage
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf

7 监视器查看存储挂载点是否正常
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf

可以看到storage的挂载点

8 上传测试文件(使用测试工具fdfs_test)

修改配置文件
cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
vim client.conf
主要修改以下两处:
# 数据和日志路径
base_path=/opt/fastdfs/client/data-and-log
# tracker地址
tracker_server=10.192.3.4:22122

上传一个图片timg.jpg到linux的test-upload-file文件夹下

/usr/bin/fdfs_test /etc/fdfs/client.conf upload /opt/fastdfs/data/test-upload-file/timg.jpg

返回一个文件访问地址
example file url: http://10.129.3.4/group1/M00/00/00/CoEDBFznr5OAVD7-AARCsQuQZvw582.jpg

9 安装fastdfs-nginx-module(才能下载图片)

tar zxvf fastdfs-nginx-module_v1.16.tar.gz

进入解压目录:fastdfs-nginx-module/src,修改配置文件

vim config

CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"
改为如下:
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"

因为local目录根本不存在

进入ng的解压目录,重新运行ng配置,增加插件配置
./configure --add-module=/opt/fastdfs/fastdfs-nginx-module/src

编译
make

编译安装
make install

将fastdfs-nginx-module解压文件中的配置文件,拷贝到/etc/fdfs下
cp /xxxx/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs

vim mod_fastdfs.conf
修改配置文件

# (1)创建目录:mkdir -p /opt/fastdfs/fastdfs-nginx-module/data-and-log
base_path=/opt/fastdfs/fastdfs-nginx-module/data-and-log

# (2)指定 tracker 服务器的 IP 和端口
tracker_server=192.168.1.114:22122

# (3)因为我们访问图片的地址是:http://10.129.3.4/group1/M00/00/00/CoEDBFznr5OAVD7-AARCsQuQZvw582.jpg
# 该地址前面是带有 /group1/M00,所以我们这里要使用 true,不然访问不到(原值是 false)
url_have_group_name = true

# (4)图片实际存放路径,如果有多个,这里可以有多行:
store_path0=/opt/fastdfs/storage/images-data

设置nginx.conf配置文件,拦截/group1/M00

user  root;
worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        # 访问本机
        server_name  10.129.3.4;
    
        # 拦截包含 /group1/M00 请求,使用 fastdfs 这个 Nginx 模块进行转发
        location /group1/M00 {
            ngx_fastdfs_module;
        }
      }
}

关闭风火墙
service iptables stop

启动linux
cd /usr/local/nginx/sbin
./nginx -c /xxxxx/nginx.conf

浏览器上输入:http://10.129.3.4/group1/M00/00/00/CoEDBFznr5OAVD7-AARCsQuQZvw582.jpg


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值