FastDFS——安装篇

FastDFS

1、 docker安装

拉取镜像

docker pull morunchang/fastdfs

运行tracker 镜像

docker run -d --name tracker --net=host morunchang/fastdfs sh tracker.sh

运行storage 镜像

docker run -d --name storage --net=host -e TRACKER_IP=<your tracker server address>:22122 -e GROUP_NAME=<group name> morunchang/fastdfs sh storage.sh
 
/*
  1.使用的网络模式是–net=host, <your tracker server address> 替换为你机器的Ip即可
  2.<group name> 是组名,即storage的组,下面默认用group1
  3.如果想要增加新的storage服务器,再次运行该命令,注意更换 新组名
 
  4. docker ps 查看容器信息 
[root@iZh3cshm0xz7wjZ ~]# docker ps 
CONTAINER ID        IMAGE                COMMAND             CREATED              STATUS              PORTS               NAMES
ccdf6bbeab48        morunchang/fastdfs   "sh storage.sh"     5 seconds ago        Up 4 seconds                            storage
a7253c93bce1        morunchang/fastdfs   "sh tracker.sh"     About a minute ago   Up About a minute                       tracker
*/

修改storage 镜像 Nginx配置

//1.进入容器内部
docker exec -it storage  /bin/bash
 
     // storage 是 docker ps 中的NAMES
     // exit 退出
 
root@iZh3cshm0xz7wjZ:/# cd data
root@iZh3cshm0xz7wjZ:/data# ls
fast_data  fastdfs  fastdfs-nginx-module  libfastcommon  nginx  nginx-1.9.11.tar.gz
 
//2.修改nginx配置文件
root@iZh3cshm0xz7wjZ:/# vi /data/nginx/conf/nginx.conf
 
//3. 添加修改内容
location /group1/M00 {
   proxy_next_upstream http_502 http_504 error timeout invalid_header;
     proxy_cache http-cache;
     proxy_cache_valid  200 304 12h;
     proxy_cache_key $uri$is_args$args;
     proxy_pass http://fdfs_group1;
     expires 30d;
 }
 
//4.退出
root@iZh3cshm0xz7wjZ:/data/nginx/conf# exit
exit
 
//5. 重启storage服务
[root@iZh3cshm0xz7wjZ ~]# docker restart storage
storage

2、 安装包离线安装

2.1、 FastDFS-nginx-module

下载安装包

作者:蓝色土耳其——安装包和运行脚本

安装FastDFS
使用脚本进行安装fastDFS
安装FastDFS-nginx-module

#解压
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz
#修改插件模块的config文件
CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/" # 修改之前
CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/include/fastcommon/" # 修改之后

将mod_fastdfs.conf拷贝到/etc/fdfs目录下并修改配置信息

cp /home/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fds
#修改的信息有:
base_path=/data/fdfs/storage
traker_server=192.169.0.2:22122 #tracker 配置文件的ip
url_have_group_name= true
store_path0=/data/fdfs/storage
group_count=1

#在末尾加上

[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/data/fdfs/storage

设置软连接

ln -s /usr/local/lib64/libfdfsclient.so /usr/lib64/libfdfsclient.so
ln -s /usr/local/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so

设置软连接

#pcre依赖包解压,zlib依赖包解压
#配置Nginx的时候会指定依赖地址

测试

#1).查看端口监听:
netstat -unltp|grep fdfs
#2)上传文件

#(1)配置client.conf文件:

cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf

vim /etc/fdfs/client.conf

#修改以下参数:

base_path=/data/fdfs/ tracker #tracker服务器文件路径

tracker_server=192.168.31.254:22122 #tracker服务器IP地址和端口号

http.tracker_server_port=8080 # tracker 服务器的 http 端口号,必须和tracker.conf的设置对应起来

#(2)测试文件上传:

/usr/local/bin/fdfs_test /etc/fdfs/client.conf upload /home/timg.jpg
#(3)测试文件下载

/usr/local/bin/fdfs_download_file /etc/fdfs/client.conf group1/M00/00/00/wKgf_ln1fLyAchE7AAEIhvAoRxA722_big.jpg timg2.jpg

2.2、 安装Nginx-storage

安装

#解压
tar -zxvf nginx-1.8.0.tar.gz
#进入目录
cd /home/nginx-1.8.0/ 
#编译
./configure --prefix=/data/nginx --add-module=/home/fastdfs-nginx-module/src --with-pcre=/home/pcre-8.36 --with-zlib=/home/zlib-1.2.11
#--prefix=/data/nginx  安装目录
#--add-module=/home/fastdfs-nginx-module/src  指定fastdfs-nginx-module模块的目录
#--with-pcre=/home/pcre-8.36  #prce解压目录
#--with-zlib=/home/zlib-1.2.11 #zlib解压目录

 # 安装
make && make install


修改配置文件

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       8888;    #这里修改成storage服务的http.server_port=8888
        server_name  localhost;
        location / {
            if ($args ~ type=download){
                add_header Content-Disposition "attachment;";
            }
             root /home/fastdfs/fastdfs_storage_data/data;   #文件实际存储路径
             ngx_fastdfs_module;   #模块名称
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}
 

启动Nginx-storage

/usr/local/nginx_storage/sbin/nginx -t

2.3、 安装Nginx-tracker

安装Nginx-tracker
参照 Nginx-storage 修改安装位置即可

[root@myhost nginx-1.16.1]# cd /usr/local/nginx_tracker/conf/
[root@myhost conf]# egrep -v "#|^$" nginx.conf
user root;
worker_processes  1;
events {
    worker_connections  102400;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    upstream fdfs_group1 {
      server 127.0.0.1:8888;  #负载均衡是访问的实际地址是storage的http.server_port:88
    }
    server {
        listen       8080; #tracker服务的http端口号,访问这个端口的时候会自动去访问上面负载的实际地址storage_nginx的http地址。
        server_name  localhost;
        location /group1/M00 {
           proxy_pass http://fdfs_group1;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
  
   
}
[root@myhost conf]# chown -R nginx:nginx  /usr/local/nginx_tracker

启动Nginx-tracker

/usr/local/nginx_tracker/sbin/nginx -t

测试

http://192.168.2.122:8888/group1/M00/00/00/CscpQF7d1gGAFNLvAAAo4zbLT5g645.png
http://192.168.2.122:8080/group1/M00/00/00/CscpQF7d1gGAFNLvAAAo4zbLT5g645.png

参考文档

https://blog.csdn.net/u014497669/article/details/109389406
https://www.it610.com/article/1297365448156848128.htm
https://www.cnblogs.com/lansetuerqi/p/12544572.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值