芒果 发表于 2017-9-19 11:17:05

FastDFS安装、配置、部署(一)

摘要: FastDFS是一个开源的,高性能的的分布式文件系统,他主要的功能包括:文件存储,同步和访问,设计基于高可用和负载均衡,FastDFS非常适用于基于文件服务的站点,例如图片分享和视频分享网站
声明:对于分布式的一些技术点在网上都可以查到,这边对于一些基本的操作做了些相关的总结,并作为分布式框架技术的支持文档,希望可以帮助到大家FastDFS是一个开源的,高性能的的分布式文件系统,他主要的功能包括:文件存储,同步和访问,设计基于高可用和负载均衡,FastDFS非常适用于基于文件服务的站点,例如图片分享和视频分享网站FastDFS有两个角色:跟踪服务(tracker)和存储服务(storage),跟踪服务控制,调度文件以负载均衡的方式访问;存储服务包括:文件存储,文件同步,提供文件访问接口,同时以key value的方式管理文件的元数据跟踪和存储服务可以由1台或者多台服务器组成,同时可以动态的添加,删除跟踪和存储服务而不会对在线的服务产生影响,在集群中,tracker服务是对等的存储系统由一个或多个卷组成,卷与卷之间的文件是相互独立的,所有卷的文件容量累加就是整个存储系统中的文件容量。一个卷可以由一台或多台存储服务器组成,一个卷下的存储服务器中的文件都是相同的,卷中的多台存储服务器起到了冗余备份和负载均衡的作用。在卷中增加服务器时,同步已有的文件由系统自动完成,同步完成后,系统自动将新增服务器切换到线上提供服务。当存储空间不足或即将耗尽时,可以动态添加卷。只需要增加一台或多台服务器,并将它们配置为一个新的卷,这样就扩大了存储系统的容量。一、开始安装:1. 在http://code.google.com/p/fastdfs/downloads/list下载所需文件,此外还需先安装好libevent。2. tar xzf FastDFS_v2.11.tar.gz3. cd FastDFS如果支持HTTP, vi make.sh,使用/WITH_HTTPD查找到这一行,输入i进入编辑模式,删除掉前面的注释#,:wq保存退出,如果需要安装成服务,则把下面一行也解开。./make.sh./make.sh install4. 准备几个空闲的端口,可以使用netstat -an | grep 端口号是否被占用。5. 根据实际情况修改/etc/fdfs下的配置文件,每个上面都有注释说明,如果需要HTTP,别忘了解开最下面的#include http.conf,要带一个#6. 启动tracker: /usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf7. 启动storage: /usr/local/bin/fdfs_storaged /etc/fdfs/storage.conf,如果出现错误,可以到步骤5修改配置文件时设置的目录的log目录下查看具体错误原因。8. 到此安装配置完毕二、操作使用:在FastDFS安装目录bin下有以下可执行文件。
http://upload-images.jianshu.io/upload_images/5712789-61e8895713476f6b?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240


上传文件:/usr/local/bin/fdfs_upload_file下载文件:/usr/local/bin/fdfs_download_file 删除文件:/usr/local/bin/fdfs_delete_filemonitor: /usr/local/bin/fdfs_monitor /etc/fdfs/client.conf关闭:killall fdfs_trackerdkillall fdfs_storaged或/usr/local/bin/stop.sh /usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf/usr/local/bin/stop.sh /usr/local/bin/fdfs_storaged /etc/fdfs/storage.conf重启:/usr/local/bin/restart.sh /usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf/usr/local/bin/restart.sh /usr/local/bin/fdfs_storaged /etc/fdfs/storage.conf三、测试上传:./fdfs_test ../conf/client.conf upload QQ.png,可以看到文件上传成功。http://upload-images.jianshu.io/upload_images/5712789-4db7f2ef89acf7ab?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240


在app/fdfs407/data/data/00/3C目录下可以找到刚刚上传的图片:http://upload-images.jianshu.io/upload_images/5712789-530987dec8e647fe?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240


四、FastDFS上传/下载过程:首 先客户端 client 发起对 FastDFS 的文件传输动作,是通过连接到某一台 Tracker Server的指定端口来实现的,Tracker Server 根据目前已掌握的信息,来决定选择哪一台 Storage Server,然后将这个Storage Server 的地址等信息返回给 client,然后 client 再通过这些信息连接到这台 StorageServer,将要上传的文件传送到给 Storage Server上。http://upload-images.jianshu.io/upload_images/5712789-6fc2949e80797ad9?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240


上传过程:http://upload-images.jianshu.io/upload_images/5712789-23f6637cc846d0d5?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240


下载过程:http://upload-images.jianshu.io/upload_images/5712789-c5db1bb26066cc9d?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240


在我的项目中,一般启动2个tracker和2个storage就可以了,如下所示:./fdfs_trackerd ../conf/tracker-1.conf./fdfs_trackerd ../conf/tracker-2.conf./fdfs_storaged ../conf/storage-g1-1.conf./fdfs_storaged ../conf/storage-g2-1.conf声明:所有博客服务于分布式框架,作为框架的技术支持及说明,框架面向企业,是大型互联网分布式企业架构,后期会介绍linux上部署高可用集群项目。愿意了解框架技术或者源码的朋友直接加求求:2042849237更多详细源码参考来源:http://minglisoft.cn/technology
页: [1]
查看完整版本: FastDFS安装、配置、部署(一)