您的位置:澳门402永利com > 计算机 网络 > 单点安装,安装配置分布式文件系统

单点安装,安装配置分布式文件系统

发布时间:2019-11-01 20:00编辑:计算机 网络浏览(116)

    前言

    品种中用到文件服务器,有爱人推荐用法斯特DFS,所以就精通学习了后生可畏番,以为确实颇为强盛,在那再一次多谢天猫商城资深框架结构师余庆大神开源了这么优越的轻量级布满式文件系统,本篇文章就记录一下法斯特DFS的流行版本5.0.5在CentOS7中的安装与安插。

    布满式文件系统 法斯特DFS 5.0.5 & Linux CentOS 7 安装配备(单点安装)——第生机勃勃篇 

    • ### 简介

    率先简单掌握一下基础概念,FastDFS是二个开源的轻量级布满式文件系统,由追踪服务器(tracker server)、存款和储蓄服务器(storage server)和客商端(client)多个部分构成,重要清除了海量数据存款和储蓄难题,极度相符以中等文件(建议范围:4KB < file_size <500MB)为载体的在线服务。法斯特DFS的系统结构图如下:

    图片 1

    如上图,法斯特DFS的五个主导概念分别是:

    1. Tracker(跟踪器)
    2. Storage(存储节点)

    Tracker主要做调节职业,也正是mvc中的controller的剧中人物,在访问上起负载均衡的作用。追踪器和储存节点都能够由黄金年代台或多台服务器构成,追踪器和仓储节点中的服务器均能够每十一日增添或下线而不会影响线上劳动,当中追踪器中的全部服务器都以对等的,能够依附服务器的压力情状任何时候增添或回退。Tracker担当管理全部的Storage和group,每一个storage在起步后会连接Tracker,告知自个儿所属的group等消息,并保证周期性的心跳,tracker依据storage的心跳消息,建构group==>[storage server list]的映射表,Tracker要求管住的元消息少之又少,会整整积存在内部存款和储蓄器中;其它tracker上的元音讯都是由storage陈述的音讯更换的,本人没有必要长久化任何数据,那样使得tracker极度轻便扩张,直接增添tracker机器就可以扩张为tracker cluster来服务,cluster里每一个tracker之间是一心对等的,全体的tracker都领受stroage的心跳音讯,生成元数据消息来提供读写服务。

    Storage接受了分卷[Volume](或分组[group])的团组织情势,存款和储蓄系统由三个或多少个组结合,组与组之间的文书是相互独立的,全数组的文书体积拉长正是一切存款和储蓄系统中的文件体量。三个卷[Volume](组[group])可以由意气风发台或多台积存服务器组成,三个组中的积攒服务器中的文件都以如出朝气蓬勃辙的,组中的多台存款和储蓄服务器起到了冗余备份和负载均衡的成效,数据交互备份,存款和储蓄空间以group内体量最小的storage为准,所以建议group内的七个storage尽量配置相符,以防导致存储空间的浪费。越多原理性的内容可以参见这篇blog,介绍的很详细:布满式文件系统法斯特DFS设计原理
    接下去就现实看一下法斯特DFS的整整下载安装进度~

     

    简介

    第一简单询问一下基础概念,FastDFS是一个开源的轻量级布满式文件系统,由追踪服务器(tracker server)、存款和储蓄服务器(storage server)和客商端(client)多个部分组成,首要解决了海量数据存款和储蓄难点,极其符合以中等文件(建议范围:4KB < file_size <500MB)为载体的在线服务。法斯特DFS的系统结构图如下:

    图片 2

    如上海体育场合,法斯特DFS的三个为主概念分别是:

    1. Tracker(跟踪器)
    2. Storage(存款和储蓄节点)

    Tracker首要做调整专门的学问,相当于mvc中的controller的角色,在访问上起负载均衡的功用。追踪器和仓库储存节点都得以由大器晚成台或多台服务器构成,跟踪器和存款和储蓄节点中的服务器均能够每三22日扩展或下线而不会耳濡目染线上劳动,个中追踪器中的全部服务器都以对等的,能够依赖服务器的压力意况随即增添或回降。Tracker肩负管理全体的Storage和group,每个storage在起步后会连接Tracker,告知自个儿所属的group等新闻,并保持周期性的心跳,tracker依据storage的心跳消息,构建group==>[storage server list]的映射表,Tracker须要管理的元音讯超级少,会整整存款和储蓄在内部存款和储蓄器中;其它tracker上的元新闻都以由storage汇报的音讯变化的,自身无需长久化任何数据,这样使得tracker非常轻便扩充,直接增添tracker机器就能够扩大为tracker cluster来服务,cluster里种种tracker之间是一丝一毫对等的,全体的tracker都领受stroage的心跳消息,生成元数据消息来提供读写服务。

    Storage接受了分卷[Volume](或分组[group])的团组织议程,存款和储蓄系统由二个或多少个组结合,组与组之间的公文是互相独立的,全体组的文件体积增加正是一切存款和储蓄系统中的文件体量。贰个卷[Volume](组[group])可以由生龙活虎台或多台存款和储蓄服务器组成,贰个组中的积攒服务器中的文件都以形似的,组中的多台存款和储蓄服务器起到了冗余备份和负载均衡的功力,数据交互备份,存款和储蓄空间以group内体量最小的storage为准,所以提议group内的多少个storage尽量配置相同,以免导致存款和储蓄空间的浪费。更加的多原理性的始末能够仿照效法这篇随笔,介绍的很详细:布满式文件系统法斯特DFS设计原理
    接下去就具体看一下法斯特DFS的一切下载安装进度~

     

    下载

    前段时间笔者最终一次releases的时间的14年七月22号,对应的风靡版本是5.0.5,直接在余大的GitHub上下载就可以了:

    图片 3

    如上航海用体育场地,由于法斯特DFS是纯C语言达成,只支持Linux、FreeBSD等UNIX系统,所以大家直接下载tar.gz的压缩包,同有的时候候法斯特DFS 5.0.5同从前版本对照将集体的有的函数等单独封装成了libfastcommon包,所以在设置法斯特DFS以前大家还必得安装libfastcommon,在余大的GitHub首页能够看看:
    图片 4

    下载完结后将上边这三个文件上传至CentOS服务器,然后就足以起来解压安装了:
    图片 5

    下载

    一时我最终叁遍releases的日子的14年7月22号,对应的新型版本是5.0.5,直接在余大的GitHub上下载就足以了:

     

    安装

    安装

    libfastcommon

    率先第一步是安装libfastcommon,笔者这边将libfastcommon上传到的/usr/local目录下,间接解压:

    unzip libfastcommon-master.zip
    

    解压成功后跻身目录看一下压缩包的文书:
    图片 6

    假设未有装解压工具unzip可以经过以下yum命令举行设置后再解压:

    yum -y install unzip zip
    

    解压完成后就能够实行编写翻译安装了,分别实践./make.sh./make.sh install,由于是新安装的系统有望会唤起找不到gcc命令:
    图片 7

    如上海教室,所以我们先要安装gcc编写翻译器:

    yum -y install gcc-c++
    

    看来如下新闻验证gcc已经安装成功:
    图片 8

    那会儿再度施行./make.sh一声令下进行编写翻译,没有error音信的话就申明编写翻译成功了,最终再执行./make.sh install张开安装,见到雷同如下提醒新闻就认证libfastcommon已设置成功(画风突变,黑底白字看的眼睛累T_T,所以换来白底黑字了):
    图片 9

    至此libfastcommon就已经设置成功了,但注意一下上航海用教室中铅白框标记的从头到尾的经过,libfastcommon.so 默许安装到了/usr/lib64/libfastcommon.so,可是法斯特DFS主程序设置的lib目录是/usr/local/lib,所以那边供给重新安装软链接(相近于Windows的快捷格局):

    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
    

    安装停止后就可以开首安装fastdfs了。

    libfastcommon

    率先第一步是安装libfastcommon,笔者这里将libfastcommon上传到的/usr/local目录下,直接解压:

    unzip libfastcommon-master.zip
    

    解压成功后步向目录看一下压缩包的文本:
    图片 10

    若是未有装解压工具unzip能够透过以下yum命令举行安装后再解压:

    yum -y install unzip zip
    

    解压完毕后就足以张开编写翻译安装了,分别施行./make.sh./make.sh install,由于是新装置的体系有比超级大可能率会提示找不到gcc命令:
    图片 11

    如上海体育场所,所以大家先要安装gcc编写翻译器:

    yum -y install gcc-c++
    

    总的来看如下消息认证gcc已经安装成功:
    图片 12

    这儿重新施行./make.sh指令举办编写翻译,未有error消息的话就表明编写翻译成功了,最终再实施./make.sh install开展安装,见到相近如下提醒消息就表明libfastcommon已设置成功(画风突变,黑底白字看的眼眸累T_T,所以换来白底黑字了):
    图片 13

    至此libfastcommon就已经设置成功了,但注意一下上航海用教室中金红框标明的剧情,libfastcommon.so 暗中认可安装到了/usr/lib64/libfastcommon.so,可是法斯特DFS主程序设置的lib目录是/usr/local/lib,所以这里须要重新载入参数软链接(相像于Windows的飞快方式):

    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
    

    设置完成后就能够开头安装fastdfs了。

    FastDFS

    第一步照旧是解压:

    tar -zxvf fastdfs-5.05.tar.gz 
    

    解压达成后跻身目录fastdfs-5.05,依次实施./make.sh和./make.sh install:

    ./make.sh
    ./make.sh install
    

    从没报错就表明安装成功了,在log中我们得以窥见安装路径:
    图片 14

    正确,就是安装到了/etc/fdfs中,大家看一下该目录下的公文:
    图片 15

    如上海图书馆,安装成功后就能够变动如上的3个.sample文件(示例配置文件),我们再各自拷贝出3个后边用的正式的配备文件:

    cp client.conf.sample client.conf
    cp storage.conf.sample storage.conf
    cp tracker.conf.sample tracker.conf
    

    后来再查看一下/etc/fdfs的文件目录:
    图片 16

    至此法斯特DFS已经设置完结,接下去的劳作就是逐生龙活虎配置Tracker和Storage了。

    FastDFS

    先是步依旧是解压:

    tar -zxvf fastdfs-5.05.tar.gz 
    

    解压达成后步入目录fastdfs-5.05,依次实行./make.sh和./make.sh install:

    ./make.sh
    ./make.sh install
    

    还没有报错就印证安装成功了,在log中大家能够开掘安装路线:
    图片 17

    对的,正是安装到了/etc/fdfs中,我们看一下该目录下的文件:
    图片 18

    如上图,安装成功后就能够转换如上的3个.sample文件(示例配置文件),大家再分别拷贝出3个后边用的正经八百的配置文件:

    cp client.conf.sample client.conf
    cp storage.conf.sample storage.conf
    cp tracker.conf.sample tracker.conf
    

    随后再查看一下/etc/fdfs的文件目录:
    图片 19

    至此法斯特DFS已经安装收尾,接下去的办事就是各种配置Tracker和Storage了。

    Tracker

    在布局Tracker在此之前,首先供给创设Tracker服务器的文本路线,即用于存款和储蓄Tracker的数据文件和日志文件等,作者这里选取在/opt目录下创立叁个fastdfs_tracker目录用于置放Tracker服务器的连带文书:

    mkdir /opt/fastdfs_tracker
    

    接下去就要重复编排上一步筹算好的/etc/fdfs目录下的tracker.conf配置文件,展开文件后挨门逐户做以下改正:

    1. disabled=false #启用配置文件(暗许启用)
    2. port=22122 #设置tracker的端口号,平时使用22122那些暗许端口
    3. base_path=/opt/fastdfs_tracker #安装tracker的数据文件和日志目录
    4. http.server_port=6666 #设置http端口号,默认为8080

    配置完成后就足以运行Tracker服务器了,但首先照旧要为运行脚本制造软援引,因为fdfs_trackerd等一声令下在/usr/local/bin中并从未,而是在/usr/bin路线下:

    ln -s /usr/bin/fdfs_trackerd /usr/local/bin
    ln -s /usr/bin/stop.sh /usr/local/bin
    ln -s /usr/bin/restart.sh /usr/local/bin
    

    最终经过命令运行Tracker服务器:

    service fdfs_trackerd start
    

    一声令下实施后方可看看以下提示:
    图片 20

    要是开发银行命令施行成功,那么与此同期在刚刚创设的tracker文件目录/opt/fastdfs_tracker中就能够见见运行后新转变的data和logs目录,tracker服务的端口也相应被符合规律监听,最终再通过netstat命令查看一下端口监听景况:

    netstat -unltp|grep fdfs
    

    能够看看tracker服务运作的22122端口符合规律被监听:
    图片 21

    确认tracker不奇怪运营后方可将tracker设置为开机运维,张开/etc/rc.d/rc.local并在里面插足以下配置:

    service fdfs_trackerd start
    

    Tracker至此就布署好了,接下去就足以安排法斯特DFS的另黄金时代基本——Storage。

    Tracker

    在布局Tracker早前,首先供给创制Tracker服务器的文件路线,即用于存款和储蓄Tracker的数据文件和日志文件等,作者这里接受在/opt目录下创办叁个fastdfs_tracker目录用于寄存Tracker服务器的连锁文件:

    mkdir /opt/fastdfs_tracker
    

    接下去将要重复编排上一步策画好的/etc/fdfs目录下的tracker.conf配置文件,展开文件后逐风流罗曼蒂克做以下改过:

    1. disabled=false #启用配置文件(默许启用)
    2. port=22122 #安装tracker的端口号,日常采纳22122那一个暗许端口
    3. base_path=/opt/fastdfs_tracker #设置tracker的数据文件和日志目录
    4. http.server_port=6666 #设置http端口号,默认为8080

    布署完结后就能够运行Tracker服务器了,但第一照旧要为运行脚本创制软援用,因为fdfs_trackerd等一声令下在/usr/local/bin中并不曾,而是在/usr/bin路线下:

    ln -s /usr/bin/fdfs_trackerd /usr/local/bin
    ln -s /usr/bin/stop.sh /usr/local/bin
    ln -s /usr/bin/restart.sh /usr/local/bin
    

    最后经过命令运行Tracker服务器:

    service fdfs_trackerd start
    

    命令试行后能够见见以下提醒:
    图片 22

    生龙活虎经开发银行命令实践成功,那么与此同期在刚刚成立的tracker文件目录/opt/fastdfs_tracker中就能够观望运行后新转换的data和logs目录,tracker服务的端口也理应被平常监听,最终再通过netstat命令查看一下端口监听情状:

    netstat -unltp|grep fdfs
    

    可以见见tracker服务运转的22122端口不荒谬被监听:
    图片 23

    显明tracker正常运营后能够将tracker设置为开机运营,张开/etc/rc.d/rc.local并在内部参与以下配置:

    service fdfs_trackerd start
    

    Tracker至此就安排好了,接下去就能够布置FastDFS的另一着力——Storage。

    Storage

    同理,步骤基本与安插Tracker黄金年代致,首先是创设Storage服务器的文件目录,须求在意的是同Tracker比十分小编多建了一个索引,因为Storage还亟需三个文本存款和储蓄路线,用于寄存选拔的公文:

    mkdir /opt/fastdfs_storage
    mkdir /opt/fastdfs_storage_data
    

    接下去校订/etc/fdfs目录下的storage.conf配置文件,展开文件后各种做以下校正:

    1. disabled=false #启用配置文件(暗中同意启用)
    2. group_name=group1 #组名,依据实情修正
    3. port=23000 #安装storage的端口号,暗中认可是23000,同贰个组的storage端口号必需后生可畏致
    4. base_path=/opt/fastdfs_storage #设置storage数据文件和日志目录
    5. store_path_count=1 #存款和储蓄路线个数,供给和store_path个数相配
    6. store_path0=/opt/fastdfs_storage_data #事实上文件存款和储蓄路线
    7. tracker_server=192.168.111.11:22122 #tracker 服务器的 IP地址和端口号,假若是单机搭建,IP不要写127.0.0.1,否则运行不成功(此处的ip是自己的CentOS虚构机ip)
    8. http.server_port=8888 #设置 http 端口号

    安顿完结后同样要为Storage服务器的起步脚本设置软援引:

    ln -s /usr/bin/fdfs_storaged /usr/local/bin
    

    接下去就能够运营Storage服务了:

    service fdfs_storaged start
    

    命令试行后得以看出以下提示:
    图片 24

    同理,假诺开发银行成功,/opt/fastdfs_storage中就能够看出运维后新变化的data和logs目录,端口23000也应被平常监听,还应该有少数正是文件存款和储蓄路径下会转移多级存款和储蓄目录,那么接下去看看是不是运行成功了:
    图片 25

    如上海教室,貌似没成功啊,因为运营storage后文件都没生成,为了确认大家看一下storage的端口情形:
    图片 26

    果然是没运营成功!端口这段时间依然只监听了贰个,storage的23000端口并未被监听,那么大家必须要去日志文件中找原因了,步入/opt/fastdfs_storage/logs目录下并展开storaged.log文件:
    图片 27

    如上海体育场地,能够见到确实有三个error,关键新闻是:

    ERROR - file: storage_func.c, line: 896, mkdir “/etc/fastdfs_storage_data/data” fail, errno: 2, error info: No such file or directory

    从未有过公文或目录!再回头看一下/etc/fdfs目录下的storage.conf的布署:
    图片 28

    果如其言配错了,我们内定成了/etc/fastdfs_storage_data目录,而事实上大家成立的职务是/opt/fastdfs_storage_data,大意大要,老眼昏花!修正路线后再也重启storage服务,然后再看看data目录和实在存款和储蓄文件的/opt/fastdfs_storage_data:
    图片 29

    如上海体育场合,能够看见/opt/fastdfs_storage/data目录下生成好的pid文件和dat文件,那么再看一下实际文件存款和储蓄路线下是或不是有开创好的不计其数目录呢:
    图片 30

    如上海教室,未有此外难题,data下有256个1级目录,每级目录下又有2五十几个2级子目录总共65536个文件,新写的文件会以hash的秘籍被路由到在那之中有些子目录下,然后将文件数量直接当做一个当麻芋果件存款和储蓄到该目录中。那么最后大家再看一下storage服务的端口监听意况:
    图片 31

    如上海教室,能够观望这儿已经符合规律监听tracker的22122端口和storage的23000端口,至此storage服务器就已经安排完结,鲜明了storage服务器运维成功后,还大概有意气风发项专门的学问正是看看storage服务器是或不是业已登记到 tracker服务器(也能够领悟为tracker与storage是不是构成成功),运转以下命令:

    /usr/bin/fdfs_monitor /etc/fdfs/storage.conf
    

    [root@localhost /]# /usr/bin/fdfs_monitor /etc/fdfs/storage.conf
    [2016-09-23 12:59:26] DEBUG - base_path=/opt/fastdfs_storage, connect_timeout=30, network_timeout=60, tracker_server_count=1, anti_steal_token=0, anti_steal_secret_key length=0, use_connection_pool=0, g_connection_pool_max_idle_time=3600s, use_storage_id=0, storage server id count: 0

    server_count=1, server_index=0

    tracker server is 192.168.111.11:22122

    group count: 1

    Group 1:
    group name = group1
    disk total space = 6818 MB
    disk free space = 2169 MB
    trunk free space = 0 MB
    storage server count = 1
    active server count = 1
    storage server port = 23000
    storage HTTP port = 8888
    store path count = 1
    subdir count per path = 256
    current write server index = 0
    current trunk file id = 0

    Storage 1:
    id = 192.168.111.11
    ip_addr = 192.168.111.11 ACTIVE
    http domain =
    version = 5.05
    join time = 2016-09-23 11:15:54
    up time = 2016-09-23 12:33:26
    total storage = 6818 MB
    free storage = 2169 MB
    upload priority = 10
    store_path_count = 1
    subdir_count_per_path = 256
    storage_port = 23000
    storage_http_port = 8888
    current_write_path = 0
    source storage id =
    if_trunk_server = 0
    connection.alloc_count = 256
    connection.current_count = 0
    connection.max_count = 0
    total_upload_count = 0
    success_upload_count = 0
    total_append_count = 0
    success_append_count = 0
    total_modify_count = 0
    success_modify_count = 0
    total_truncate_count = 0
    success_truncate_count = 0
    total_set_meta_count = 0
    success_set_meta_count = 0
    total_delete_count = 0
    success_delete_count = 0
    total_download_count = 0
    success_download_count = 0
    total_get_meta_count = 0
    success_get_meta_count = 0
    total_create_link_count = 0
    success_create_link_count = 0
    total_delete_link_count = 0
    success_delete_link_count = 0
    total_upload_bytes = 0
    success_upload_bytes = 0
    total_append_bytes = 0
    success_append_bytes = 0
    total_modify_bytes = 0
    success_modify_bytes = 0
    stotal_download_bytes = 0
    success_download_bytes = 0
    total_sync_in_bytes = 0
    success_sync_in_bytes = 0
    total_sync_out_bytes = 0
    success_sync_out_bytes = 0
    total_file_open_count = 0
    success_file_open_count = 0
    total_file_read_count = 0
    success_file_read_count = 0
    total_file_write_count = 0
    success_file_write_count = 0
    last_heart_beat_time = 2016-09-23 12:58:59
    last_source_update = 1970-01-01 08:00:00
    last_sync_update = 1970-01-01 08:00:00
    last_synced_timestamp = 1970-01-01 08:00:00

    如上所示,看见192.168.111.11 ACTIVE 字样就可以验证storage服务器已经打响注册到了tracker服务器,同理别忘了增多开机运转,打开/etc/rc.d/rc.local并将如下配置增到文件中:

    service fdfs_storage start
    

    现今大家就曾经完结了fastdfs的总体陈设,那时也就能够用客商端工具进行文件上传下载的测量检验了。

    Storage

    同理,步骤基本与布局Tracker风姿洒脱致,首先是创办Storage服务器的文件目录,必要当心的是同Tracker比较作者多建了一个索引,因为Storage还索要三个文书存款和储蓄路线,用于寄存选择的文书:

    mkdir /opt/fastdfs_storage
    mkdir /opt/fastdfs_storage_data
    

    接下去改进/etc/fdfs目录下的storage.conf配置文件,张开文件后挨门逐户做以下改进:

    1. disabled=false #启用配置文件(暗中认可启用)
    2. group_name=group1 #组名,依照真实境况改良
    3. port=23000 #设置storage的端口号,暗许是23000,同三个组的storage端口号必需一律
    4. base_path=/opt/fastdfs_storage #设置storage数据文件和日志目录
    5. store_path_count=1 #仓库储存路线个数,供给和store_path个数相配
    6. store_path0=/opt/fastdfs_storage_data #实在文件存款和储蓄路线
    7. tracker_server=192.168.111.11:22122 #tracker 服务器的 IP地址和端口号,借使是单机搭建,IP不要写127.0.0.1,否则运营不成事(此处的ip是自己的CentOS设想机ip)
    8. http.server_port=8888 #设置 http 端口号

    布署完结后相仿要为Storage服务器的运行脚本设置软援用:

    ln -s /usr/bin/fdfs_storaged  /usr/local/bin
    

    接下去就足以运行Storage服务了:

    service fdfs_storaged start
    

    命令实行后能够看来以下提醒:
    图片 32

    同理,尽管开发银行成功,/opt/fastdfs_storage中就足以看看运转后新变化的data和logs目录,端口23000也应被平常监听,还会有少数便是文本存款和储蓄路线下会转移多级存款和储蓄目录,那么接下去看看是还是不是运行成功了:
    图片 33

    如上海教室,貌似没得逞啊,因为运行storage后文件都没生成,为了确认大家看一下storage的端口情形:
    图片 34

    果然是没运维成功!端口如今依旧只监听了叁个,storage的23000端口并未有被监听,那么大家一定要去日志文件中找原因了,进入/opt/fastdfs_storage/logs目录下并张开storaged.log文件:
    图片 35

    如上海教室,能够见见确实有一个error,关键音讯是:

    ERROR - file: storage_func.c, line: 896, mkdir “/etc/fastdfs_storage_data/data” fail, errno: 2, error info: No such file or directory

    未曾公文或目录!再回头看一下/etc/fdfs目录下的storage.conf的配备:
    图片 36

    果真配错了,大家内定成了/etc/fastdfs_storage_data目录,而实质上大家成立的职位是/opt/fastdfs_storage_data,马虎大体,老眼昏花!修正路线后再行重启storage服务,然后再看看data目录和实际存储文件的/opt/fastdfs_storage_data:
    图片 37

    如上图,可以见到/opt/fastdfs_storage/data目录下生成好的pid文件和dat文件,那么再看一下实际文件存款和储蓄路线下是不是有成立好的数不完目录呢:
    图片 38

    如上图,未有其余难点,data下有256个1级目录,每级目录下又有2六18个2级子目录总共65536个文件,新写的文书会以hash的方法被路由到此中有个别子目录下,然后将文件数量直接作为二个本土文件存款和储蓄到该目录中。那么最后我们再看一下storage服务的端口监听景况:
    图片 39

    如上海体育场地,能够看出那儿后生可畏度符合规律监听tracker的22122端口和storage的23000端口,至此storage服务器就早就安插实现,明显了storage服务器运维成功后,还会有大器晚成项专门的学业正是看看storage服务器是还是不是早已注册到 tracker服务器(也足以领会为tracker与storage是还是不是构成成功),运维以下命令:

    /usr/bin/fdfs_monitor /etc/fdfs/storage.conf
    

    [root@localhost /]# /usr/bin/fdfs_monitor /etc/fdfs/storage.conf
    [2016-09-23 12:59:26] DEBUG - base_path=/opt/fastdfs_storage, connect_timeout=30, network_timeout=60, tracker_server_count=1, anti_steal_token=0, anti_steal_secret_key length=0, use_connection_pool=0, g_connection_pool_max_idle_time=3600s, use_storage_id=0, storage server id count: 0

    server_count=1, server_index=0

    tracker server is 192.168.111.11:22122

    group count: 1

    Group 1:
    group name = group1
    disk total space = 6818 MB
    disk free space = 2169 MB
    trunk free space = 0 MB
    storage server count = 1
    active server count = 1
    storage server port = 23000
    storage HTTP port = 8888
    store path count = 1
    subdir count per path = 256
    current write server index = 0
    current trunk file id = 0

    Storage 1:
    id = 192.168.111.11
    ip_addr = 192.168.111.11 ACTIVE
    http domain =
    version = 5.05
    join time = 2016-09-23 11:15:54
    up time = 2016-09-23 12:33:26
    total storage = 6818 MB
    free storage = 2169 MB
    upload priority = 10
    store_path_count = 1
    subdir_count_per_path = 256
    storage_port = 23000
    storage_http_port = 8888
    current_write_path = 0
    source storage id =
    if_trunk_server = 0
    connection.alloc_count = 256
    connection.current_count = 0
    connection.max_count = 0
    total_upload_count = 0
    success_upload_count = 0
    total_append_count = 0
    success_append_count = 0
    total_modify_count = 0
    success_modify_count = 0
    total_truncate_count = 0
    success_truncate_count = 0
    total_set_meta_count = 0
    success_set_meta_count = 0
    total_delete_count = 0
    success_delete_count = 0
    total_download_count = 0
    success_download_count = 0
    total_get_meta_count = 0
    success_get_meta_count = 0
    total_create_link_count = 0
    success_create_link_count = 0
    total_delete_link_count = 0
    success_delete_link_count = 0
    total_upload_bytes = 0
    success_upload_bytes = 0
    total_append_bytes = 0
    success_append_bytes = 0
    total_modify_bytes = 0
    success_modify_bytes = 0
    stotal_download_bytes = 0
    success_download_bytes = 0
    total_sync_in_bytes = 0
    success_sync_in_bytes = 0
    total_sync_out_bytes = 0
    success_sync_out_bytes = 0
    total_file_open_count = 0
    success_file_open_count = 0
    total_file_read_count = 0
    success_file_read_count = 0
    total_file_write_count = 0
    success_file_write_count = 0
    last_heart_beat_time = 2016-09-23 12:58:59
    last_source_update = 1970-01-01 08:00:00
    last_sync_update = 1970-01-01 08:00:00
    last_synced_timestamp = 1970-01-01 08:00:00

    如上所示,见到192.168.111.11 ACTIVE 字样就能够验证storage服务器已经成功注册到了tracker服务器,同理别忘了增加开机运营,展开/etc/rc.d/rc.local并将如下配置增至文件中:

    service fdfs_storage start
    

    时至不久前大家就早就到位了fastdfs的全部配置,当时也就能够用客商端工具实行文件上传下载的测量检验了。

    开班测量检验

    测验时须求安装客商端的配备文件,编辑/etc/fdfs目录下的client.conf 文件,展开文件后挨门挨户做以下改善:

    1. base_path=/opt/fastdfs_tracker #tracker服务器文件路径
    2. tracker_server=192.168.111.11:22122 #tracker服务器IP地址和端口号
    3. http.tracker_server_port=6666 # tracker 服务器的 http 端口号,必得和tracker的装置相应起来

    配备实现后就能够效仿文件上传了,先给/opt目录下放一张图纸(小雪老爹的LOGO):
    图片 40

    然后经过推行客商端上传命令尝试上传:

    /usr/bin/fdfs_upload_file  /etc/fdfs/client.conf  /opt/BLIZZARD.jpg
    

    运作后能够开掘给大家回去了三个路线:
    图片 41

    那就表示大家的文件已经上传成功了,当文件存款和储蓄到有个别子目录后,即认为该文件存款和储蓄成功,接下去会为该公文生成一个文件名,文件名由group、存款和储蓄目录、两级子目录、fileid、文件后缀名(由顾客端钦命,首要用来区分文件类型)拼接而成,如下图:
    图片 42

    还要在前边安插的storage服务器的骨子里文件存款和储蓄路线中也足以依赖重返的路线找到实际文件:
    图片 43

    接下去尝试用浏览器发送HTTP央浼访谈一下文件:
    图片 44

    当时发觉并无法访谈,因为FastDFS方今已不辅助http左券,大家在法斯特DFS 4.0.5的本子更新日志中得以看出那般一条音信:
    图片 45

    如上海教室,4.0.5本子起始移除了自带的HTTP援救(因为在此之前自带的HTTP服务较为轻易,无法提供负载均衡等高品质服务),所以余大提供了nginx上采纳法斯特DFS的模块fastdfs-nginx-module,下载地址如下:,那样做最大的好处正是提供了HTTP服务并且化解了group中storage服务器的同台延迟难题,接下去就现实记录一下fastdfs-nginx-module的装置配置进程。

    始于测量检验

    测量试验时索要安装客商端的配备文件,编辑/etc/fdfs目录下的client.conf 文件,张开文件后逐生机勃勃做以下改过:

    1. base_path=/opt/fastdfs_tracker #tracker服务器文件路径
    2. tracker_server=192.168.111.11:22122 #tracker服务器IP地址和端口号
    3. http.tracker_server_port=6666 # tracker 服务器的 http 端口号,必须和tracker的装置相应起来

    配备达成后就足以依样葫芦文件上传了,先给/opt目录下放一张图片(大雪阿爸的LOGO):
    图片 46

    下一场经超过实际施客商端上传命令尝试上传:

    /usr/bin/fdfs_upload_file  /etc/fdfs/client.conf  /opt/BLIZZARD.jpg
    

    运维后可以窥见给大家回来了贰个路线:
    图片 47

    那就意味着我们的公文已经上传成功了,当文件存储到某些子目录后,即感觉该公文存款和储蓄成功,接下去会为该公文生成二个文书名,文件名由group、存款和储蓄目录、两级子目录、fileid、文件后缀名(由客商端内定,首要用于区分文件类型)拼接而成,如下图:
    图片 48

    并且在头里安插的storage服务器的其实文件存款和储蓄路线中也能够依附再次回到的路子找到实际文件:
    图片 49

    接下去尝试用浏览器发送HTTP须要访谈一下文本:
    图片 50

    当时意识并不可能访谈,因为法斯特DFS目前已不协理http公约,大家在法斯特DFS 4.0.5的版本更新日志中得以见见这么一条音讯:
    图片 51

    如上海教室,4.0.5版本开首移除了自带的HTTP协理(因为前面自带的HTTP服务较为简单,不可能提供负载均衡等高质量服务),所以余大提供了nginx上使用法斯特DFS的模块fastdfs-nginx-module,下载地址如下:,那样做最大的低价就是提供了HTTP服务并且消除了group中storage服务器的同步延迟难点,接下去就实际记录一下fastdfs-nginx-module的装置配备进度。

    fastdfs-nginx-module

    在余大的GitHub上下载好fastdfs-nginx-module上盛传大家的CentOS中就可以开端安装了,在装置nginx从前要求先安装一些模块信任的lib库,笔者在这前写的文章有做详细介绍(Linux CentOS 7 & Tengine(Nginx)安装与布局),直接贴出安装代码:

    yum -y install pcre pcre-devel  
    yum -y install zlib zlib-devel  
    yum -y install openssl openssl-devel
    

    依次装好那个正视之后就足以起来设置nginx了。

    fastdfs-nginx-module

    在余大的GitHub上下载好fastdfs-nginx-module上传播大家的CentOS中就足以起来设置了,在装置nginx此前必要先安装一些模块依赖的lib库,小编在早先写的blog有做详细介绍(Linux CentOS 7 & Tengine(Nginx)安装与安排),直接贴出安装代码:

    yum -y install pcre pcre-devel  
    yum -y install zlib zlib-devel  
    yum -y install openssl openssl-devel
    

     

    种种装好那么些信任之后就足以起来安装nginx了。

    storage nginx

    率先是为storage服务器安装nginx,首先将nginx和fastdfs-nginx-module的安装包上传至CentOS:
    图片 52

    首先分别开展解压:

    tar -zxvf nginx-1.8.1.tar.gz
    unzip fastdfs-nginx-module-master.zip
    

    解压成功后就足以编写翻译安装nginx了,步向nginx目录并输入以下命令进行配置:

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

    安顿成功后会看见如下信息:
    图片 53

    紧接着就足以扩充编写翻译安装了,依次推行以下命令:

    make
    make install
    

    安装达成后,大家在我们钦定的目录/usr/local/nginx中就足以看看nginx的装置目录了:
    图片 54

    接下去要改过一下nginx的布局文件,步向conf目录并开辟nginx.conf文件参与以下配置:

    listen       9999;
    
    location ~/group1/M00 {
          root /opt/fastdfs_storage_data/data;
          ngx_fastdfs_module;
    }
    

    然后步入法斯特DFS的设置目录/usr/local/fastdfs-5.05目录下的conf目录,将http.confmime.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/
    

    接下去还索要把fastdfs-nginx-module安装目录中src目录下的mod_fastdfs.conf也拷贝到/etc/fdfs目录下:

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

    看一下/etc/fdfs目录下当前颇有的配置文件:
    图片 55

    没什么难题,接下去就要求编写制定刚拷贝的这么些mod_fastdfs.conf文件了,打开mod_fastdfs.conf并按梯次依次编写翻译以下内容:

    1. base_path=/opt/fastdfs_storage #保留日志目录
    2. tracker_server=192.168.111.11:22122 #tracker服务器的IP地址甚至端口号
    3. storage_server_port=23000 #storage服务器的端口号
    4. url_have_group_name = true #文本 url 中是还是不是有 group 名
    5. store_path0=/opt/fastdfs_storage_data # 存储路线
    6. group_count = 3 #设置组的个数,事实上这一次只利用了group1

    设置了group_count = 3,接下去就供给在文书尾部增加那3个group setting:

    [group1]
    group_name=group1
    storage_server_port=23000
    store_path_count=1
    store_path0=/opt/fastdfs_storage_data
    
    [group2]
    group_name=group2
    storage_server_port=23000
    store_path_count=1
    store_path0=/opt/fastdfs_storage_data
    
    [group3]
    group_name=group3
    storage_server_port=23000
    store_path_count=1
    store_path0=/opt/fastdfs_storage_data
    

    接下去还索要创建 M00 至存款和储蓄目录的号子连接:

    ln  -s  /opt/fastdfs_storage_data/data  /opt/fastdfs_storage_data/data/M00
    

    最终运营nginx:

    /usr/local/nginx/sbin/nginx
    

    展现如下新闻表达nginx已开发银行成功:
    图片 56

    通过浏览器也得以看到nginx的主页:
    图片 57

    storage服务器的nginx就曾经安装完成,接下去看一下tracker服务器的nginx安装。

    storage nginx

    首先是为storage服务器安装nginx,首先将nginx和fastdfs-nginx-module的安装包上传至CentOS:
    图片 58

    先是分别举行解压:

    tar -zxvf nginx-1.8.1.tar.gz
    unzip fastdfs-nginx-module-master.zip
    

     

    解压成功后就能够编译安装nginx了,步入nginx目录并输入以下命令进行配备:

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

    安插成功后会见到如下音信:
    图片 59

    继之就足以开展编译安装了,依次试行以下命令:

    make
    make install
    

    安装到位后,大家在我们钦点的目录/usr/local/nginx中就能够观看nginx的装置目录了:
    图片 60

    接下去要校勘一下nginx的安插文件,步向conf目录并开垦nginx.conf文件插手以下配置:

    listen       9999;
    
    location ~/group1/M00 {
          root /opt/fastdfs_storage_data/data;
          ngx_fastdfs_module;
    }
    

    然后步入法斯特DFS的安装目录/usr/local/fastdfs-5.05目录下的conf目录,将http.confmime.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/
    

    接下去还索要把fastdfs-nginx-module安装目录中src目录下的mod_fastdfs.conf也拷贝到/etc/fdfs目录下:

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

    看一下/etc/fdfs目录下当前具有的配备文件:
    图片 61

    不妨难题,接下去就必要编写制定刚拷贝的这么些mod_fastdfs.conf文件了,打开mod_fastdfs.conf并按顺序依次编译以下内容:

    1. base_path=/opt/fastdfs_storage #保存日志目录
    2. tracker_server=192.168.111.11:22122 #tracker服务器的IP地址以致端口号
    3. storage_server_port=23000 #storage服务器的端口号
    4. url_have_group_name = true #文件 url 中是不是有 group 名
    5. store_path0=/opt/fastdfs_storage_data # 存款和储蓄路线
    6. group_count = 3 #设置组的个数,事实上此番只行使了group1

    设置了group_count = 3,接下去就必要在文件尾巴部分扩展这3个group setting:

    [group1]
    group_name=group1
    storage_server_port=23000
    store_path_count=1
    store_path0=/opt/fastdfs_storage_data
    
    [group2]
    group_name=group2
    storage_server_port=23000
    store_path_count=1
    store_path0=/opt/fastdfs_storage_data
    
    [group3]
    group_name=group3
    storage_server_port=23000
    store_path_count=1
    store_path0=/opt/fastdfs_storage_data
    

    接下去还供给创设 M00 至存款和储蓄目录的号子连接:

    ln  -s  /opt/fastdfs_storage_data/data /opt/fastdfs_storage_data/data/M00
    

    聊到底运转nginx:

    /usr/local/nginx/sbin/nginx
    

    彰显如下音信认证nginx已开发银行成功:
    图片 62

    通过浏览器也足以看来nginx的主页:
    图片 63

    storage服务器的nginx就已经安装实现,接下去看一下tracker服务器的nginx安装。

    tracker nginx

    同理,再装二个nginx,目录命名字为nginx2,安装路线如故放在/usr/local下,由于和事先同风流倜傥,此处就不再做详细降解:

    mkdir nginx2
    cd nginx-1.8.1/
    ./configure --prefix=/usr/local/nginx2 --add-module=/usr/local/fastdfs-nginx-module-master/src
    make
    make install
    

    接下去仍是改善nginx2的安顿文件,步向conf目录并展开nginx.conf文件参与以下配置,storage的nginx没有须求改过listen端口,即私下认可的80端口,并将upstream指向tracker的nginx地址:

    upstream fdfs_group1 {
         server 127.0.0.1:9999;
    }
    
    location /group1/M00 {
         proxy_pass http://fdfs_group1;
    }
    

    接下去运维nginx2:

    /usr/local/nginx2/sbin/nginx
    

    此刻拜谒nginx2的主页,由于未有改换端口,直接访问ip地址就能够:
    图片 64

    终极一步正是内需改革/etc/fdfs目录下的client.conf文件,张开该公文并加入以下配置:

    base_path=/data/fastdfs_storage  #日志存放路径
    tracker_server=192.168.116.145:22122  #tracker 服务器 IP 地址和端口号
    http.tracker_server_port=6666  # tracker 服务器的 http 端口号,必须和tracker的设置对应起来
    

    时至明天关于fastdfs就早就全体配置达成了,再一回开展测验看看是否能平常上传文件并透过http访谈文件。

    tracker nginx

    同理,再装二个nginx,目录命名称叫nginx2,安装路线依然放在/usr/local下,由于和事先同风流倜傥,此处就不再做详细表达:

    mkdir nginx2
    cd nginx-1.8.1/
    ./configure --prefix=/usr/local/nginx2 --add-module=/usr/local/fastdfs-nginx-module-master/src
    make
    make install
    
    • 1
    • 2
    • 3
    • 4
    • 5

    接下去照旧是改过nginx2的配备文件,步入conf目录并开辟nginx.conf文件参与以下配置,storage的nginx没有必要改正listen端口,即暗中同意的80端口,并将upstream指向tracker的nginx地址:

    upstream fdfs_group1 {
         server 127.0.0.1:9999;
    }
    
    location /group1/M00 {
         proxy_pass http://fdfs_group1;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    接下去运维nginx2:

    /usr/local/nginx2/sbin/nginx
    
    • 1

    那个时候访问nginx2的主页,由于未有改造端口,直接访谈ip地址就能够:
    图片 65

    最后一步便是亟需校订/etc/fdfs目录下的client.conf文件,张开该文件并参与以下配置:

    base_path=/data/fastdfs_storage  #日志存放路径
    tracker_server=192.168.116.145:22122  #tracker 服务器 IP 地址和端口号
    http.tracker_server_port=6666  # tracker 服务器的 http 端口号,必须和tracker的设置对应起来
    
    • 1
    • 2
    • 3

    于今关于fastdfs就曾经整整配备完成了,再壹遍开展测量试验看看是或不是能健康上传文件并经过http访问文件。

    HTTP测试

    再给/opt目录下上传一张阵雪阿爸的LOGO图:
    图片 66

    通过客商端命令测量检验上传:
    图片 67

    如上海教室,依然上传成功,接下去的首要便是通过HTTP测量检验文件访谈,展开浏览器输入ip地址+文件名寻访是还是不是能健康访谈该图形:
    图片 68

    一切平常~ 至此关于法斯特DFS在CentOS 7下的布置测验就已经全体到位了。

    HTTP测试

    再给/opt目录下上传一张中雪阿爸的LOGO图:
    图片 69

    经过客商端命令测量检验上传:
    图片 70

    如上海教室,依然上传成功,接下去的入眼就是通过HTTP测量试验文件访谈,展开浏览器输入ip地址+文件名寻访是还是不是能健康访谈该图片:
    图片 71

    一切平常~ 至此关于法斯特DFS在CentOS 7下的安排测量试验就已经全体达成了。

    总结

    本篇小说记录了开源布满式文件系统法斯特DFS在Linux CentOS 7中设置配备以致测量检验的全经过,下意气风发篇小说将会三回九转介绍通过Java顾客端以致SpringMVC中结成FastDFS达成文件上传下载,The End。

     

    CentOS 6.2下fastDFS的完全安装和安顿步骤 http://www.linuxidc.com/Linux/2012-12/75989.htm

    FastDFS在Ubuntu下的设置,PHP顾客端 http://www.linuxidc.com/Linux/2012-09/71459.htm

    法斯特DFS布满式文件服务器安装,及配置,测验 http://www.linuxidc.com/Linux/2012-09/71458.htm

    法斯特DFS 整合Nginx难点整合治理 http://www.linuxidc.com/Linux/2012-09/71232.htm

    CentOS下搭建FastDFS http://www.linuxidc.com/Linux/2012-09/70995.htm

    Ubuntu安装法斯特DFS全程记录 http://www.linuxidc.com/Linux/2012-03/56377.htm

    法斯特DFS 的详细介绍:请点这里
    法斯特DFS 的下载地址:请点这里

    本文恒久更新链接地址:http://www.linuxidc.com/Linux/2016-09/135537.htm

    图片 72

    本文由澳门402永利com发布于计算机 网络,转载请注明出处:单点安装,安装配置分布式文件系统

    关键词:

上一篇:JSON字符串和java对象的互转

下一篇:没有了