最近因为业务需求,需要搭一个fastdfs服务器,现在把步骤记录下来。
安装FastDFS
1、下载安装FastDFS依赖包libfastcommon
mkdir ~/home/fastdfs
# 下载依赖包
wget https://codeload.github.com/happyfish100/libfastcommon/zip/master
# 解压
unzip libfastcommon-master.zip
# 安装
cd libfastcommon-master
./make.sh
./make.sh install
2、下载安装FastDFS
首先去https://github.com/happyfish100/fastdfs
下载最新代码的zip压缩包
unzip fastdfs-master.zip
cd fastdfs-master
./make.sh
./make.sh install
按照默认方式安装之后的文件和目录:
1)服务脚本
➜ fastdfs-master ll /etc/init.d |grep fdfs
-rwxr-xr-x 1 root root 961 9月 28 15:19 fdfs_storaged
-rwxr-xr-x 1 root root 963 9月 28 15:19 fdfs_trackerd
2)配置文件(默认)
➜ fastdfs-master ll /etc/fdfs
-rw-rw-r-- 1 funstep funstep 24K 6月 29 11:31 anti-steal.jpg
-rw-r--r-- 1 root root 1.5K 9月 28 15:19 client.conf.sample
-rw-r--r-- 1 root root 7.8K 9月 28 15:19 storage.conf.sample
-rw-r--r-- 1 root root 7.3K 9月 28 15:19 tracker.conf.sample
注意:FastDFS区分tracker和storage服务器,按照对应的脚本即可启动服务。
配置tracker和storage
1、拷贝tracker.conf.sample和storage.conf.sample副本,修改配置信息
cp tracker.conf.sample tracker.conf
cp storage.conf.sample storage.conf
2、配置tracker.conf
# 默认false,如果true则禁用,false代表生效
disable=false
# 默认端口22122
port=22122
# 基础路径
base_path=/data/fastdfs/
# http通信端口
http.server_port=80
3、配置storage.conf
# 默认端口23000
port=23000
# 日志文件存放位置
base_path=/data/fastdfs/storage
store_path0=/data/fastdfs/storage
# tracker的ip+端口
tracker_server=x.x.x.x:22122
# http通信端口
http.server_port=80
将fastdfs-master/conf下的其他配置文件拷贝到/etc/fdfs中mime.types
、http.conf
、mime.types
、mod_fastdfs.conf
4、配置client.conf
base_path=/data/fastdfs
http.tracker_server_port=80
5、配置mod_fastdfs.conf
base_path=/data/fastdfs/
tracker_server=x.x.x.x:22122
url_have_group_name=1
store_path0=/data/fastdfs/storage
配置好之后可以测试启动服务:
/etc/init.d/fdfs_trackerd /etc/fdfs/tracker.conf
/etc/init.d/fdfs_storaged /etc/fdfs/storage.conf
可以查看是否启动成功:
netstat -ntpl|grep fdfs
tcp 0 0 0.0.0.0:23000 0.0.0.0:* LISTEN 4345/fdfs_storaged
tcp 0 0 0.0.0.0:22122 0.0.0.0:* LISTEN 4803/fdfs_trackerd
成功~
我们可以试一下上传文件
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf ~/Pictures/cool-wallpaper-dawn-dusk-66997.jpg
group1/M00/00/7E/rBBkOluwfQaAZC3SAB5W09X9Gp0623.jpg
成功~
配置nginx下载文件
首先下载nginx和fastdfs-nginx-module
wget -c https://nginx.org/download/nginx-1.10.1.tar.gz
wget https://github.com/happyfish100/fastdfs-nginx-module/archive/master.zip
将两个压缩包解压之后,先不要急着把nginx安装。
配置fastdfs-nginx-model
1、修改mod-fastdfs.conf文件
tracker_server=x.x.x.x:22122
url_have_group_name = true
store_path0=/data/fastdfs/storage
2、拷贝配置文件
接着我们需要把fastdfs-5.05下面的配置中还没有存在/etc/fdfs中的拷贝进去
cd /software/fastdfs-5.05/conf
cp anti-steal.jpg http.conf mime.types /etc/fdfs/
配置nginx
进入到nginx的解压目录后:
./configure --add-module=../fastdfs-nginx-module-master/src/
make
make install
此时的nginx就已经安装好了。
配置nginx.conf
修改80端口
server {
listen 80;
server_name x.x.x.x;
location /group1/M00/ {
root /home/funstep/data/fastdfs/storage/data;
ngx_fastdfs_module;
}
}
大功告成,现在我们启动nginx试一下能不能直接下载。
/usr/local/nginx/sbin/nginx
,
显示ngx_http_fastdfs_set pid=25426
即为配置成功。
接下来我们在地址栏输入刚刚上传文件的路径
http://x.x.x.x/group1/M00/00/7E/rBBkOluwfQaAZC3SAB5W09X9Gp0623.jpg
浏览器可以显示出图片即为下载成功。
网友评论