美文网首页
centos 7.2安装分布式存储FastDFS

centos 7.2安装分布式存储FastDFS

作者: howdyli | 来源:发表于2017-12-08 18:24 被阅读0次

    centos 7.2安装分布式存储FastDFS

    centos 7.2安装分布式存储FastDFS

    1、编译和安装所需的依赖包:

    # yum install make cmake gcc gcc-c++ perl unzip

    2、安装libfastcommon(https://github.com/happyfish100/libfastcommon)

    (1)上传或下载libfastcommon-master.zip到/usr/local/src目录,解压

    # cd /usr/local/src/

    # unzip libfastcommon-master.zip

    # cd libfastcommon-master

    (2)编译、安装

    # ./make.sh

    # ./make.sh install

    libfastcommon默认安装到了

    /usr/lib64/libfastcommon.so

    /usr/lib64/libfdfsclient.so

    (3)因为FastDFS主程序设置的lib目录是/usr/local/lib,所以需要创建软链接.

    # 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

    3、安装FastDFS(https://github.com/happyfish100/fastdfs/releases)

    (1)上传或下载FastDFS源码包(fastdfs-5.11.tar.gz)到/usr/local/src目录,解压

    # cd /usr/local/src/

    # tar -zxvf fastdfs-5.11.tar.gz

    # cd FastDFS

    (2)编译、安装(编译前要确保已经成功安装了libfastcommon)

    # ./make.sh

    # ./make.sh install

    采用默认安装的方式安装,安装后的相应文件与目录:

    A、服务脚本在:

    /etc/init.d/fdfs_storaged

    /etc/init.d/fdfs_tracker

    B、配置文件在(样例配置文件):

    /etc/fdfs/client.conf.sample

    /etc/fdfs/storage.conf.sample

    /etc/fdfs/tracker.conf.sample

    C、命令工具在/usr/bin/目录下的:

    fdfs_appender_test

    fdfs_appender_test1

    fdfs_append_file

    fdfs_crc32

    fdfs_delete_file

    fdfs_download_file

    fdfs_file_info

    fdfs_monitor

    fdfs_storaged

    fdfs_test

    fdfs_test1

    fdfs_trackerd

    fdfs_upload_appender

    fdfs_upload_file

    stop.sh

    restart.sh

    因为FastDFS服务脚本设置的bin目录是/usr/local/bin,但实际命令安装在/usr/bin,可以进入

    /user/bin目录使用以下命令查看fdfs的相关命令:

    # cd /usr/bin/

    # ls | grep fdfs

    因此需要修改FastDFS服务脚本中相应的命令路径,也就是把/etc/init.d/fdfs_storaged

    和/etc/init.d/fdfs_tracker两个脚本中的/usr/local/bin修改成/usr/bin:

    # vi /etc/init.d/fdfs_trackerd

    使用查找替换命令进统一修改:%s+/usr/local/bin+/usr/bin

    # vi /etc/init.d/fdfs_storaged

    使用查找替换命令进统一修改:%s+/usr/local/bin+/usr/bin

    注意:以上操作无论是配置tracker还是配置storage都是必须的,而tracker和storage的区别主要是在安装完fastdfs之后的配置过程中。

    4、配置FastDFS跟踪器Tracker(192.168.1.131、192.168.1.132)

    1、复制FastDFS跟踪器样例配置文件,并重命名:

    # cd /etc/fdfs/

    # cp tracker.conf.sample tracker.conf

    2、编辑跟踪器配置文件:

    # vi /etc/fdfs/tracker.conf

    修改的内容如下:

    disabled=false#启用配置文件

    port=22122#tracker的端口号,一般采用22122这个默认端口

    base_path=/fastdfs/tracker#tracker的数据文件和日志目录

    (其它参数保留默认配置,具体配置解释请参考官方文档说明:http://bbs.chinaunix.net/thread-1941456-1-1.html)

    3、创建基础数据目录(参考基础目录base_path配置):

    # mkdir -p /fastdfs/tracker

    4、防火墙中打开跟踪器端口(默认为22122):

    # vi /etc/sysconfig/iptables

    添加如下端口行:

    ## FastDFS Tracker Port

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 22122 -j ACCEPT

    重启防火墙:

    # service iptables restart

    注意:

    使用service

    iptables status查看防火墙的状态时,无任何反应,且使用service iptables

    start也启动不聊。后来发现在/etc/sysconfig目录下没有iptables文件(防火墙的策略一般都写在此文件中)。

    原因:在新安装的Linux系统中,防火墙默认是被禁掉的,一般也没有配置过任何防火墙的策略,所有不存在/etc/sysconfig/iptables文件。

    解决:

    在控制台使用iptables命令随便写一条防火墙规则,如:iptables -P OUTPUT ACCEPT

    使用service iptables save进行保存,默认就保存到了/etc/sysconfig目录下的iptables文件中

    5、启动Tracker:

    # /etc/init.d/fdfs_trackerd start

    (初次成功启动,会在/fastdfs/tracker目录下创建data、logs两个目录)可以通过以下两个方法查看tracker是否启动成功:

    (1)查看22122端口监听情况:netstat -unltp|grep fdfs

    (2)通过以下命令查看tracker的启动日志,看是否有错误

    tail -100f  /fastdfs/tracker/logs/trackerd.log

    6、关闭Tracker:

    # /etc/init.d/fdfs_trackerd stop

    7、设置FastDFS跟踪器开机启动:

    # vi /etc/rc.d/rc.local

    添加以下内容:

    ## FastDFS Tracker

    /etc/init.d/fdfs_trackerd start

    5、配置FastDFS存储(192.168.1.135、192.168.1.136、192.168.1.137、192.168.1.138 )

    1、复制FastDFS存储器样例配置文件,并重命名:

    # cd /etc/fdfs/

    # cp storage.conf.sample storage.conf

    2、编辑存储器样例配置文件(以group1中的storage节点的storage.conf为例):

    # vi /etc/fdfs/storage.conf

    修改的内容如下:

    disabled=false#启用配置文件

    group_name=group1#组名(第一组为group1,第二组为group2)

    port=23000#storage的端口号,同一个组的storage端口号必须相同

    base_path=/fastdfs/storage#设置storage的日志目录

    store_path0=/fastdfs/storage#存储路径

    store_path_count=1#存储路径个数,需要和store_path个数匹配

    tracker_server=192.168.1.131:22122#tracker服务器的IP地址和端口

    tracker_server=192.168.1.132:22122#多个tracker直接添加多条配置

    http.server_port=8888#设置http端口号

    (其它参数保留默认配置,具体配置解释请参考官方文档说明:

    http://bbs.chinaunix.net/thread-1941456-1-1.html)

    3、创建基础数据目录(参考基础目录base_path配置):

    # mkdir -p /fastdfs/storage

    4、防火墙中打开存储器端口(默认为23000):

    # vi /etc/sysconfig/iptables

    添加如下端口行:

    ## FastDFS Storage Port

    -A INPUT -m state --stateNEW -m tcp -p tcp --dport 23000-j ACCEPT

    重启防火墙:

    # service iptables restart

    5、启动Storage:

    # /etc/init.d/fdfs_storagedstart

    (初次成功启动,会在/fastdfs/storage目录下创建数据目录data和日志目录logs)

    各节点启动动,使用tail -f /fastdfs/storage/logs/storaged.log命令监听存储节点日志,可以看到存储节点链接到跟踪器,并提示哪一个为leader跟踪器。同时也会看到同一组中的其他节点加入进来的日志信息。

    查看23000端口监听情况:netstat -unltp|grep fdfs

    所有Storage节点都启动之后,可以在任一Storage节点上使用如下命令查看集群信息:

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

    可以看到存储节点状态为ACTIVE则可

    6、关闭Storage:

    # /etc/init.d/fdfs_storagedstop

    7、设置FastDFS存储器开机启动:

    # vi /etc/rc.d/rc.local

    添加:

    ## FastDFS Storage

    /etc/init.d/fdfs_storaged start

    文件上传测试(192.168.1.131)

    1、修改Tracker服务器中的客户端配置文件:

    # cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf

    #vi /etc/fdfs/client.conf

    base_path=/fastdfs/tracker

    tracker_server=192.168.1.131:22122

    tracker_server=192.168.1.132:22122

    2、执行如下文件上传命令:

    # /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/src/FastDFS_v5.05.tar.gz

    返回ID号:

    group1/M00/00/00/wKgBh1Xtr9-AeTfWAAVFOL7FJU4.tar.gz

    group2/M00/00/00/wKgBiVXtsDmAe3kjAAVFOL7FJU4.tar.gz

    (能返回以上文件ID,说明文件上传成功)

    相关文章

      网友评论

          本文标题:centos 7.2安装分布式存储FastDFS

          本文链接:https://www.haomeiwen.com/subject/wscyixtx.html