1、下载软件包


  1. mkdir -p /opt/fastdfs
  2. cd /opt/fastdfs
  3. wget https://download.xinac.net/download/fastdfs/fastdfs-5.12.tar.gz
  4. wget https://download.xinac.net/download/fastdfs/fastdfs-nginx-module-1.22.tar.gz
  5. wget https://download.xinac.net/download/fastdfs/libfastcommon-1.0.39.tar.gz
  6. yum install git gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl-devel wget vim -y
  7. # 创建数据存储目录
  8. mkdir -p /home/fastdfs/storage/file
  9. mkdir -p /home/fastdfs/tracker

2、安装libfastcommon


  1. cd /opt/fastdfs && tar -zxvf libfastcommon-1.0.39.tar.gz && cd libfastcommon-1.0.39
  2. # 编译安装
  3. ./make.sh && ./make.sh install
  4. ## 以下操作可选
  5. #ln -sf /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
  6. #ln -sf /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
  7. #ln -sf /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
  8. #ln -sf /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

3、安装FastDFS


  1. cd /opt/fastdfs && tar -zxvf fastdfs-5.12.tar.gz && cd fastdfs-5.12
  2. # 编译安装
  3. ./make.sh && ./make.sh install
  4. # 配置文件准备
  5. cp /opt/fastdfs/fastdfs-5.12/conf/* /etc/fdfs/

4、安装fastdfs-nginx-module


  1. ## 单台文件服务器可不安装
  2. cd /opt/fastdfs && tar -zxvf fastdfs-nginx-module-1.22.tar.gz
  3. cp fastdfs-nginx-module-1.22/src/mod_fastdfs.conf /etc/fdfs/

5、安装nginx


  1. ## 单台文件服务器可不安装 fastdfs-nginx-module
  2. cd /opt/fastdfs && wget https://download.xinac.net/download/server/nginx/nginx-1.18.0.tar.gz
  3. tar -zxvf nginx-1.18.0.tar.gz && cd /opt/fastdfs/nginx-1.18.0
  4. ./configure –user=nginx –group=nginx \
  5. –prefix=/usr/local/nginx \
  6. –conf-path=/etc/nginx/nginx.conf \
  7. –error-log-path=/var/log/nginx/error.log \
  8. –http-log-path=/var/log/nginx/access.log \
  9. –pid-path=/var/run/nginx/nginx.pid \
  10. –lock-path=/var/lock/nginx.lock \
  11. –with-http_stub_status_module –with-http_ssl_module \
  12. –with-http_gzip_static_module –with-http_sub_module \
  13. –with-http_v2_module –with-http_mp4_module –with-http_flv_module \
  14. –http-client-body-temp-path=/var/tmp/nginx/client \
  15. –http-proxy-temp-path=/var/tmp/nginx/proxy \
  16. –http-fastcgi-temp-path=/var/tmp/nginx/fastcgi \
  17. –with-pcre –add-module=/opt/fastdfs/fastdfs-nginx-module-1.22/src
  18. make && make install

6、tracker配置


  1. #vim /etc/fdfs/tracker.conf
  2. ## 需要修改的内容如下
  3. # tracker服务器端口(默认22122,一般不修改)
  4. port=22122
  5. # 存储日志和数据的根目录
  6. base_path=/home/fastdfs/tracker
  7. store_group=group1
  8. max_connections=4000
  9. # HTTP port on this tracker server
  10. http.server_port=80

7、storage配置


  1. #vim /etc/fdfs/storage.conf
  2. ## 需要修改的内容如下
  3. # storage所属的组
  4. group_name=group1
  5. # storage服务端口(默认23000,一般不修改)
  6. port=23000
  7. # 数据和日志文件存储根目录
  8. base_path=/home/fastdfs/storage
  9. # 第一个存储目录
  10. store_path0=/home/fastdfs/storage/file
  11. # # tracker服务器IP和端口,不能写127.0.0.1
  12. tracker_server=192.168.10.1:22122
  13. # http访问文件的端口(默认8888,看情况修改,和nginx中保持一致)
  14. http.server_port=80

8、配置nginx访问


  1. ## 单台文件服务器可不用安装
  2. #vim /etc/fdfs/mod_fastdfs.conf
  3. ##需要修改的内容如下
  4. # 连接超时时间
  5. connect_timeout=10
  6. # the group name of the local storage server
  7. group_name=group1
  8. storage_server_port=23000
  9. #tracker服务器IP和端口
  10. tracker_server=192.168.10.1:22122
  11. url_have_group_name=true
  12. store_path0=/home/fastdfs/storage/file
  13. #配置nginx.conf
  14. vim /etc/nginx/nginx.conf
  15. #添加如下配置
  16. server {
  17. listen 80; ## 该端口为storage.conf中的http.server_port相同
  18. server_name localhost;
  19. location ~/group1/M00 {
  20. ngx_fastdfs_module;
  21. }
  22. error_page 500 502 503 504 /50x.html;
  23. location = /50x.html {
  24. root html;
  25. }
  26. }
  27. # 添加如下行,将 /group1/M00 映射
  28. location ^~ /group1/M00 {
  29. alias /home/fastdfs/storage/file/data/;
  30. }

9、client测试


  1. mkdir -p /home/fastdfs/client
  2. vim /etc/fdfs/client.conf
  3. ## 需要修改的内容如下
  4. base_path=/home/fastdfs/client
  5. # tracker服务器IP和端口
  6. tracker_server=192.168.10.1:22122
  7. # HTTP settings
  8. # http.tracker_server_port=80
  9. # 保存后测试,返回ID表示成功 如:group1/M00/00/00/xx.tar.gz
  10. fdfs_upload_file /etc/fdfs/client.conf /opt/fastdfs/libfastcommon-1.0.39.tar.gz

10、测试下载


  1. # 测试下载,用外部浏览器访问刚才已传过的nginx安装包,引用返回的ID
  2. http://192.168.10.1:8801/group1/M00/00/00/wKgAQ1pysxmAaqhAAA76tz-dVgg.tar.gz
  3. # 弹出下载单机部署全部跑通

11、启动服务


  1. #启动tracker服务
  2. /etc/init.d/fdfs_trackerd start
  3. #自启动tracker服务
  4. chkconfig fdfs_trackerd on
  5. #启动storage服务
  6. /etc/init.d/fdfs_storaged start
  7. #自启动storage服务
  8. chkconfig fdfs_storaged on
  9. service nginx restart
  10. #检测集群
  11. /usr/bin/fdfs_monitor /etc/fdfs/storage.conf