FastDFS 安装与配置| 学习笔记

简介: 快速学习 FastDFS 安装与配置。

开发者学堂课程【Spring Boot+Vue.js+FastDFS实现分布式图片服务器 :FastDFS 安装与配置】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/742/detail/13140


FastDFS 安装与配置

 

内容介绍

一. FastDFS 的安装

二. Tracker 的配置

三. 启动停止

 

一.FastDFS 的安装(课后有具体的安装步骤文档)

1. 安装 VMware 虚拟机

安装 CentOS7 虚拟机(由于 FastDFS 是由 C 语言开发的,因此建议在 Linux 操作系统上运行)

2. FastDFS--tracker 安装

分别在 192.168.101.3 和192.168.101.4 上安装 tracker

注:初次安装可只安装一台 tracker 方便调试

(1)下载

Tracker 和 storage 使用相同的安装包,下载地址:

https://github.com/happyfish100/FastDFS

(2)FastDFS 安装环境

FastDFS 是 C 语言开发,建议在 linux 上运行,本教程使用 Centos6.5 作为安装环境

安装 FastDFS 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,需要安装 gcc : yum install gcc-c++

(3)安装 libevent

FastDFS 依赖 libevent 库,需要安装:

yum-y install libevent

 

二.Tracker 配置

1.配置

FastDFS 的配置文件目录:/etc/fdfs

主要的配置文件:/etc/fdfs/tracker.conf ( tracker 配置文件); storage.conf ( storage 配置文件)

image.png

Tracker.conf 配置内容如下:

端口: port=22122

Tracker 基础目录: base_path=/home/fastdfs,  tracker 在运行时会向此目录存储 storage 的管理数据。

在此次测试中, storage 和 tracker 在一台服务器中运行。而在实际的环境当中,这两个可以在不同的服务器中,即 tracker 在一台服务器中, storage 在另一台服务器中。

2.测试

连接服务器后,输入 ed/etc/fdfs  11 回车后输入 cat tracker.confs, 回车后,配置位置如下图所示:

image.png

Tracker 的文件目录位置如下图所示:

image.png

工作时, tracker 会向其中写入数据。

打开 home 其中有 DFS 的文件目录,如图所示:

image.png

其中名称为 fastdfs 的目录,即为 tracker 的基础目录

只需配置以上两点即可。

3.storage 配置

Storage.conf 配置内容如下:

组名: group_name=group1

端口: port=23000 (即对外服务的端口)

向 tracker 心跳间隔(秒): heart_beat_interval=30 (每隔30秒向 tracker 报告一次状态)

Storage 基础目录: base_path=/home/fastdfs

磁盘存储目录:

store_path0=/home/fastdfs/fdfs_storage 此目录下存储上传的文件,在 /home/fastdfs/fdfs_storage/data 下

store_path1=......

有多个磁盘就定义多个 store_path

4.演示

输入 cat storage.conf 回车后,下图所示即为数据文件的目录

image.png

如果将文件存入此处,将来的数据文件的路径即为 M00

group1/M00/02/44/wKgDrE34E8wAAAAAAAAGkEIYJK42378.sh

如果将文件存入下一行,将来的数据文件的路径即为 M01

以此类推

M00 只是一个虚拟的地址,真正存在的磁盘的路径在 M00 对应的此路径

上报 tracker 的地址: tracker_server=192.168.101.64:22122

如果有多个 tracker 则配置多个 tracker ,比如:

Tracker_server=192.168.101.64:22122

Tracker_server=192.168.101.65:22122

...

image.png

如图所示为配置的 tracker 服务器的地址

配置多个 tracker 不能在后面加逗号分割,应该加多行 tracker

 

三.启动停止

fastDFS 启动/停止脚本目录:

image.png

fdfs_trackerd: tracker 脚本,通过此脚本对 tracker 进行启动和停止

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

Fdfs_storaged: storage 脚本,通过此脚本对 storage 进行启动和停止

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

重启后,我们可以进行检测。输入 ps aux lgrep tracker , 回车后,可以看到已经启动的命令。输入 ps aux lgrep storage , 回车后可以看到已经启动的命令。

输入 cd/usr/bin/ 回车, 11 fdfs_’ 回车后就可以得到上图所示的脚本目录。

image.png

此目录中包含 storage 和 tracker 的启动或停止的文件。

相关文章
|
3月前
|
分布式计算 Java 关系型数据库
SpringBoot集成powerJob实战派
PowerJob 是全新一代分布式任务调度与计算框架,支持可视化管理、多种定时策略、丰富的执行模式(如单机、广播、Map/MapReduce),并提供工作流编排、在线日志、高可用及分布式计算能力,适用于定时任务、集群执行、延迟处理等场景。
574 1
SpringBoot集成powerJob实战派
|
机器学习/深度学习 人工智能 自然语言处理
AI人工智能大模型的架构演进
随着深度学习的发展,AI大模型(Large Language Models, LLMs)在自然语言处理、计算机视觉等领域取得了革命性的进展。本文将详细探讨AI大模型的架构演进,包括从Transformer的提出到GPT、BERT、T5等模型的历史演变,并探讨这些模型的技术细节及其在现代人工智能中的核心作用。
889 8
MyBatis-Plus-Join关联查询
MyBatis-Plus-Join关联查询
650 2
|
12月前
|
SQL Java 数据库连接
MyBatis-Plus高级用法:最优化持久层开发
MyBatis-Plus 通过简化常见的持久层开发任务,提高了开发效率和代码的可维护性。通过合理使用条件构造器、分页插件、逻辑删除和代码生成器等高级功能,可以进一步优化持久层开发,提升系统性能和稳定性。掌握这些高级用法和最佳实践,有助于开发者构建高效、稳定和可扩展的企业级应用。
713 13
如何使用控制台群发短信 | 阿里云短信服务
操作指南|通过控制台群发短信
1069 14
|
Java 文件存储 Spring
轻松实现Spring Boot与FastDFS的无缝整合
家人们啦!,上篇文章了,我们讲了如何使用docker-compose快速部署fastdfs,在今天的文章中,我将向大家介绍如何将Spring Boot与FastDFS进行无缝整合,以便高效地管理和操作文件存储。通过这个整合,你将能够轻松地在Spring Boot应用程序中实现文件的上传和下载等功能。让我们开始吧
816 0
轻松实现Spring Boot与FastDFS的无缝整合
|
机器学习/深度学习 算法 数据可视化
基于Python flask的豆瓣电影数据分析可视化系统,功能多,LSTM算法+注意力机制实现情感分析,准确率高达85%
本文介绍了一个基于Python Flask框架的豆瓣电影数据分析可视化系统,该系统集成了LSTM算法和注意力机制进行情感分析,准确率高达85%,提供了多样化的数据分析和情感识别功能,旨在帮助用户深入理解电影市场和观众喜好。
600 0
|
SQL 安全 关系型数据库
MySQL的binlog日志的简介与查看
MySQL的binlog日志的简介与查看
1738 4
|
Java 应用服务中间件 Maven
解决“Unable to start embedded Tomcat“错误的完整指南
通过逐步检查以上问题,你应该能够解决 "Unable to start embedded Tomcat" 错误,并使Tomcat成功启动。
4538 1
解决“Unable to start embedded Tomcat“错误的完整指南
JMeter前置处理器-用户参数详解
JMeter是一款开源性能测试工具,其前置处理器功能强大,能模拟真实用户行为。本文聚焦于用户参数这一重要前置处理器,阐述了用户参数的作用域规则:全局(测试计划)、线程组或请求级别。通过实例展示了如何定义单个或多个用户值,并说明了“每次迭代更新一次”选项的影响。用户参数与用户定义变量的主要区别在于,前者可为参数分配多个值,且在变量名冲突时优先级更高。理解这些概念有助于优化JMeter的性能测试效率。