FastDFS是什么?
FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。
FastDFS如何安装
0.准备
- 编译和安装所需的依赖包
yum install make cmake gcc gcc-c++
- 关闭防火墙(CentOS7为例)
CentOS 7.0默认使用的是firewall作为防火墙,使用iptables必须重新设置一下
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
1.下载安装libfastcommon
-
下载安装
git clone https://github.com/happyfish100/libfastcommon.git
cd libfastcommon/
./make.sh
./make.sh install
-
建立软链接
因为 FastDFS 主程序设置的 lib 目录是/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
2.下载安装fastdfs
wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz
tar -zxvf V5.05.tar.gz
cd V5.05
./make.sh
./make.sh install
执行安装后,默认会安装到/usr/bin中,并在/etc/fdfs中添加三个样例配置文件。
配置文件在(样例配置文件)
/etc/fdfs/client.conf.sample
/etc/fdfs/storage.conf.sample
/etc/fdfs/tracker.conf.sample
至此安装完成,下面是配置工作 。
FastDFS配置
-
配置tracker服务器
先创建一个文件夹,作为tracker服务器的base_path后面配置使用。
mkdir -p /solumon/fdfs/tracker
复制tracker样例配置文件,并重命名
cp tracker.conf.sample tracker.conf
vim /etc/fdfs/tracker.conf
#重点配置以下3个配置:
port=22122 #默认端口号
base_path=/solumon/fdfs/tracker #刚刚创建的目录
http.server_port=6666 #默认端口是8080
#其它参数保留默认配置, 具体配置解释可参考官方文档说明:http://bbs.chinaunix.net/thread-1941456-1-1.html
#保存退出
- 启动tracker服务器
service fdfs_trackerd start
或
systemctl start fdfs_trackerd
进行刚刚创建的/solumon/fdfs/tracker目录,发现目录中多了data和log两个目录,说明配置成功
- 给tracker加入开机启动
#授权
chmod +x /etc/rc.d/rc.local
#编辑文件
vim /etc/rc.d/rc.local
#加入以下代码
service fdfs_trackerd start
#保存退出
查看端口监听
#查看端口监听
netstat -unltp|grep fdfs
结果
tcp 0 0 0.0.0.0:22122 0.0.0.0:* LISTEN 2231/fdfs_trackerd
-
配置storage服务器
storage的配置与tracker很类似。
由于storage还需要一个目录用来存储数据,所以我另外多建了一个file文件夹。
#创建文件夹
mkdir -p /solumon/fdfs/storage
mkdir -p /solumon/fdfs/file
#复制storage样例配置文件,并重命名
cp storage.conf.sample storage.conf
vim /etc/fdfs/storage.conf
#重点配置以下3个配置:
port=23000 #设置storage的端口号,默认是23000,同一个组的storage端口号必须一致
base_path=/solumon/fdfs/storage #设置storage数据文件和日志目录
store_path_count=1 #存储路径个数,需要和store_path个数匹配
base_path0=/solumon/fdfs/file #实际文件存储路径
#这人注意我使用的是阿里云的ECS主机,
#这儿用到的是私有IP,应该是我的tracker 和storage在一台主机上才会如此,
#如果在不同的主机应该用公网IP
tracker_server=172.31.248.19:22122 #我CentOS7的ip地址和tracker.conf 中配置的端口
http.server_port=8888 #设置 http 端口号
#保存退出
修改保存后创建软引用
ln -s /usr/bin/fdfs_storaged /usr/local/bin
- 启动storage
service fdfs_storaged start
或
systemctl start fdfs_storaged
同样的加入开机自启动
#授权
chmod +x /etc/rc.d/rc.local
#编辑文件
vim /etc/rc.d/rc.local
#加入以下代码
service fdfs_storaged start
#保存退出
查看一下服务是否启动
netstat -unltp|grep fdfs
如果查看到22122和23000均在监听中说明服务已正常启动。
WX20180919-161552@2x.png
-
文件上传测试
网友评论