CentOS7.6 离线搭建 FastDFS + Nginx 分布式文件存储

1.下载地址:FastDFS集群安装包.zip_免费高速下载|百度网盘-分享无限制

2.创建临时目录,存放需要用到的安装包(装完可删除):

mkdir /usr/local/fastdfs_install

3.将 libfastcommon-master.zip 上传到 fastdfs_install 目录 ,然后解压:

unzip libfastcommon-master.zip

4.进入解压后的目录:

cd libfastcommon-master

5.编译、安装:

./make.sh
./make.sh install

6.将 FastDFS_v5.08.tar.gz 上传到 fast_install 目录 ,然后解压:

tar -zxf FastDFS_v5.08.tar.gz

7.进入解压后的目录:

cd FastDFS

8.编译、安装:

./make.sh
./make.sh install

9.安装成功后可执行文件在如下目录:

ll /usr/bin/fdfs*

10.配置文件在:

ll /etc/fdfs

 11.创建tracker目录

mkdir /data/tracker

12.将目录权限加满:

 chmod -R 777 /data

13.将配置文件拷贝一份,再编辑:

# 进入配置文件目录
cd /etc/fdfs
# 拷贝一份
cp tracker.conf.sample tracker.conf
# 编辑
vi tracker.conf

 14.主要配置参数如下:

#启用配置文件
disabled=false
#设置tracker的端口号
port=8090
#设置tracker的数据文件和日志目录(需预先创建)
base_path=/data/tracker
#设置http端口号
http.server_port=8010

15.启动,并查看是否安装成功:

# 启动
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
# 查看状态
netstat -unltp | grep fdfs

  

16.设置开机自启,打开开机自启配置文件:

vi /etc/rc.d/rc.local

 17.把启动命令放进去:

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

 18.创建storage目录:

mkdir /data/storage

 19.将配置文件拷贝一份,在编辑:

# 配置文件目录
cd /etc/fdfs
# 拷贝一份
cp storage.conf.sample storage.conf
# 再编辑
vi storage.conf

20.主要配置文件参数如下:

# 启用配置文件
disabled=false
# 组名,根据实际情况修改
group_name=group1
# 设置storage的端口号
port=2888
# 设置storage的日志目录(需预先创建)
base_path=/data/storage
# 存储路径个数,需要和store_path个数匹配
store_path_count=1
# 存储路径
store_path0=/data/storage
#tracker服务器的IP地址和端口号
tracker_server=127.0.0.1:8090
# 设置http端口号
http.server_port=3888

 21.启动,并查看是否安装成功:

# 启动
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
# 查看是否成功
netstat -unltp | grep fdfs
# 通过fdfs_monitor查看storage服务器是否已经登记到tracker服务器
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf

22.启动过程中报个错,意思是说不能用127.0.0.1,把第【20】步的tacker_server改成本机IP即可:

[2019-12-24 18:29:03] ERROR - file: storage_func.c, line: 1183, 
conf file "/etc/fdfs/storage.conf", 
tracker: "127.0.0.1:8090" is invalid,
tracker server ip can't be 127.0.0.1
[2019-12-24 18:29:03] CRIT - exit abnormally!

22.1.到这一步FastDFS就基本配置完了,如果没有分布式需求,就可以不用往下看了,以下内容是集成Nginx以便使用HTTP进行访问文件。 

22.2.如果需要安装Nginx则参考:运维类 - CentOS7.6 离线安装 Nginx1.14.0_<!-- -->的博客-CSDN博客




23.先创建一个安装nginx模块的目录:

mkdir /data/nmp

24.将 tar -zxf fastdfs-nginx-module_v1.16.tar.gz 上传到 第【3】步创建的 fastdfs_install 目录,并解压:

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

24.1.把fastdfs-nginx-module复制到 /data/nmp 下: 

cp -R fastdfs-nginx-module /data/nmp/

25.然后找到以前nginx的源码包,如果找不到了,重新下一个,再配置、编译一次:

# 配置
./configure --add-module=/data/nmp/fastdfs-nginx-module/src
# 注意这里千万不要make install,不然就覆盖安装了
make

26.报了个错:

make[1]: *** [objs/addon/src/ngx_http_fastdfs_module.o] 错误 1

27.解决办法,进入到 第【6、7】步解压的目录,里面有一个client目录,编译、安装:

make && make install

28.再回到nginx源码的解压目录,重复第【25】步,执行make继续报错,则修改config文件如下(去掉local): 

# 打开conifg文件
vi /data/nmp/fastdfs-nginx-module/src/config
# 把 /usr/local/include 路径中的 local 去掉 如下:
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"

29.重复第【25】步,编译成功,然后把以前的nginx可执行文件,用objs目录下的同名文件覆盖掉:

cp objs/nginx /usr/local/nginx/sbin/nginx

30.把模块src下的 mod_fastdfs.conf 文件拷贝到 /etc/fdfs 下: 

cp /data/nmp/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

31.打开配置文件:

vi /etc/fdfs/mod_fastdfs.conf

32.修改配置文件:

# 存放log目录
base_path=/data/storage
# tracker服务器IP和端口(可写多个)
tracker_server=172.17.3.1:8090
# storage所属的服务器组名
group_name=group1
# url中是否包含group名称
url_have_group_name=true
# 放置文件目录(可写多个)
store_path0=/data/storage

33.修改完成后,启动nginx发现有错误如下:

2019/12/24 22:44:31 [notice] 187972#0: 
signal process started ngx_http_fastdfs_process_init pid=187973
[2019-12-24 22:44:31] ERROR - 
file: ini_file_reader.c, line: 1029, include file "http.conf" not exists, 
line: "#include http.conf"
[2019-12-24 22:44:31] ERROR - 
file: /data/nmp/fastdfs-nginx-module/src/common.c, line: 155, 
load conf file "/etc/fdfs/mod_fastdfs.conf" fail, ret code: 2
2019/12/24 22:44:31 [alert] 174211#0: 
worker process 187973 exited with fatal code 2 and cannot be respawned

 34.把FastDFS安装包下的conf文件夹下的http.conf和mime.types复制到/etc/fdfs下,重启nginx:

cp /usr/local/fastdfs_install/FastDFS/conf/http.conf /etc/fdfs/
cp /usr/local/fastdfs_install/FastDFS/conf/mime.types /etc/fdfs/

35.最后在nginx中加入FastDFS存储路径:

server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location ~ /group[0-9]/M00 {
            root   /data/storage/data;
            ngx_fastdfs_module;
        }
}

36.我之前已经上传过一些测试文件,这边这要找出来当时上传时的存储路径就可以通过HTTP直接访问: 

http://172.17.3.1/group1/M00/00/00/rBEDAV4CMxmAE6paAAC0X34vITI912.jpg

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值