Linux下安装FastDFS步骤详解

前言 

        FastDFS 是一个高性能、轻量级的分布式文件系统,广泛应用于大规模文件存储和管理,特别适用于图片、视频等静态资源的存储。其高可用性、高并发处理能力以及良好的扩展性,使得 FastDFS 成为处理海量文件存储的理想选择。

        在这篇文章中,我们将详细介绍如何在 Linux 系统上安装和配置 FastDFS。无论你是第一次接触分布式文件系统,还是希望在生产环境中部署 FastDFS,本教程都会帮助你快速掌握安装流程。

准备工作

先检查系统是否有gcc库,如果没有则需要安装,因为gcc是fastdfs的安装必备依赖库。

gcc -v

返回以下信息表示已安装有gcc

如果没有,则应该安装gcc,请自行百度gcc安装步骤。

接下来需要安装libfastcommon基础库,libfastcommon 是一个由 FastDFS 项目提供的开源库,主要提供了 FastDFS 所需的常用基础功能,例如日志记录、内存管理、文件处理、字符串处理等。它是 FastDFS 的一个依赖库,用于提供 FastDFS 系统运行所需要的底层支持。

安装 libfastcommon

解压安装包后,进入目录,如图:

执行命令

./make.sh
sudo ./make.sh install

 FastDFS 安装

解压安装包后进入安装包中,如图:

执行安装命令:

./make.sh
./make.sh install

安装完成后,在/etc/fdfs/中,能找到对应文件:

接下来进行配置操作

执行命令:

mkdir /lvdata/fastdfs
mkdir /lvdata/fastdfs/fastdfs_storage
mkdir /lvdata/fastdfs/fastdfs_storage_data
mkdir /lvdata/fastdfs/fastdfs_tracker

在自定义目录中创建三个文件夹,如图:

在/etc/fdfs/下复制对应的配置文件

cd /etc/fdfs/
cp client.conf.sample client.conf
cp storage.conf.sample storage.conf
cp tracker.conf.sample tracker.conf

 修改/etc/fdfs/tracker.conf中的base_path指定到创建好的文件夹下,如下图:

vim /etc/fdfs/tracker.conf

找到对应的配置项做修改,配置项如下:

base_path=/lvdata/fastdfs/fastdfs_tracker
download_server=1  
store_lookup=1                ---------------指定组
store_group=group1           ---指定组 -------------store_lookup=1时生效
store_server=2              ---- 根据优先级进行排序(上传优先级由storage server来设置,参数名为upload_priority)

其中download_server有说明,可根据实际需要选择

  • download_server = 1: 适用于你希望每个文件都从其最初上传的存储服务器下载的场景。这种方式有助于确保文件始终由负责存储该文件的服务器提供,但可能会导致某些服务器的负载过重,尤其在某些文件经常被访问的情况下。

  • download_server = 0: 适用于你希望均衡负载的场景。所有存储服务器都有机会提供文件下载,避免了某一台服务器的负载过高,提升了系统的整体性能。

 启动tracker

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

可用    netstat -unltp|grep fdfs    检测是否启动成功,如图:

 配置编辑/etc/fdfs/storage.conf

vi /etc/fdfs/storage.conf

配置以下项:

group_name=group1                      #组名,根据实际情况修改 
base_path=/lvdata/fastdfs/fastdfs_storage     #设置storage数据文件和日志目录 
store_path0=/lvdata/fastdfs/fastdfs_storage_data         #实际文件存储路径
store_path_count=1 存储路径个数,需要和store_path个数匹配 
#tarcker_server 服务地址
tracker_server=:22122 
tracker_server=172.16.30.38:22122 
tracker_server=172.16.30.25:22122 
http.server_port=80     #设置http 端口号  这里需与nginx中的端口号一致

多组配置
group_name=group1    ------#组名,根据实际情况修改
upload_priority=10                    -----------本机上传文件权重,越小权重越大

根据实际节点配置具体IP地址,如有多个则配置多个。其他项根据实际情况修改

启动storage

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

如图: 

编辑/etc/fdfs/client.conf

 vi /etc/fdfs/client.conf
base_path=/lvdata/fastdfs/fastdfs_tracker      #tracker服务器文件路径
#tarcker_server 服务地址
tracker_server=172.16.30.41:22122
tracker_server=172.16.30.38:22122
tracker_server=172.16.30.25:22122

根据实际情况配置节点IP端口。

到这里,安装工作已经结束,需要多节点的情况下,请在另外的服务器上继续重复安装,记住配置节点的时候,分清各个节点的IP和端口,需要一致!

测试安装结果

进行安装结果测试,按以下步骤进行:

(1)选择其中一个节点上传一张图片至根目录,例如:

在192.168.4.131服务器/home路径下放一张图片1.png,执行
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /home/1.png

执行结果如图:

至此,安装基本结束

配置集群

安装fastdfs-nginx-module

cd /usr/local/fdfs
tar -zxvf fastdfs-nginx-module-1.22.tar.gz
cd fastdfs-nginx-module-1.22/src/
vi config

编辑配置文件config 将里面的/usr/local/全部替换为/usr/

如图:

 切换至cd /usr/local/nginx安装目录下

(若已安装过nginx则往下走,未安装请参考linux下安装Nginx,解压Nginx后执行以下语句)
cd /usr/local/nginx-1.21.6
./configure --prefix=/usr/local/nginx-1.21.6/ --add-module=/usr/local/fastdfs-nginx-module-1.22/src/
make && make install

如果已经安装了nginx但是没有fastdfs-nginx-module的,请重新编译一次。或者选用在线安装方法的自行查资料安装。

拷贝mod_fastdfs.conf文件至/etc/fdfs/

cp /usr/local/fastdfs-nginx-module-1.22/src/mod_fastdfs.conf /etc/fdfs/

编辑/etc/fdfs/mod_fastdfs.conf
vim /etc/fdfs/mod_fastdfs.conf
配置
connect_timeout=10
修改为 Tracker 服务的地址和端口
tracker_server=172.16.30.41:22122 
tracker_server=172.16.30.38:22122
tracker_server=172.16.30.25:22122
storage_server_port=23000            //默认就是2300,不用做修改
url_have_group_name=true            //允许通过 http 服务访问
store_path0=/lvdata/fastdfs/fastdfs_storage_data            //路径一定是服务器中建立的存储数据的路径,不是 storage  服务的路径
group_name=group1           -------------------本地存储组名称
group_count=0                //只有一个 group 就填0,否则按实际的 group 数量来填写

将 fastdfs-6.06目录下的http.conf和mime.types两个文件复制到/etc/fdfs/目录下

cd /usr/local/fastdfs-6.06/conf/
cp /usr/local/fastdfs-6.06/conf/http.conf /usr/local/fastdfs-6.06/conf/mime.types /etc/fdfs/

 建立软链接
ln -s /lvdata/fastdfs/fastdfs_storage_data/data/  /lvdata/fastdfs/fastdfs_storage_data/data/M00

修改安装好的nginx的配置文件

有多少节点就配多少个:

upstream fdfs_group {
    server 172.16.30.41:22122 ;
    server 172.16.30.38:22122 ;
}

location ~/group([0-9])/M00/ {

        proxy_pass http://fdfs_group;

        ngx_fastdfs_module;

}

这里是配置负载均衡,不懂的自行查资料。

至此,fastdfs集群就已经配置完成了。

启动nginx,上传文件进行测试吧。

相关安装包下载请移步:

https://download.youkuaiyun.com/download/ts977/90431880

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值