zoukankan      html  css  js  c++  java
  • fastdfs5.11+centos7.2 按照部署(二)【转载】

    https://files.cnblogs.com/files/xiaojf/nginx-1.12.0.tar.gz

    https://files.cnblogs.com/files/xiaojf/libfastcommon-master.zip

    https://files.cnblogs.com/files/xiaojf/fastdfs-nginx-module-master.zip

    https://files.cnblogs.com/files/xiaojf/fastdfs-client-java-master.zip

    https://files.cnblogs.com/files/xiaojf/fastdfs-5.11.zip

    1.1 安装libfastcommon

    由于我的centOS7是最小化安装,我里面没有安装zip解压。 
    先安装 :

    yum -y install unzip zip

    安装成功后解压libfastcommon-master.zip

    unzip libfastcommon-master.zip

    进入我们刚刚解压的目录:

    [root@localhost ftp]# cd libfastcommon-master
    [root@localhost libfastcommon-master]# ll
    total 32
    drwxr-xr-x 2 root root  117 Apr  5 18:07 doc
    -rw-r--r-- 1 root root 8005 Apr  5 18:07 HISTORY
    -rw-r--r-- 1 root root  566 Apr  5 18:07 INSTALL
    -rw-r--r-- 1 root root 1606 Apr  5 18:07 libfastcommon.spec
    -rwxr-xr-x 1 root root 3099 Apr  5 18:07 make.sh
    drwxr-xr-x 2 root root  191 Apr  5 18:07 php-fastcommon
    -rw-r--r-- 1 root root 2763 Apr  5 18:07 README
    drwxr-xr-x 3 root root 4096 Jun  8 21:51 src

    当我们./make.sh的时候会提示,gcc命令没有找到。

    用yum安装gcc: 
    yum命令相当好用,是RedHad和CentOS从指定服务器下载RPM包并自动安装。我个人比较喜欢。

    yum -y install gcc-c++

    这个时候分别执行./make.sh和./make.sh install,正常情况是可以成功的。 
    libfastcommon默认会被安装到/usr/lib64/libfastcommon.so但是FastDFS的主程序却在/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

    1.2安装FastDFS

    解压FastDFS安装包

    unzip fastdfs-5.11.zip

    解压后看到:

    [root@localhost ftp]# ls
    593d8f1eN5b3b8133.jpg            libfastcommon-master
    fastdfs-5.11                     libfastcommon-master.zip
    fastdfs-5.11.zip                 nginx-1.12.0.tar.gz
    fastdfs-client-java-master.zip   record.txt
    fastdfs-nginx-module-master.zip  zookeeper-3.4.6.tar.gz

    进到刚解压的目录

    cd fastdfs-5.11
    ./make.sh
    ./make.sh install

    如果没有报错那么就成功了。安装log中会提示FastDFS安装到了/etc/fdfs目录下。

    成功后查看安装目录:

    [root@localhost ftp]# cd /etc/fdfs/
    [root@localhost fdfs]# ll
    -rw-r--r-- 1 root root  1461 Jun  8 21:56 client.conf.sample
    -rw-r--r-- 1 root root  7927 Jun  8 21:56 storage.conf.sample
    -rw-r--r-- 1 root root  7389 Jun  8 21:56 tracker.conf.sample

    我们需要把这三个示例文件复制一份,去掉.sample。

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

    FastDFS安装结束。

    1.3安装tracker

    1.3.1创建tracker工作目录

    这个目录可以自定义,用来保存tracker的data和log 
    根据个人习惯,我创建了下面的目录:

    [root@localhost ~]# cd /usr/
    [root@localhost usr]# mkdir yong.cao
    [root@localhost usr]# cd yong.cao/
    [root@localhost yong.cao]# mkdir dev
    [root@localhost yong.cao]# cd dev/
    [root@localhost dev]# mkdir fastdfs
    [root@localhost yong.cao]# cd fastdfs/
    [root@localhost dev]# mkdir fastdfs_tracker
    [root@localhost fastdfs]# cd fastdfs_tracker/
    [root@localhost fastdfs_tracker]# pwd
    /usr/yong.cao/dev/fastdfs/fastdfs_tracker        #这个是我最终创建的目录
    [root@localhost fastdfs_tracker]#

    1.3.2配置tracker

    cd /etc/fdfs
    vim tracker.conf

    最小化的CentOS7是没有安装vim的,可以把vim tracker.conf命令改成vi tracker.conf,也可以去下载一个vim

    yum -y install vim     #简单粗暴安装方法

    打开后重点关注下面4个配置: 
    1.disabled=false #默认开启 
    2.port=22122 #默认端口号 
    3.base_path=/usr/yong.cao/dev/fastdfs/fastdfs_tracker #我刚刚创建的目录 
    4.http.server_port=6666 #默认端口是8080

    1.3.3启动tracker

    保存配置后启动tracker,命令如下:

    service fdfs_trackerd start

    如果不能启动,或提示用systemctl可改用命令:

    systemctl start fdfs_trackerd

    成功后应该可以看到:

    [root@localhost fdfs]# service fdfs_trackerd start
    Starting fdfs_trackerd (via systemctl):                    [  OK  ]

    进行刚刚创建的tracker目录,发现目录中多了data和log两个目录

    [root@localhost fdfs]# cd /usr/yong.cao/dev/fastdfs/fastdfs_tracker/
    [root@localhost fastdfs_tracker]# ll
    total 0
    drwxr-xr-x 2 root root 178 Jun 16 21:19 data
    drwxr-xr-x 2 root root  26 Jun 13 22:01 logs

    最后我们需要给tracker加入开机启动

    [root@localhost fastdfs_tracker]# ll /etc/rc.d/rc.local
    -rw-r--r-- 1 root root 501 Jun 16 21:34 /etc/rc.d/rc.local

    发现并没有执行权限,需要加一下:

    chmod +x /etc/rc.d/rc.local

    加完后应该是这样的:

    -rwxr-xr-x 1 root root 501 Jun 16 21:34 /etc/rc.d/rc.local
    修改rc.local
    vim /etc/rc.d/rc.local
    #!/bin/bash
    # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
    #
    # It is highly advisable to create own systemd services or udev rules
    # to run scripts during boot instead of using this file.
    #
    # In contrast to previous versions due to parallel execution during boot
    # this script will NOT be run after all other services.
    #
    # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
    # that this script will be executed during boot.
    
    touch /var/lock/subsys/local
    service fdfs_trackerd start

    查看一下tracker的端口监听情况

    [root@localhost fastdfs_tracker]# netstat -unltp|grep fdfs
    tcp        0      0 0.0.0.0:22122           0.0.0.0:*               LISTEN      2231/fdfs_trackerd

    端口22122成功监听。

    1.4 安装storage

    storage的安装与tracker很类似。

    1.4.1 为storage配置工作目录

    与tracker不现的是,由于storage还需要一个目录用来存储数据,所以我另外多建了一个fasdfs_storage_data 
    下面是我的目录结构:

    [root@localhost fastdfs]# ls
    fastdfs_storage  fastdfs_storage_data  fastdfs_tracker

    1.4.2 修改storage配置文件

    修改storage.conf

    vim /etc/fdfs/storage.conf

    1.disabled=false 
    2.group_name=group1 #组名,根据实际情况修改 
    3.port=23000 #设置storage的端口号,默认是23000,同一个组的storage端口号必须一致 
    4.base_path=/usr/yong.cao/dev/fastdfs/fastdfs_storage #设置storage数据文件和日志目录 
    5.store_path_count=1 #存储路径个数,需要和store_path个数匹配 
    6.base_path0=/usr/yong.cao/dev/fastdfs/fastdfs_storage_data #实际文件存储路径 
    7.tracker_server=192.168.128.131:22122 #我CentOS7的ip地址 
    8.http.server_port=8888 #设置 http 端口号

    修改保存后创建软引用

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

    1.4.3 启动storage

    service fdfs_storaged start

    如果不能启动,或提示用systemctl可改用命令:

    systemctl start fdfs_storaged

    成功后应该可以看到:

    [root@localhost fdfs]# service fdfs_stroaged start
    Starting fdfs_storaged (via systemctl):                    [  OK  ]

    同样的,设置开机启动: 
    修改rc.local

    vim /etc/rc.d/rc.local
    #!/bin/bash
    # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
    #
    # It is highly advisable to create own systemd services or udev rules
    # to run scripts during boot instead of using this file.
    #
    # In contrast to previous versions due to parallel execution during boot
    # this script will NOT be run after all other services.
    #
    # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
    # that this script will be executed during boot.
    
    touch /var/lock/subsys/local
    service fdfs_trackerd start
    service fdfs_storaged start

    查看一下服务是否启动

    [root@localhost fastdfs]# netstat -unltp | grep fdfs
    tcp        0      0 0.0.0.0:22122           0.0.0.0:*               LISTEN      2231/fdfs_trackerd
    tcp        0      0 0.0.0.0:23000           0.0.0.0:*               LISTEN      2323/fdfs_storaged

    服务已正常启动。

    1.4.4 校验整合

    到这里,fastdfs的东西都已安装完成,最后我们还要确定一下,storage是否注册到了tracker中去。 
    查看命令:

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

    成功后可以看到: 

    ip_addr = 192.168.128.131 (localhost.localdomain) ACTIVE
    
    [root@localhost fastdfs]# /usr/bin/fdfs_monitor /etc/fdfs/storage.conf
    [2017-06-17 14:15:44] DEBUG - base_path=/usr/yong.cao/dev/fastdfs/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.128.131:22122
    group count: 1
    Group 1:
    group name = group1
    disk total space = 8178 MB
    disk free space = 6463 MB
    trunk free space = 0 MB
    storage server count = 2
    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.128.131
                    ip_addr = 192.168.128.131 (localhost.localdomain)  ACTIVE
                    http domain =
                    version = 5.11
                    join time = 2017-06-13 22:19:42
                    up time = 2017-06-16 21:19:47
                    total storage = 8178 MB
                    free storage = 6463 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 = 1
                    total_upload_count = 6
                    success_upload_count = 6
                    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 = 5
                    success_set_meta_count = 5
                    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 = 590790
                    success_upload_bytes = 590790
                    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 = 6
                    success_file_open_count = 6
                    total_file_read_count = 0
                    success_file_read_count = 0
                    total_file_write_count = 6
                    success_file_write_count = 6
                    last_heart_beat_time = 2017-06-17 14:15:27
                    last_source_update = 2017-06-16 23:34:20
                    last_sync_update = 1970-01-01 08:00:00
                    last_synced_timestamp = 1970-01-01 08:00:00
    [root@localhost fastdfs]#
  • 相关阅读:
    896. Monotonic Array单调数组
    865. Smallest Subtree with all the Deepest Nodes 有最深节点的最小子树
    489. Robot Room Cleaner扫地机器人
    JavaFX
    《Python CookBook2》 第一章 文本
    《Python CookBook2》 第一章 文本
    《Python CookBook2》 第一章 文本
    《Python CookBook2》 第一章 文本
    《Python CookBook2》 第一章 文本
    《Python CookBook2》 第一章 文本
  • 原文地址:https://www.cnblogs.com/xiaojf/p/7891050.html
Copyright © 2011-2022 走看看