如图(7),可以看到此时已经正常监听tracker的22122端口和storage的23000端口,至此storage服务器就已经配置完成,确定了storage服务器启动成功后,还有一项工作就是看看storage服务器是否已经登记到 tracker服务器(也可以理解为tracker与storage是否整合成功),运行以下命令:
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf 图(8)如图(8)所示,看到10.211.55.5 ACTIVE 字样即可说明storage服务器已经成功登记到了tracker服务器,同理别忘了添加开机启动,打开/etc/rc.d/rc.local并将如下配置追加到文件中:
service fdfs_storage start至此我们就已经完成了fastdfs的全部配置,此时也就可以用客户端工具进行文件上传下载的测试了。
初步测试测试时需要设置客户端的配置文件,编辑/etc/fdfs目录下的client.conf 文件,打开文件后依次做以下修改:
base_path=/opt/fastdfs_tracker #tracker服务器文件路径 tracker_server=192.168.111.11:22122 #tracker服务器IP地址和端口号 http.tracker_server_port=6666 # tracker 服务器的 http 端口号,必须和tracker的设置对应起来配置完成后就可以模拟文件上传了,先给/opt目录下随便放个文件(简历.pdf)。
然后通过执行客户端上传命令尝试上传:
运行后可以发现给我们返回了一个路径:
这就表示我们的文件已经上传成功了,当文件存储到某个子目录后,即认为该文件存储成功,接下来会为该文件生成一个文件名,文件名由group、存储目录、两级子目录、fileid、文件后缀名(由客户端指定,主要用于区分文件类型)拼接而成,我们到对应目录下也能找到对应的文件:
但是此时并不能通过http访问,因为FastDFS目前已不支持http协议,所以此处在nginx上使用FastDFS的模块fastdfs-nginx-module,这样做最大的好处就是提供了HTTP服务并且解决了group中storage服务器的同步延迟问题,接下来就具体记录一下fastdfs-nginx-module的安装配置过程。
fastdfs-nginx-module在安装nginx之前需要先安装一些模块依赖的lib库,直接贴出安装代码:
yum -y install pcre pcre-devel yum -y install zlib zlib-devel yum -y install openssl openssl-devel依次装好这些依赖之后就可以开始安装nginx了。
storage nginx首先分别进行解压:
tar -zxvf nginx-1.13.0.tar.gz unzip fastdfs-nginx-module-master.zip解压成功后就可以编译安装nginx了,进入nginx目录并输入以下命令进行配置:
./configure --prefix=/usr/local/nginx --add-module=/usr/local/fastdfs-nginx-module-master/配置成功后会看到如下信息:
紧接着就可以进行编译安装了,依次执行以下命令:
make make install安装完成后,可以看到/usr/local/下新增了一个nginx目录,这就是刚才新安装的nginx的目录。
接下来要修改一下nginx的配置文件,进入conf目录并修改nginx.conf,把listen端口为80的server改为:
然后进入FastDFS的安装目录/usr/local/fastdfs-5.05目录下的conf目录,将http.conf和mime.types拷贝到/etc/fdfs目录下:
cp -r /usr/local/fastdfs-5.05/conf/http.conf /etc/fdfs/ cp -r /usr/local/fastdfs-5.05/conf/mime.types /etc/fdfs/