怎么在CentOS7中用nginx 搭建 FastDFS 分布式文件存储系统
step 1 : 准备资料
step 2: 装置 fastdfscommon
2-1: 装置所需求的依赖环境 yum -y install libevent
2-2: 解压 fastdfscommon 压缩包 tar -zxvf libfastcommon-1.0.7.tar.gz
2-3: 进入刚解压出来的 fastdfscommon 文件夹, 找到 make.sh 文件用它来进行编
译 ./make.sh
假如编译出错,解决方案如下:
yum install gcc-c++ yum install pcre pcre-devel yum install zlib zlib-devel yum install openssl openssl-devel
2-4: 装置刚刚编译的 fastdfscommon 文件 ./make.sh install
2-5: 装置后会装置到目录 /usr/lib64, 该目录有很多文件,进入此目录检查所有能够使用以下指令 ll libfast*
2-6: 因 为 lib64 是 64 位 的 环 境 , 所 以 我 们 要 将 它 移 至 目
录 /usr/lib, cp libfastcommon.so /usr/lib
step 3: 装置 tracker 服务
3-1 : 找到 fastdfs-5.05.tar.gz 压缩文件 ,然后解压它, tar -zxvf fastdfs-5.05.tar.gz
3-2: 进入刚解压出来的 fastdfs-5.05.文件夹, 找到 make.sh 文件用它来进行编 译 ./make.sh
3-3: 装置刚刚编译的 fastdfscommon 文件 ./make.sh install
3-7: 将 上 面 所 有 文 件 全 部 拷 贝 到 目 录 /etc/fdfs/ 中 去cp * /etc/fdfs/, 转 到 目 录 /etc/fdfs/, 查 看 此 目 录 内 容ll
3-8: 修正 tracker.conf 文件 vim tracker.conf , 找到 base_path 要害字符串(此途径也便是日志的坚持途径, 这个随意填写)base_path=/fastdfs/tracker
3-9: 创 建 上 面 所 填 写 修 改 的 路 径 , ( 上 面 是
/fastdfs/tracker) mkdir /fastdfs/tracker -p
3-10: 分 别 在 根 目 录 / 创 建 storage , client 和 tmp , 为下面准备 mkdir /fastdfs/storage -p, mkdir /fastdfs/client -p, mkdir /fastdfs/tmp -p进入 cd /fastdfs 然后ll 检查目录结构:
3-11: ( 可 以 先 进 入 cd /usr/bin 回 车 , 查 看 ll fdfs*) 发动 tracker 服务 /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf 按 下 回 车 ( 重 启 指令 /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart)
step 4: 装置 storage 服务
4-1: 上面咱们已经在根目录的 fastdfs /fastdfs 创建了 client, storage 和 tracke 三个目录 ll /fastdfs (如上图所示)
4-2: 进入 /etc/fdfs 目录下 cd /etc/fdfs/, 然后修正 storage.conf 文件 vim storage.conf,找到 base_path 要害字然后修正此途径(日志保存的途径)
4-3: 再找 group name 要害字 (即主机的称号)wdz
4-4: 再找 store_path0 (文件存储的途径)
4-5: 再装备与 tracker 相关起来 , 装备完后保存退出:wq
装备 tracker 服务器的地址 192:168.1.103:22122 这里应该是你自己 tracker 的地址.
4-6: 发动 storage 服务, 目录转到/usr/bin/目录下 ./fdfs_storaged /etc/fdfs/storage.conf 指令发动服务 (./fdfs_storaged /etc/fdfs/storage.conf restart) 重启.
4-7: 能够检查服务有没有发动ps aux | grep storage
tep 5: 装备 client 而且上传测验图片
5-1: 转到 /etc/fdfs/ 目录下, 然后修正 client.conf 文件vim client.conf, 找 到 base_path 要害字 (存储日志的目录) 与 装备 tracker 服务器的地址
5-2: 目 录 转 到 /usr/bin 目 录 下 , 会 有 个 client_test 文 件 启
动/usr/bin/fdfs_test /etc/fdfs/client.conf upload /home/testPic.jpg
ps: /home/1.jpg 便是你要上传测验的图片地址
group_name =wdzl remote_filename 便是图片的 url 地址,等下面装备好 nginx 后能够用它 (group_name + remote_filename)的地址来访问此图片,就像 example file 所 显现的那个地址 刚刚测验上传的图片文件 保存在 /fastdfs/storage/data/00/00/ 目录下
step 6: fastdfs 与 nginx 装备
6-1: 找到之前上传的 fastdfs-nginx-module.tar.gz 压缩包文件, 解压它tar -zxvf fastdfs-nginx-module.tar.gz
6-2: 进入解压后的文件的 src 目录下, 然后修正 config 文件 vim config , 替换下面的代码,或许把 local 字样去掉
ngx_addon_name=ngx_http_fastdfs_module
HTTP_MODULES="$HTTP_MODULES ngx_http_fastdfs_module"
NGX_ADDON_SRCS="$NGX_ADDON_SRCS
$ngx_addon_dir/ngx_http_fastdfs_module.c"
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
CORE_LIBS="$CORE_LIBS -L/usr/lib -lfastcommon -lfdfsclient"
CFLAGS="$CFLAGS
D_FILE_OFFSET_BITS=64
DFDFS_OUTPUT_CHUNK_SIZE=‘256*1024’
DFDFS_MOD_CONF_FILENAME=’"/etc/fdfs/mod_fastdfs.conf"’"
ps 上面的途径要与之前的途径对应,假如是依照上面装备的话,能够直接张贴
step 7: 装置 nginx 和装备
7-2: 找到之前上传的 nginx 压缩包 tar -zxvf nginx-1.12.0.tar.gz
7-3: 解压后转到该文件夹根目录下, 如 (/home/nginx-1.12.0) ,最终复制张贴下面的代码,修正–add-module 是指向你 fastdfs-nginx-module 的 src 文件所在途径, 最终按下回车
7-4: 编译并装置 nginx, 在该文件夹根目录下, 如 (/home/tar/nginx-1.15.0)输入编译指令make,然后装置make install
-
7-10: 检测 nginx 转到 nginx 装置目录下的 sbin 的目录下 (发动之前能够
使用 ./nginx -t 检测是否装备正确)
问题一:假如出现下图问题:
进入 nginx 解压后的目录,删去 Makefile 文件重新进入 nginx 解压后的目录,如:cd /home/tar/nginx-1.15.2回车,将下图代码进行重新编译:
回车,然后进入 nginx 解压后的根目录进行编译和装置,输入指令make && make install回车即可。再次进入 nginx 装置目录下的 sbin 目录,输入指令./nginx -t,结果如下图:
step 8 检查上传到 fsatdfs 图片
-
8-1: 先关闭防火墙
重启 track (cd /usr/bin # fdfs_trackerd /etc/fdfs/tracker.conf )
重启 storage (cd/usr/bin # fdfs_storaged /etc/fdfs/storage.conf)服务器
最终重启 ningx 服务器(cd /usr/local/nginx/sbin) ./nginx -s reload ,
无上述问题,无需重启 track、storage 服务,接下来在浏览器输入以下地址:http://192.168.1.103/wdzl/M00/00/00/图片称号
- 依照上述流程建立fastdfs 分布式文件存储成功!