1.什么是FastDFS?
FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器主要做调度工作,在访问上起负载均衡的作用。
存储节点存储文件,完成文件管理的所有功能:存储、同步和提供存取接口,FastDFS同时对文件的meta data进行管理。所谓文件的meta data就是文件的相关属性,以键值对(key value pair)方式表示,如:width=1024,其中的key为width,value为1024。文件meta data是文件属性列表,可以包含多个键值对。
FastDFS系统结构如下图所示:
2.本文目标
本文的目标是在CentOS上,单机安装FastDFS,包括Tracker和Storage,并结合Nginx的配置,最终完成文件的上传,并通过Nginx的路径来完成静态文件内容的展示
3.安装准备
3.1.1安装依赖库
在安装FastDFS和Nginx之前,需确保gcc、gcc-c++、 libstdc++-devel、make等依赖库和工具已经安装。
基本环境安装 yum -y install gcc gcc-c++ libstdc++-devel yum -y groupinstall 'Development Tools' yum -y install wget yum -y install make yum -y install pcre-devel yum install -y zlib-devel yum -y install libxml2 libxml2-dev yum -y install libxslt-devel yum -y install gd-devel yum -y install pcre pcre-devel yum -y install zlib zlib-devel yum -y install openssl openssl-devel
3.1.2安装libfastcommon类库
安装FastDFS必须先安装libfastcommon类库,否则会导致报错,安装直接根据如下几个步骤即可~
下载 wget https://github.com/happyfish100/libfastcommon/archive/master.zip 解压 unzip master.zip 进入 cd libfastcommon-master 或者 从 https://github.com/happyfish100/libfastcommon/archive/V1.0.39.tar.gz下载指定版本 解压 tar -zxvf V.1.0.39.tar.gz cd libfastcommon-master 编译 ./make.sh 安装 ./make.sh install
安装结束。
3.1.3安装FastDFS
下载 wget https://github.com/happyfish100/fastdfs/archive/master.tar.gz 解压 tar -zxvf master.tar.gz 进入 cd fastdfs-master/ 编译 ./make.sh 安装 ./make.sh install
安装结束。
安装好之后,在/usr/bin目录下,可以看fdfs开头的命令工具~
FastDFS安装完成之后,所有配置文件在/etc/fdfs目录下,tracker需要tracker.conf配置文件,storage需要storage.conf配置文件。
至此FastDFS安装完成,但还不能运行。