zoukankan      html  css  js  c++  java
  • FastDFS搭建单机图片服务器(一)

    防丢失转载:https://blog.csdn.net/MissEel/article/details/80856194

    根据
    分布式文件系统 - FastDFS 在 CentOS 下配置安装部署

    分布式文件系统 - FastDFS 配置 Nginx 模块及上传测试
    一步一步搭建的,但还是碰到了版本太低,导致安装报错的问题。

    费时间解决了问题之后,我将这个步骤和对应的版本记录下载,有需要的小伙伴可以参考一下。
    用这个步骤,我已经在一部本机的虚拟机和一部阿里云服务器上分别搭建过,并且能上传和下载图片。

    搭建单机服务器的还是比较简单的。我分成了两篇来进行记录。

    FastDFS搭建单机图片服务器(一)

    主要是下载、安装和配置FastDFS相关的组件,实现图片的上传。
    FastDFS搭建单机图片服务器(二)

    主要是下载、安装和配置nginx相关的组件,实现图片的下载。
    一、目录结构
    以我下载及安装的路径为例,
    下载及安装路径
    /usr/local/

    创建几个后面能用到的目录
    mkdir /home/fastdfs/
    mkdir /home/fastdfs/storage
    mkdir /home/fastdfs/storage/storage-image
    mkdir /home/fastdfs/tracker
    mkdir /home/fastdfs/client
    mkdir /home/fastdfs/fast-nginx

    二、下载安装 libfastcommon
    1、进入目录
    cd /usr/local

    2、下载libfastcommon到/usr/local目录下
    wget https://github.com/happyfish100/libfastcommon/archive/master.zip

    3、解压压缩包
    unzip master.zip

    (如果没有unzip,
    执行命令yum install unzip 或 apt-get install unzip)

    4、cd libfastcommon-master

    5、编译
    ./make.sh
    6、安装
    ./make.sh install

    三、下载安装FastDFS
    注意!FastDFS版本必须 >= 5.11
    不然在后期使用fastdfs-nginx-module模块整合Nginx时候会出错,用了一个上午才明白的血淋淋的教训。
    1、进入目录
    cd /usr/local
    2、下载FastDFS到/usr/local目录下
    wget https://github.com/happyfish100/fastdfs/archive/V5.11.tar.gz
    3、解压 FastDFS ,命令:
    tar -zxvf V5.11.tar.gz

    4、进入fastfds-5.11目录
    cd fastdfs-5.11

    5、编译
    ./make.sh

    如果报错如果报错
    ../storage/trunk_mgr/trunk_shared.c:435:undefined reference to ‘fc_safe_read’
    检查是否libfastcommon版本过低了,1.0.7的版本玩不起来,我更新成最新版本libfastcommon-master,然后再安装fastdfs,问题解决。

    6、安装
    ./make.sh install

    四、配置 Tracker 服务
    上述安装成功后,在/etc/目录下会有一个fdfs的目录,进入它。会看到三个.sample后缀的文件,这是作者给我们的示例文件,我们需要把其中的tracker.conf.sample文件改为tracker.conf配置文件并修改它。
    1、复制重命名配置文件
    cd /etc/fdfs
    cp tracker.conf.sample tracker.conf

    2、打开
    vim tracker.conf

    主要修改两个参数

    base_path=/home/fastdfs/tracker

    http.server_port=80
    1
    2
    3
    port=22122这个端口参数不建议修改,除非你已经占用它了。

    修改完成保存并退出 vim ,这时候我们可以使用
    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
    来启动 Tracker服务,但是这个命令不够优雅,怎么做呢?

    3、使用ln -s 建立软链接:

    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

    4、启动tracker
    使用
    service fdfs_trackerd start
    来优雅地启动 Tracker服务了,比刚才带目录的命令好记太多了。你也可以启动过服务看一下端口是否在监听,命令:

    启动服务:service fdfs_trackerd start

    查看监听:netstat -unltp|grep fdfs

    在阿里云服务器上启动service fdfs_trackerd start报错
    Failed to start fdfs_storaged.service: Unit fdfs_storaged.service not found.


    在阿里云上面使用
    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
    启动就是正常的。

    重启
    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart

    看到22122端口正常被监听后, Tracker服务安装成功啦!

    五、配置 Storage 服务
    现在开始配置 Storage 服务,由于我这是单机器测试,你把 Storage 服务放在多台服务器也是可以的,它有 Group(组)的概念,同一组内服务器互备同步,这里不再演示。

    1、复制重命名配置文件
    cd /etc/fdfs
    会看到三个.sample后缀的文件,我们需要把其中的storage.conf.sample文件改为storage.conf配置文件并修改它

    cp storage.conf.sample storage.conf

    2、打开文件
    vim storage.conf

    修改几个参数

    group_name=group1
    base_path=/home/fastdfs/storage/storage-image
    store_path0=/home/fastdfs/storage/storage-image
    tracker_server=192.168.86.131:22122
    1
    2
    3
    4
    192.168.86.131改成你的本机ip。

    如果部署的是阿里云ECS服务器,
    tracker_server=公网ip:22122

    stroage的port=23000这个端口参数也不建议修改,默认就好,除非你已经占用它了。
    修改完成保存并退出 vim ,这时候我们依然想优雅地启动 Storage服务,带目录的命令不够优雅,这里还是使用ln -s 建立软链接。

    3、建立软链接
    ln -s /usr/bin/fdfs_storaged /usr/local/bin

    4、启动storage
    service fdfs_storaged start

    在阿里云上面使用
    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
    启动就是正常的。

    注:在阿里云上进行配置,storaged可能会启动失败,需要配置云服务器实例安全组,添加安全组配置,打开22122和23000端口。

    然后关闭系统防火墙:systemctl stop firewalld.service

    启动成功后可以配置开机自动启动:

    vim /etc/rc.local

    在打开的文件中添加:

    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart

    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart

    退出保存即可。

    5、查看是否正常启动
    netstat -unltp|grep fdfs
    如果22122和23000端口都在监听,则启动正常了。

    六、尝试通信
    到这一步已经正常启动了tracker和storage服务。
    指定命令尝试两者进行通信
    /usr/bin/fdfs_monitor /etc/fdfs/storage.conf

    启动正常的话,就可上传图片了,但是目前还无法下载。

    继续完成下一篇的步骤
    FastDFS搭建单机图片服务器(二)
    主要是下载、安装和配置nginx相关的组件,实现图片的下载。
    -

  • 相关阅读:
    【Vuejs】509- vue-loader工作原理
    【JS】508- MVVM原理介绍
    【Webpack】507- 基于Tree-shaking的多平台Web代码打包实践
    【TS】506- TypeScript 交叉类型
    【WebSocket】505- WebSocket 入门到精通
    【语雀知识库分享】HTTP面试宝典
    【JS】504- HTML5 之跨域通讯(postMessage)
    jQuery 选择器
    JQuery简介
    什么是JDBC的最佳实践?
  • 原文地址:https://www.cnblogs.com/hahajava/p/11326069.html
Copyright © 2011-2022 走看看