码迷,mamicode.com
首页 > 系统相关 > 详细

linux搭建简易版本的FastDFS服务器

时间:2017-12-02 12:54:06      阅读:326      评论:0      收藏:0      [点我收藏+]

标签:mon   sbin   模式   外网   rm -rf   安装文件   zone   跟踪   reload   

开发环境:centos7环境

搭建FastDFS集群搭建非常复杂,对于初期学习FastDFS来说,搭建个单机版的作为入门更为实际一些。

首先感谢“在京奋斗者“”博主的详细搭建过程,附上博客地址http://blog.csdn.net/u012453843/article/details/69951920

本文主要参考上面博客进行搭建,并不做特详细的搭建过程

 

1.搭建centos7环境

2.配置桥接模式同时可供外网访问级访问外网

3.安装gcc环境

yum install make cmake gcc gcc-c++进行安装即可

4.上传安装文件到/usr/local/software目录

没有的话就新建一个目录mkdir /usr/local/software  

上传所需要的安装包:安装包地址目前在博客园空间的文件Sofeware包

上传成功如下图(图中没有划掉横线的部分,共4个)

技术分享图片

5.安装zip和unzip命令(用于解压zip文件)

yum install zip unzip

6.安装libfastcommon

a:解压

unzip libfastcommon-master.zip -d /usr/local/fast/ 

b.进入目录

cd /usr/local/fast/libfastcommon-master/

c编译

 ./make.sh

d.安装

./make.sh install

7.创建软连接

 FastDFS主程序设置的目录为/usr/local/lib/,所以我们需要创建/ usr/lib64/下的一些核心执行程序的软连接文件。如下所示。

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

8.安装FastDFS

a.进入到cd /usr/local/software下,解压FastDFS_v5.05.tar.gz文件 

b.编译安装

cd /usr/local/fast/FastDFS/ 

./make.sh

./make.sh install  

安装完后,服务脚本位置如下

技术分享图片

配置文件位置如下(划线部分为后续添加)

技术分享图片

 FastDFS一系列执行脚本如下,可以看到有上传文件脚本、下载文件脚本等等。

cd /usr/bin/ && ls | grep fdfs 

技术分享图片

c.

c1 : fastDFS服务脚本设置的bin目录为/usr/local/bin/下,但是实际我们安装在了/u sr/bin/下面。所以我们需要修改FastDFS配置文件中的路径,也就是需要修改两个配置文件

     使用命令vim /etc/init.d/fdfs_storaged进入编辑模式,然后直接输入":",光标会定位到最后一行,在":"后输入"%s+/usr/local/bin+/usr/bin",如下图所示。输入完之后回车,会提示修改了7处。

 c2: 接着修改第二个配置文件,我们使用命令vim /etc/init.d/fdfs_trackerd进入编辑模式,接着按照上面那样输入":%s+/usr/local/bin+/usr/bin "并按回车,同样会提醒我们修改了7处。

 

9.配置跟踪服务器

a 进入到/etc/fdfs目录并且复制一份tracker.conf.sample并命名为tracker.conf,如下所示。

 cp tracker.conf.sample tracker.conf

b 使用命令vim /etc/fdfs/tracker.conf进入编辑模式,然后修改base_path的值为/fastdfs/tracker,

c.我们在上图配置文件中配置的/fastdfs/tracker目前是不存在的,因此我们需要创建一下该目录

mkdir -p /fastdfs/tracker (会在根目录创建文件夹/fastdfs/tracker)

d.配置并重启防火墙

放开tracker使用的端口22122

firewall-cmd --zone=public --add-port=22122/tcp --permanent

firewall-cmd --reload

e.在启动tracker之前,/fastdfs/tracker目录下是没有任何文件的

f.  启动tracker,启动完之后,可以看到这个目录下多了两个目录data和logs

/etc/init.d/fdfs_trackerd start

技术分享图片

 

10.设置开机自启动

在rc.local文件中添加/etc/init.d/fdfs_trackerd start

vim /etc/rc.d/rc.local

技术分享图片

11.配置fastdfs存储

a.进入/etc/fdfs目录,复制一份storage.conf.sample文件并命名为storage.conf

b.修改storage.conf文件 ,我们使用命令vim /etc/fdfs/storage.conf进入编辑模式,对以下四项进行修改,我的虚拟机的IP192.168.0.204,大家根据自己虚拟机的IP自行设置。

  1. base_path=/fastdfs/storage  
  2. store_path0=/fastdfs/storage  
  3. tracker_server=192.168.156.13:22122  
  4. http.server_port=8888  

c.创建存储目录,如下所示。

 mkdir -p /fastdfs/storage

12.配置防火墙,允许外界访问storage的默认端口23000

firewall-cmd --zone=public --add-port=23000/tcp --permanent

firewall-cmd --reload

13.在启动storage之前,/fastdbf/storage目录下是没有任何文件的

 启动storage,启动后再看/fastdfs/storage目录,可以看到多了data和logs

技术分享图片

 

14.查看FastDFS tracker和storage 是否启动成功,当看到如下所示信息时说明都启动成功了。

技术分享图片

15.我们进入到 /fastdfs/storage/data/目录下,可以看到两级共256*256个目录,每级都是从00到FF,如下只是列出了第一级的目录,点进去每个目录都还有00到FF共256个目录。

技术分享图片

16.设置storage开机自启动,添加一行/etc/init.d/fdfs_storaged start

vim /etc/rc.local

17.测试图片上传

a.进入到/etc/fdfs目录下并复制一份client.conf.sample并更名为client.conf,

cp client.conf.sample client.conf 

b.使用命令vim /etc/fdfs/client.conf进入编辑模式并修改如下两项内容,如下所示

  1. base_path=/fastdfs/tracker  
  2. tracker_server=192.168.0.204:22122 

c我们找到命令的脚本位置,并且使用命令,进行文件的上传。

.技术分享图片

d.测试文件上传 /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/3.jpg 

18:FastDFS与nginx相结合

a.先安装nginx,可参看本博客地址linux下安装nginx

b.安装fastdfs-nginxmodule_v1.16.tar.gz(fast与nginx相结合的模块安装包), 进入 /usr/local/software目录并解压,如下所示

 cd /usr/local/software/

tar -zxvf fastdfs-nginx-module_v1.16.tar.gz -C /usr/local/fast/

c.进入到/usr/local/fast目录下可以看到解压的fastdfs-nginx-module目录,然后进入到fastdfs-nginx-module/src/目录下,可以看到config文件。

cd /usr/local/fast/fastdfs-nginx-module/src/ 

 

修改该conf文件,我们把文件的第四行配置中的/usr/local/include都改为/usr/include,共两处。

技术分享图片

d. fastdfs与nginx进行结合,由于我们刚才安装过nginx了,因此在/usr/local目录下已经生成了一个nginx目录了

默认安装地址/usr/local/nginx(如没有,可通过whereis nginx查询或者find / -name nginx

为了将nginx与fastdfs相结合,我们先把这个nginx目录删除掉,如下图所示,可以看到已经没有nginx目录了。

rm -rf nginx

 进入到nginx-版本号(1.6.2)/目录下并执行配置和编译安装,如下所示。

./configure --add-module=/usr/local/fast/fastdfs-nginx-module/src/

 make && make install  

 

 复制fastdfs-nginx-module中的配置文件,到/etc/fdfs目录中

 cp /usr/local/fast/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/  

到 /etc/fdfs/ 目录下,修改我们刚copy过来的mod_fastdfs.conf 文件,需要修改的项如下,其中第一项是超时时长,第三项是允许外界通过http方式访问资源。

  1. connect_timeout=10  
  2. tracker_server=192.168.156.13:22122  
  3. url_have_group_name = true  
  4. store_path0=/fastdfs/storage 

 复制FastDFS里的2个文件,到/etc/fdfs目录中,如下所示。

[root@fastdfs fdfs]# cd /usr/local/fast/FastDFS/conf/  
[root@fastdfs conf]# ll  
总用量 84  
-rw-r--r--. 1 8980 users 23981 12月  2 2014 anti-steal.jpg  
-rw-r--r--. 1 8980 users  1461 12月  2 2014 client.conf  
-rw-r--r--. 1 8980 users   858 12月  2 2014 http.conf  
-rw-r--r--. 1 8980 users 31172 12月  2 2014 mime.types  
-rw-r--r--. 1 8980 users  7829 12月  2 2014 storage.conf  
-rw-r--r--. 1 8980 users   105 12月  2 2014 storage_ids.conf  
-rw-r--r--. 1 8980 users  7102 12月  2 2014 tracker.conf 

 

[root@fastdfs conf]# cp http.conf mime.types /etc/fdfs/ 

创建一个软连接,在/fastdfs/storage文件存储目录下创建软连接,将其链接到实际存放数据 的目录,如下所示。

 

 进入到/usr/local/nginx/conf/目录下,修改nginx.conf文件,如下图所示。

修改的内容如下图示

listen       9999;  
  
location ~/group([0-9])/M00 {   
    ngx_fastdfs_module;  

设置nginx开机自启动,这样下次重启设备之后,tracker、storage、nginx都自动启动了,直接就可以使用服务,如下所示。

vim /etc/rc.d/rc.local   

最下面添加

/usr/local/nginx/sbin/nginx  

开启nginx防火墙

firewall-cmd --zone=public --add-port=9999/tcp --permanent

firewall-cmd --reload

现在我们便可以通过http的方式访问我们刚才上传的图片了(我们刚才上传图片返回的地址是group1/M00/00/00/wKgAzFogEkyADJBgAAAonXozs7o921.jpg),如下图所示。

技术分享图片

 

 技术分享图片

 

linux搭建简易版本的FastDFS服务器

标签:mon   sbin   模式   外网   rm -rf   安装文件   zone   跟踪   reload   

原文地址:http://www.cnblogs.com/edison20161121/p/7953496.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!