Dubbo分布式架构实战--FastDFS分布式文件系统的安装与使用(单节点)
跟踪服务器:192.168.4.121 (edu-dfs-tracker-01)
存储服务器:192.168.4.125 (edu-dfs-storage-01)
环境:CentOS 6.6
用户:root
数据目录:/fastdfs (注:数据目录按你的数据盘挂载路径而定)
安装包:
FastDFS v5.05
libfastcommon-master.zip(是从FastDFS和FastDHT中提取出来的公共C函数库)
fastdfs-nginx-module_v1.16.tar.gz
nginx-1.6.2.tar.gz
fastdfs_client_java._v1.25.tar.gz
源码地址:https://github.com/happyfish100/
下载地址:https://sourceforge.net/projects/fastdfs/files/
官方论坛:https://bbs.chinaunix.net/forum-240-1.html
# yum install make cmake gcc gcc-c++
# cd /usr/local/src/
# unzip libfastcommon-master.zip
# cd libfastcommon-master
# ./make.sh
# ./make.sh install
# 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)上传或下载FastDFS源码包(FastDFS_v5.05.tar.gz)到 /usr/local/src 目录
# cd /usr/local/src/
# tar -zxvf FastDFS_v5.05.tar.gz
# cd FastDFS
# ./make.sh
# ./make.sh install
# cd /usr/bin/
# ls | grep fdfs
因此需要修改FastDFS服务脚本中相应的命令路径,也就是把/etc/init.d/fdfs_storaged
和/etc/init.d/fdfs_tracker两个脚本中的/usr/local/bin修改成/usr/bin:
# vi fdfs_trackerd
使用查找替换命令进统一修改:%s+/usr/local/bin+/usr/bin
# vi fdfs_storaged
使用查找替换命令进统一修改:%s+/usr/local/bin+/usr/bin
1、 复制FastDFS跟踪器样例配置文件,并重命名:
# cd /etc/fdfs/
# cp tracker.conf.sample tracker.conf
2、 编辑跟踪器配置文件:
# vi /etc/fdfs/tracker.conf
disabled=false
port=22122
base_path=/fastdfs/tracker
(其它参数保留默认配置,具体配置解释请参考官方文档说明:
https://bbs.chinaunix.net/thread-1941456-1-1.html )
3、 创建基础数据目录(参考基础目录base_path配置):
# mkdir -p /fastdfs/tracker
4、 防火墙中打开跟踪器端口(默认为22122):
# vi /etc/sysconfig/iptables
# service iptables restart
5、 启动Tracker:
# /etc/init.d/fdfs_trackerd start
(初次成功启动,会在/fastdfs/tracker目录下创建data、logs两个目录)
# ps -ef | grep fdfs
6、 关闭Tracker:
# /etc/init.d/fdfs_trackerd stop
7、 设置FastDFS跟踪器开机启动:
# vi /etc/rc.d/rc.local
1、 复制FastDFS存储器样例配置文件,并重命名:
# cd /etc/fdfs/
# cp storage.conf.sample storage.conf
2、 编辑存储器样例配置文件:
# vi /etc/fdfs/storage.conf
disabled=false
port=23000
base_path=/fastdfs/storage
store_path0=/fastdfs/storage
tracker_server=192.168.4.121:22122
http.server_port=8888
(其它参数保留默认配置,具体配置解释请参考官方文档说明:
https://bbs.chinaunix.net/thread-1941456-1-1.html )
3、 创建基础数据目录(参考基础目录base_path配置):
# mkdir -p /fastdfs/storage
4、 防火墙中打开存储器端口(默认为23000):
# vi /etc/sysconfig/iptables
# service iptables restart
5、 启动Storage:
# /etc/init.d/fdfs_storaged start
(初次成功启动,会在/fastdfs/storage目录下创建data、logs两个目录)
# ps -ef | grep fdfs
6、 关闭Storage:
# /etc/init.d/fdfs_storaged stop
7、 设置FastDFS存储器开机启动:
# vi /etc/rc.d/rc.local
# cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
# vi /etc/fdfs/client.conf
base_path=/fastdfs/tracker
tracker_server=192.168.4.121:22122
# /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/src/FastDFS_v5.05.tar.gz
返回ID号:group1/M00/00/00/wKgEfVUYNYeAb7XFAAVFOL7FJU4.tar.gz
# cd /usr/local/src/
# tar -zxvf fastdfs-nginx-module_v1.16.tar.gz
# cd fastdfs-nginx-module/src
# vi config
(注意:这个路径修改是很重要的,不然在nginx编译的时候会报错的)
# yum install gcc gcc-c++ make automake autoconf libtool pcre* zlib openssl openssl-devel
# cd /usr/local/src/
# tar -zxvf nginx-1.6.2.tar.gz
# cd nginx-1.6.2
# ./configure --add-module=/usr/local/src/fastdfs-nginx-module/src
# make && make install
# cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
# vi /etc/fdfs/mod_fastdfs.conf
connect_timeout=10
tracker_server=192.168.4.121:22122
url_have_group_name = true
store_path0=/fastdfs/storage
# cd /usr/local/src/FastDFS/conf
# cp http.conf mime.types /etc/fdfs/
# ln -s /fastdfs/storage/data/ /fastdfs/storage/data/M00
user root;
listen 8888;
注意、说明:
A、8888端口值是要与/etc/fdfs/storage.conf中的http.server_port=8888 相对应,
因为http.server_port默认为8888,如果想改成80,则要对应修改过来。
location ~/group([0-9])/M00 {
C、如查下载时如发现老报404,将nginx.conf第一行user nobody修改为user root后重新启动。
12、防火墙中打开Nginx的8888端口
# vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8888 -j ACCEPT
# service iptables restart
# /usr/local/nginx/sbin/nginx
ngx_http_fastdfs_set pid=xxx
(重启Nginx的命令为:/usr/local/nginx/sbin/nginx -s reload)
14、通过浏览器访问测试时上传的文件基于Dubbo的分布式系统架构实战
https://192.168.4.125:8888/group1/M00/00/00/wKgEfVUYNYeAb7XFAAVFOL7FJU4.tar.gz
六、FastDFS的使用的Demo样例讲解与演示:
最后更新:2017-08-31 18:02:26