百度百科:https://baike.baidu.com/item/fastdfs/5609710?fr=aladdinhtml
相关软件包:linux
连接:https://pan.baidu.com/s/11nO2bOqBWPjtAlzATYo38Q 提取码:x1a3 nginx
安装:c++
1,安装以前首先linux上要有gcc包。vim
2,安装libfastcommoncentos
3,安装FastDFS浏览器
4,配置跟踪器(tracker)tomcat
5,配置存储器(storage)运维
6,环境搭建完成,能够进行测试环境是否搭建成功tcp
7,跟踪器和存储器安装nginx,对nginx进行整合,实现使用浏览器下载文件
启用和关闭服务顺序,跟踪器、存储器、Nginx
环境准备,两台centos:
192.168.85.6 ------ 跟踪器(tracker)、
192.168.85.7 ------- 存储节点(storage)
下载软件:http://sourceforge.net/projects/fastdfs/files/
安装gcc,命令:yum install make cmake gcc gcc-c++
直到出现Complete!下载完成
1, 将相关软件包上传至linux:
2,进入 /lhy/software 目录下,进行解压libfastcommon-master.zip:
命令:unzip libfastcommon-master.zip -d /usr/local/fast/
解压后 /usr/local/fast:
3,进入目录:cd /usr/local/fast/libfastcommon-master/
4, 进行编译和安装:
命令:./make.sh
命令:./make.sh install
注意安装的路径:也就是说,咱们的libfastcommon默认安装到了/usr/lib64/这个位置。
下面进行修改,建立软连接,使其更符合常规安装目录
4,进行软连接建立。FastDFS主程序设置的目录为/usr/local/lib/,因此咱们须要建立/usr/lib64/下的一些核心执行程序的软链接文件。
命令:mkdir /usr/local/lib/ (若是有了就不用建立了)
命令:ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
命令:ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
命令:ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
命令:ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so
1 进入到cd /lhy/software下,解压FastDFS_v5.05.tar.gz文件
命令:cd /lhy/software
命令:tar -zxvf FastDFS_v5.05.tar.gz -C /usr/local/fast/
2 安装编译
命令:cd /usr/local/fast/FastDFS/
编译命令:./make.sh
安装命令:./make.sh install ,编译后会建立一些文件夹,可是不符合日常的习惯
3 采用默认安装方式脚本文件说明:
(1)、服务脚本在:
/etc/init.d/fdfs_storaged
/etc/init.d/fdfs_trackerd
(2)、配置文件在
/etc/fdfs/client.conf.sample
/etc/fdfs/storage.conf.sample
/etc/fdfs/tracker.conf.sample
(3)、 命令行工具在/usr/bin/目录下
Fdfs_*的一些列执行脚本
四、由于FastDFS服务脚本设置的bin目录为/usr/local/bin/下,可是实际咱们安装在了/usr/bin/下面。因此咱们须要修改FastDFS配置文件中的路径,也就是须要修改俩个配置文件:
命令:vim /etc/init.d/fdfs_storaged
先按esc键,而后 shift+: ,在此处输入命名,进行替换,把 /usr/local/bin 替换为/usr/bin :
进行全局替换命令:%s+/usr/local/bin+/usr/bin
命令:vim /etc/init.d/fdfs_trackerd
进行全局替换命令:%s+/usr/local/bin+/usr/bin
1 进入 cd /etc/fdfs/目录配置跟踪器文件(注意是192.168.85.6节点),把tracker.conf.sample文件进行cope一份:去修改tracker.conf文件
2 修改tracker.conf文件
命令:vim /etc/fdfs/tracker.conf
以下图所示:咱们暂时修改配置文件里的base_path便可。
修改成本身的路径地址:base_path=/fastdfs/tracker
注意:对于tracker.conf配置文件参数解释能够找官方文档,地址为:
http://bbs.chinaunix.net/thread-1941456-1-1.html
3 最后咱们必定要建立以前定义好的目录(也就是/fastdfs/tracker):
命令:mkdir -p /fastdfs/tracker
4 关闭防火墙:(咱们在学习时能够不用考虑防火墙的问题)
Vim /etc/sysconfig/iptables
添加:-A INPUT -m state --state NEW -m tcp -p tcp --dport 22122 -j ACCEPT
重启:service iptables restart
5 启动跟踪器
启动后会创建data、logs目录
目录命令:cd /fastdfs/tracker/ && ll
启动tracker命令:/etc/init.d/fdfs_trackerd start
查看进程命令:ps -el | grep fdfs
中止tracker命令:/etc/init.d/fdfs_trackerd stop
6
能够设置开机启动跟踪器:(通常生产环境须要开机启动一些服务,如keepaliv
ed、linux、tomcat等等)
命令:vim /etc/rc.d/rc.local
加入配置:/etc/init.d/fdfs_trackerd start
1 进入文件目录:cd /etc/fdfs/,进行copy storage文件一份
命令:cd /etc/fdfs/
命令:cp storage.conf.sample storage.conf
2 修改storage.conf文件
命令:vim /etc/fdfs/storage.conf
修改内容:
base_path=/fastdfs/storage
store_path0=/fastdfs/storage
tracker_server=192.168.1.172:22122
http.server_port=8888
3 建立存储目录:mkdir -p /fastdfs/storage
4 打开防火墙:
命令:vim /etc/sysconfig/iptables
添加:-A INPUT -m state --state NEW -m tcp -p tcp --dport 23000 -j ACCEPT
重启:service iptables restart
5 启动存储(storage)
命令:/etc/init.d/fdfs_storaged start (关闭:/etc/init.d/fdfs_storaged stop)
(初次启动成功后会在/fastdbf/storage/ 目录下建立 data、logs俩个目录)
6 查看FastDFS storage 是否启动成功
命令:ps -ef | grep fdfs
而且咱们进入到/fastdfs/storage/data/文件夹下会看到一些目录文件(256*256)
,以下:
命令:cd /fastdfs/storage/data/ && ls
7同理,也能够设置开机启动存储器:(通常生产环境须要开机启动一些服务,
如keepalived、linux、tomcat等等)
命令:vim /etc/rc.d/rc.local
加入配置:/etc/init.d/fdfs_storaged start
到此为止咱们的FastDFS环境已经搭建完成!
1 咱们先使用命令上传一个文件。注意:是在tracker(跟踪器)中上传。
首先咱们在跟踪器(192.168.85.6)里copy一份client.conf文件。
命令:cd /etc/fdfs/
命令:cp client.conf.sample client.conf
2 编辑client.conf文件
命令:vim /etc/fdfs/client.conf
修改内容:
base_path=/fastdfs/tracker
tracker_server=192.168.85.6:22122
3 咱们找到命令的脚本位置,而且使用命令,进行文件的上传:
命令:cd /usr/bin/
命令:ls | grep fdfs
4 使用命令fdfs_upload_file进行上传操做:
首先,咱们先看一下存储器(192.168.85.7),进入到data下,在进入00文件夹下,发现00文件夹下还有一堆文件夹,而后继续进入00文件夹下,最终咱们所
进入的文件夹为:
/fastdfs/storage/data/00/00 里面什么文件都没有。
而后,咱们进行上传操做,好比把以前的/lhy/software/文件夹下的某一个文件上传到FastDFS系统中去,在跟踪器(192.168.85.6)中上传文件,命令以下:
命令:/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /lhy/software/FastDFS_v5.05.tar.gz
最后咱们发现,命令执行完毕后,返回一个group1/M00/00/00/...的ID,其实就是返回当前所上传的文件在存储器(192.168.85.6)中的哪个组、哪个目录位置,因此咱们查看存储器中的/fastdfs/storage/data/00/00文件夹位置,发现已经存在了刚才上传的文件,到此为止,咱们的测试上传文件已经OK了。以下:
继续上传一张图片,以便后来使用:
group1/M00/00/00/wKhVB1x9DoOARpcsAAIA416aNts636.png
1, 首先两台机器里必须先安装nginx( http://www.javashuo.com/article/p-algcjarv-m.html )
2,而后咱们在存储节点上(192.168.85.7)安装 fastdfs-nginx-module_v1.16.tar.gz 包进行整合。
3 进入目录:cd fastdfs-nginx-module/src/
4 编辑配置文件config
命令: vim /usr/local/fast/fastdfs-nginx-module/src/config
修改内容:去掉下图中的local文件层次
修改成:
5 FastDFS与nginx进行集成
首先把以前的nginx进行删除
目录命令:cd /usr/local/
删除命令:rm -rf nginx
进入到nginx目录命令:cd nginx-1.6.2/
加入模块命令:./configure --add-module=/usr/local/fast/fastdfs-nginx-module/src/
从新编译命令: make && make install
6 复制fastdfs-ngin-module中的配置文件,到/etc/fdfs目录中,如图所示:
cd /usr/local/fast/fastdfs-nginx-module/src/
copy命令:cp /usr/local/fast/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
7 进行修改 /etc/fdfs/ 目录下,咱们刚刚copy过来的mod_fastdfs.conf 文件。
命令:vim /etc/fdfs/mod_fastdfs.conf
修改内容:好比链接超时时间、跟踪器路径配置、url的group配置、
connect_timeout=10
tracker_server=192.168.85.6:22122
url_have_group_name = true
store_path0=/fastdfs/storage
8 复制FastDFS里的2个文件,到/etc/fdfs目录中,如图所示:
目录命令:cd /usr/local/fast/FastDFS/conf/
Copy命令:cp http.conf mime.types /etc/fdfs/
9
建立一个软链接,在/fastdfs/storage文件存储目录下建立软链接,将其连接到实际存放数据
的目录。
命令:ln -s /fastdfs/storage/data/ /fastdfs/storage/data/M00
10 修改Nginx配置文件,如图所示:
cd /usr/local/nginx/conf/
命令:vim nginx.conf
修改配置内容以下图所示:
修改内容为:
listen 8888;
server_name localhost;
location ~/group([0-9])/M00 {
#alias /fastdfs/storage/data;
ngx_fastdfs_module;
}
注意:nginx里的端口要和第五步 配置FastDFS存储中的storage.conf文件配置一致,也就是(http.server_port=8888)
11 最后检查防火墙,而后咱们启动nginx服务
启动命令:/usr/local/nginx/sbin/nginx,咱们刚才上传了一个文件,上传成功,
如图:
group1/M00/00/00/wKhVB1x9DoOARpcsAAIA416aNts636.png
如今咱们使用这个ID用浏览器访问地址:
http://192.168.85.7:8888/group1/M00/00/00/wKhVB1x9DoOARpcsAAIA416aNts636.png
运维注意:咱们在使用FastDFS的时候,须要正常关机,不要使用kill -9
强杀FastDFS进程,否则会在文件上传时出现丢数据的状况。
到此,咱们的FastDFS与Nginx整合完毕!!
八:启动中止服务步骤以下:
启动命令:
启动tracker命令:/etc/init.d/fdfs_trackerd start
查看进程命令:ps -el | grep fdfs
启动storage命令:/etc/init.d/fdfs_storaged start
查看进程命令:ps -el | grep fdfs
启动nginx命令:/usr/local/nginx/sbin/nginx
中止命令:
中止tracker命令:/etc/init.d/fdfs_trackerd stop
关闭storage命令:/etc/init.d/fdfs_storaged stop
关闭nginx命令:/usr/local/nginx/sbin/nginx -s stop