FastDFS 的安装与配置
参考文献
环境准备
-
CentOS 7.x 两台,分别安装 tracker 与 storage
-
下载安装包:
- libfastcommon:FastDFS 分离出的一些公用函数包
- FastDFS:FastDFS 本体
- fastdfs-nginx-module:FastDFS 和 nginx 的关联模块
- nginx:发布访问服务
安装步骤 (tracker 与 storage 都要执行)
-
安装基础环境
yum install -y gcc gcc-c++ yum -y install libevent
-
安装 libfastcommon 函数库
tar -zxvf libfastcommon-1.0.42.tar.gz cd libfastcommon-1.0.42.tar.gz ./make.sh ./make.sh install
具体安装的位置可以从控制台查看
-
安装 FastDFS 本体
tar -zxvf fastdfs-6.04.tar.gz cd fastdfs-6.04/
-
查看安装配置
vim make.sh
TARGET_PREFIX=$DESTDIR/usr TARGET_CONF_PATH=$DESTDIR/etc/fdfs TARGET_INIT_PATH=$DESTDIR/etc/init.d
-
安装 FastDFS
./make.sh ./make.sh install
如上图:
-
/usr/bin
中包含了可执行文件 -
/etc/fdfs
包含了配置文件
-
-
拷贝配置文件
cp /home/software/FastDFS/fastdfs-6.04/conf/* /etc/fdfs/
-
以上步骤在 tracker 和 storage 服务器中均操作完成以后,进行以下步骤。
说明:tracker 和 storage 都是同一个 fastdfs 的主程序的两个不同概念,配置不同的配置文件就可以设定为 tracker 或者 storage
配置 tracker
/etc/fdfs
下都是一些配置文件,配置 tracker 即可
vim tracker.conf
修改 tracker 配置文件,此为 tracker 的工作目录,保存数据以及日志
base_path=/usr/local/fastdfs/tracker
创建目录:
mkdir /usr/local/fastdfs/tracker -p
启动 tracker 服务
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
检查进程:
ps -ef|grep tracker
停止 tracker:
/usr/bin/stop.sh /etc/fdfs/tracker.conf
配置 storage
修改 storage 配置文件,修改 storage.cond 配置文件
# 修改组名
group_name=xdyang
# 修改 storage 的工作空间
base_path=/usr/local/fastdfs/storage
# 修改 storage 的存储空间
store_path0=/usr/local/fastdfs/storage
# 修改 tracker 的地址和端口号,用于心跳
tracker_server=192.168.1.153:22122
# 后续结合 nginx 的一个对外服务端口号
http.server_port=8888
创建目录:
mkdir /usr/local/fastdfs/storage -p
启动 storage 服务
前提:必须首先启动 tracker 服务
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf
检查进程如下:
ps -ef|grep storage
测试上传
修改 client 的测试文件,修改 client.conf 配置文件
base_path=/usr/local/fastdfs/client
tracker_server=192.168.1.153:22122
创建目录:
mkdir /usr/local/fastdfs/client
测试:
wget https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png
usr/bin/fdfs_test /etc/fdfs/client.conf upload /home/baidu_logo.png
配置 nginx fastdfs 实现文件服务器
引子
fastdfs 安装好以后是无法通过 http 访问的,这个时候就需要借助 nginx 了,所以需要安装 fastdfs 的第三方模块到 nginx 中,就能使用了。
注:nginx 需要和 storage 在同一个节点
安装 nginx 插件
-
解压 nginx 的 fastdfs 压缩包
tar -zxvf fastdfs-nginx-module-1.22.tar.gz
-
复制配置文件如下:
cp mod_fastdfs.conf /etc/fdfs
-
修改
/fastdfs-nginx-module/src/config
文件,主要是修改路径,把local
删除,因为fastdfs
安装的时候我们没有修改路径,原路径是/usr
-
重新编译 nginx
./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/fdfs/fastdfs-nginx-module-1.22/src
make make install
-
修改配置文件
主要新增一个第三方模块,修改
mod_fastdfs.conf
配置文件:base_path=/usr/local/fastdfs/tmp tracker_server=192.168.1.153:22122 group_name=xdyang url_have_group_name = true store_path0=/usr/local/fastdfs/storage
创建目录:
mkdir /usr/local/fastdfs/tmp
-
修改 nginx.conf,添加如下虚拟主机:
server { listen 8888; server_name localhost; location /xdyang/M00 { ngx_fastdfs_module; } }
-
重启 nginx