fastDfs 分布式文件服务 安装配置与使用

先贴一波原理图片



所有需要填写IP的 地方全部写公网IP

一、	FastDFS tracker部署
1.上传FastDFS_v5.01.tar.gz至服务器/usr/local/src目录下;
2.依次执行以下命令
cd /usr/local/src
tar xf FastDFS_v5.01.tar.gz
cd FastDFS
./make.sh
./make.sh install
报如下错误:
./make.sh: line 180: perl: command not found
解决
yum -y install perl
./make.sh: line 14: gcc: command not found
yum -y install make cmake gcc gcc-c++
3. 创建fastdfs账号、管理FastDFS
useradd fastdfs -M -s /sbin/nologin
配置Tracker(Tracker上配置)
        1、创建tracker数据以及日志存放记录
                  mkdir -p /data/fastdfs/tracker
        2、修改FastDFS配置文件 tracker.conf
                 vi /etc/fdfs/tracker.conf
              需要修改的内容如下:
                       base_path=/data/fastdfs/tracker
                     max_connections=1024
                     work_threads=8 //通常为CPU核数
                      store_lookup=0 //0代表轮询方式
                      store_server=0
                      store_path=0
                       download_server=0
                      reserved_storage_space=4G
                     run_by_group=fastdfs
                     run_by_user=fastdfs
                     rotate_error_log=true
4.启动tracter
/usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf
判断是否启动:
ps -ef|grep fdfs_tracker

二、	FastDFS storage部署
1.上传FastDFS_v5.01.tar.gz和fastdfs-nginx-module_v1.15.tar.gz至服务器/usr/local/src目录下;

注意:
以下所有配置IP处均为服务器内网IP可通过ifconfig查看 IP
所有有关Nginx的操作全部切换到nginx的解压目录操作

2先安装 Nginx
mkdir /usr/local/software
cd /usr/local/software
wget http://nginx.org/download/nginx-1.9.15.tar.gz
tar -zxvf nginx-1.9.15.tar.gz
mv nginx-1.9.15 nginx
yum -y install pcre-devel openssl openssl-devel
yum -y install make cmake gcc gcc-c++

cd /usr/local/software/nginx

./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --pid-
path=/usr/local/nginx/conf/nginx.pid --with-http_ssl_module --with-
http_stub_status_module
make
make install
测试配置是否正确
/usr/local/nginx/sbin/nginx -t 
启动nginx
/usr/local/nginx/sbin/nginx

安装fastdfs-nginx-module模块(只在storage服务器安装)
cd /usr/local/src
tar -zxvf fastdfs-nginx-module_v1.15.tar.gz
cd /usr/local/software/nginx

编译安装nginx
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --add-module=/usr/local/src/fastdfs-nginx-module/src
make
make install


3.依次执行以下命令
cd /usr/local/src
tar xf FastDFS_v5.01.tar.gz
cd FastDFS
./make.sh(报错参照 tracker红色报错解决办法,最好是所有的安装包都安装)
./make.sh install

3. 创建fastdfs账号、管理FastDFS

useradd fastdfs -M -s /sbin/nologin

4、修改Nginx的配置文件(如果nginx.pid启动报错就删掉,重启Nginx,再次运行)
vi /usr/local/nginx/conf/nginx.conf
修改的内容如下:
    user  www  www;
    worker_processes  8;
    pid  /usr/local/nginx/logs/nginx.pid;
    worker_rlimit_nofile  51200;
    events {
         use  epoll;
         worker_connections  51200;
    }
http {
         include  mime.types;
         default_type  application/octet-stream;
         server {
                listen 80;
                server_name localhost;
                location   /g1/M00 {
root   /data/fastdfs/storage/data;
ngx_fastdfs_module;
                }
          }
    }



配置storage
1、创建storage数据以及日志存放记录
    mkdir -p /data/fastdfs/storage
2、修改storage.conf文件
    vi /etc/fdfs/storage.conf
修改的内容如下:
    group_name=g1
    base_path=/data/fastdfs
    max_connections=1024
    work_threads=8
    store_path_count=1
    store_path0=/data/fastdfs/storage
    tracker_server=IP:22122
    run_by_group=fastdfs
    run_by_user=fastdfs
    file_distribute_path_mode=1
    rotate_error_log=true
3、把nginx 模块配置文件拷贝到“/etc/fdfs”里,并修改
cp/usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
    vi /etc/fdfs/mod_fastdfs.conf
修改的内容如下:
        connect_timeout=30
        tracker_server=IP:22122
        group_name=g1
        url_have_group_name = true
store_path_count=1
store_path0=/data/fastdfs/storage
5、创建软链接
	  cd /data/fastdfs/storage
	mkdir data
	mkdir M00
	
		
ln -s /data/fastdfs/storage/data/data/fastdfs/storage/data/M00

linux下开机启动:
cp  /usr/local/src/FastDFS/init.d/fdfs_storaged  /etc/init.d/
systemctl enable fdfs_storaged.service
配置storage完毕、
6.启动nginx,fastdfs
 /usr/local/bin/fdfs_storaged /etc/fdfs/storage.conf 
 /usr/local/nginx/sbin/nginx 
7测试启动是否成功:
查看是否启动成功
    vi /etc/fdfs/client.conf
修改内容如下:
     base_path=/data/fastdfs
     tracker_server=IP:22122
执行命令检测:  fdfs_monitor /etc/fdfs/client.conf
生成以下内容则成功


8.启动成功后上传测试这里采用客户端自带的命令上传
   fdfs_upload_file  /etc/fdfs/client.conf  /data/test/aaa.jpg
如果成功,会在窗口内打印存储地址,如下图:


这时候用过 IP/g1/M00/########### 就能访问你storage服务器的图片了


由于一般是所有请求都由tracker端去处理,上传下载都交给tracker处理,所以tracker也需要安装nginx 与上面步骤相同
安装完修改配置文件

vi /usr/local/nginx/conf/nginx.conf

#下载负载storage 的nginx  
upstream gropu1 {
               server storage:80 weight=1 max_fails=2 fail_timeout=30s;
         }

    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }


        #下载还有图片回显请求 再 由tracker服务器跳转到storage nginx 服务器
        location /g1/M00 {
                     internal;#设置 tracker服务器无法直接访问文件
                     proxy_set_header    Host                 $host:80;
                     proxy_set_header    X-Real-IP            $remote_addr;
                     proxy_set_header    X-Forwarded-For      $remote_addr;
                     proxy_pass http://gropu1;
                     proxy_redirect default;

               }


       #这里是反向代理先跳转tracker服务器 后进行上传操作 
       location /fileServer {
            proxy_pass   http://tracker:8080;
        }
                }


/usr/local/nginx/sbin/nginx -s reload

以下是tracker数据库截图以及tracker服务器访功能截图




以下是直接访问storage服务器显示图片


但是这样不太安全,我是不推荐让用户直接去接触文件服务器


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值