fastDFS安装配置

  • A+
所属分类:软件开发

前言

项目地址:https://github.com/happyfish100/fastdfs

操作系统:ubuntu1604、详见下图

fastDFS安装配置

 

一:下载安装FDFS依赖: libfastcommon

下载地址:https://codeload.github.com/happyfish100/libfastcommon/zip/master

libfastcommon是从 FastDFS 和 FastDHT 中提取出来的公共 C 函数库,基础环境,安装即可 。

下载完成直接通过unzip命令解压即可。

fastDFS安装配置

 

因为libfastcommon和fastDFS都是通过C语言编写的、我们需要先编译、再安装。

进入libfastcommon-master目录、通过./make.sh命令进行编译。

fastDFS安装配置

编译完成之后通过./make.sh install 命令进行安装

fastDFS安装配置

libfastcommon.so默认被安装到了/usr/lib64/libfastcommon.so,但是FastDFS主程序设置的lib目录是/usr/local/lib,所以我们需要创建软链接(快捷方式)。

命令如下:

ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

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

fastDFS安装配置

 

二:下载安装fastDFS

下载地址:https://codeload.github.com/happyfish100/fastdfs/zip/master

下载完成之后通过unzip命令解压、解压完成之后进入fastdfs-master目录通过./make.sh 命令编译、./make.sh install 命令安装

fastDFS安装配置

fastDFS安装配置

fastDFS安装配置

 

1、配置跟踪服务器Tracker Server

进入 /etc/fdfs,复制 FastDFS 跟踪器样例配置文件 tracker.conf.sample,并重命名为 tracker.conf

fastDFS安装配置

 

通过mkdir命令创建/home/python/fastdfs/tracker目录、用于存放tracker数据和日志

vi编辑tracker.conf ,标红的需要修改下,其它的默认即可。

# 配置文件是否不生效,false 为生效

disabled=false

#bind_addr地址为tracker服务器地址

bind_addr=172.16.200.12

# 提供服务的端口

port=22122

# Tracker 数据和日志目录地址(根目录必须存在,子目录会自动创建)

base_path=/home/python/fastdfs/tracker

 

fastDFS安装配置 fastDFS安装配置

 

注:

设置Tracker开机启动

# chkconfig fdfs_trackerd on

或者:

# vim /etc/rc.d/rc.local

加入配置:

/etc/init.d/fdfs_trackerd start

tracker server 目录及文件结构

Tracker服务启动成功后,会在base_path下创建data、logs两个目录。目录结构如下:

${base_path}

|__ __ data

|   |__ __ storage_groups.dat:存储分组信息

|   |__ __ storage_servers.dat:存储服务器列表

|__ __ logs

|   |__ __ trackerd.log: tracker server 日志文件

 

2、配置存储服务器Storage Server

通过mkdir命令创建/home/python/fastdfs/storage目录、用于存放storage数据和日志

# 配置文件是否不生效,false 为生效

disabled=false

# 指定此 storage server 所在 组(卷)

group_name=group1

# storage server 服务端口

port=23000

# 心跳间隔时间,单位为秒 (这里是指主动向 tracker server 发送心跳)

heart_beat_interval=30

# Storage 数据和日志目录地址(根目录必须存在,子目录会自动生成)

base_path=/home/python/fastdfs/storage

# 存放文件时 storage server 支持多个路径。这里配置存放文件的基路径数目,通常只配一个目录。

store_path_count=1

# 逐一配置 store_path_count 个路径,索引号基于 0。

# 如果不配置 store_path0,那它就和 base_path 对应的路径一样。

store_path0=/home/python/fastdfs/storage

# FastDFS 存储文件时,采用了两级目录。这里配置存放文件的目录个数。

# 如果本参数只为 N(如: 256),那么 storage server 在初次运行时,会在 store_path 下自动创建 N * N 个存放文件的子目录。

subdir_count_per_path=256

# tracker_server 的列表 ,会主动连接 tracker_server

# 有多个 tracker server 时,每个 tracker server 写一行(也可以通过HAproxy+KeepAlived实现集群)

tracker_server=172.16.200.12:22122

# 允许系统同步的时间段 (默认是全天) 。一般用于避免高峰同步产生一些问题而设定。

sync_start_time=00:00 sync_end_time=23:59

fastDFS安装配置

fastDFS安装配置 fastDFS安装配置

fastDFS安装配置 fastDFS安装配置 fastDFS安装配置

 

注:

设置 Storage 开机启动

# chkconfig fdfs_storaged on

或者:

# vim /etc/rc.d/rc.local

加入配置:

/etc/init.d/fdfs_storaged start

Storage 目录

同 Tracker,Storage 启动成功后,在base_path 下创建了data、logs目录,记录着 Storage Server 的信息。

在 store_path0 目录下,创建了N*N个子目录:

fastDFS安装配置

 

3、启动tracker和storage服务

注:通过sudo service fdfs_trackerd start和sudo service fdfs_storaged start命令分别启动tracker和storage服务、如果提示Failed to start fdfs_trackerd.service: Unit fdfs_trackerd.service not found.错误、则可以通过/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start和/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start命令启动tracker和storage服务、启动完成之后通过ps aux | grep fdfs命令查看tracker和storage进程。fastDFS安装配置

 

4、fastDFS命令工具如下、在/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

 

三:上传文件测试

在上传文件之前我们需要把/etc/fdfs/client.conf.sample文件复制一份为/etc/fdfs/client.conf、并修改配置如下:

fastDFS安装配置

在ubuntu    /root目录下存放一张图片、然后通过命令 上传图片

fdfs_upload_file /etc/fdfs/client.conf /root/celery.png

上传成功后会返回文件ID号:group1/M00/00/00/rBDIC1xJt-2AKfkBAAG9BTSa4Ag921.png

fastDFS安装配置

 

返回的文件ID由group、存储目录、两级子目录、fileid、文件后缀名(由客户端指定,主要用于区分文件类型)拼接而成。

fastDFS安装配置

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: