3

环境准备

  • CentOS7.x服务器两台,分别安装tracker与storage(也可以只使用一台同时安装tracker与storage)
  • 下载FastDFS安装包:
    FastDFS下载地址:https://github.com/happyfish100/
    image.png

     libfatscommon:FastDFS分离出的一些公用函数包
     FastDFS:FastDFS本体
     fastdfs-nginx-module:FastDFS和nginx的关联模块
  • 下载Nginx安装包
    下载地址:http://nginx.org/en/download....

     nginx用来提供访问服务
  • 将下载好的安装包上传到服务器上

image.png

安装步骤

以下安装步骤tracker和storage都要执行
1、安装基础环境

yum install -y gcc gcc-c++
yum -y install libevent

2、解压libfatscommon函数库

# 解压
tar -zxvf libfastcommon-1.0.43.tar.gz

3、进入libfastcommon文件夹,编译并且安装

./make.sh
./make.sh install

从控制台可以看到安装目录
image.png

4、解压fastdfs主程序文件

# 解压
tar -zxvf fastdfs-6.06.tar.gz

5、进入fastdfs目录,安装fastdfs主程序

./make.sh
./make.sh install 

从控制台可以看到主程序的安装目录
image.png

  • /usr/bin中包含了可执行文件:

image.png

  • /etc/fdfs包含了配置文件:

image.png

6、将安装文件夹下的配置文件拷贝到/etc/fdfs目录下

cp /home/software/fastdfs-6.06/conf/* /etc/fdfs/

image.png

配置tracker服务

1、说明
tracker和storage都是同一个fastdfs的主程序的两个不同概念,配置不同的配置文件就可以设定为tracker或者storage

2、配置tracker
/etc/fdfs下都是一些配置文件,配置tracker即可

vim tracker.conf

image.png

3、修改tracker配置文件中的tracker工作目录,保存数据以及日志

base_path=/usr/local/fastdfs/tracker

image.png

保存并退出,然后创建/usr/local/fastdfs/tracker目录

mkdir /usr/local/fastdfs/tracker -p

4、启动tracker服务

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

检查进程如下:

ps -ef|grep tracker

image.png

启动成功!

5、停止tracker

/usr/bin/stop.sh /etc/fdfs/tracker.conf

配置storage服务

1、修改storage配置文件
image.png

vim storage.conf
# 修改storage的工作空间
base_path=/usr/local/fastdfs/storage
# 修改storage的存储空间
store_path0=/usr/local/fastdfs/storage
# 修改tracker的地址和端口号,用于心跳
tracker_server=192.168.0.170:22122

创建目录

mkdir /usr/local/fastdfs/storage -p

2、启动storage

启动storage欠必须先启动tracker

/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start

检查进程如下:

ps -ef|grep storage

image.png

启动成功!

测试上传

1、修改的client配置文件

vim client.conf

image.png

   base_path=/usr/local/fastdfs/client
   #tracker的ip根据实际tracker的ip地址配置
   tracker_server=192.168.0.170:22122

创建目录

mkdir /usr/local/fastdfs/client

2、测试
这里以上传/etc/fdfs目录下的anti-steal.jpg文件进行测试

/usr/bin/fdfs_test /etc/fdfs/client.conf upload /etc/fdfs/anti-steal.jpg

image.png

报错,这里是因为tracker服务器的22122端口没开放,开放端口后重新上传
image.png
上传成功!这里remote_filename显示了上传后存储目录(在前面配置的storage的store_path0=/usr/local/fastdfs/storage下),url为远程访问地址,这里还不能远程访问,配置了nginx模块后才能访问。

cd /usr/local/fastdfs/storage/data

image.png

image.png

配置 nginx

fastdfs安装好以后是无法通过http访问的,这个时候就需要借助nginx了,所以需要安装fastdfs的第三方模块到nginx中,就能使用了。

注:nginx需要和storage在同一个节点。

1、安装nginx插件

  • 解压nginx的fastdfs压缩包
  tar -zxvf fastdfs-nginx-module-1.22.tar.gz
  • 进入解压后文件夹的src目录下,复制配置文件到fdfs目录下

image.png

cp mod_fastdfs.conf /etc/fdfs
  • 修改/fastdfs-nginx-module/src/config文件,主要是修改路径,把local删除,因为fastdfs安装的时候我们没有修改路径,原路径是/usr

image.png

2、安装nginx
安装步骤参考:https://segmentfault.com/a/11...
注意:配置命令与该文章中略有不同,需要增加一个fastdfs-nginx-module模块,即下面的最后一行,以实际路径为准

./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/home/software/fastdfs-nginx-module-1.22/src

3、修改mod_fastdfs.conf配置文件
image.png

vim mod_fastdfs.conf
base_path=/usr/local/fastdfs/tmp
#tracker地址
tracker_server=192.168.0.170:22122
url_have_group_name = true
store0_path=/usr/local/fastdfs/storage

创建base_path目录

mkdir /usr/local/fastdfs/tmp

4、修改nginx.conf,添加如下虚拟主机:
image.png

server {
    listen       8888;
    server_name  localhost;

    location /group1/M00 {
            ngx_fastdfs_module;
    }

}

5、启动nginx
在浏览器输入图片url,别忘了加上端口号
image.png
成功!


强力小磊哥
79 声望6 粉丝

翻过一座山,就高过一座山