首页 > 编程知识 正文

fastdfs图片服务器搭建(Linux环境搭建NFS服务)

时间:2023-05-03 15:41:57 阅读:94721 作者:4300

准备阶段

Linux服务器或虚拟机的准备

跟踪程序和存储系统安装在一台计算机上

下载所需的安装软件包,然后上传到linux服务器目录

快速DFS下载地址: https://github.com/happyfish100

t引擎下载地址: http://t引擎. Taobao.org /

安装FastDFS依赖

FastDFS是c语言发展的APP。 安装时需要使用make、cmake、gcc编译器。

yum安装- y make cmake gcc-c

安装FastDFS核心库

上传的llibfastcommon-1.0.43.tar.gz解压缩并导航到/usr/local/fastdfs目录

导航至/usr /本地/快速DFS/libfastcommon-1.0.43目录

编译程序

./make.sh

安装

./make.sh安装

默认安装位置位于两个目录中:/usr/lib64和/usr/include/fastcommon。

创建软连接

ln-s/usr/lib 64/libfastcommon.so/usr /本地/lib/libfastcommon.so

LN-S/USR/LIB 64/Libfastcommon.so/USR/LIB/Libfastcommon.so

ln-s/usr/lib 64/libfdfsclient.so/usr /本地/lib/libfdfsclient.so

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

解压缩

FastDFS主程序安装

fastdfs-6.06.tar.gz文件,然后将解压缩的fastdfs-6.06文件夹转换为/usr /本地/fast DFS /

tar-zxvf快速DFS-6.06.tar.gz

mvfastdfs-6.06/usr /本地/快速DFS /

编译安装

前进到/usr /本地/快速DFS /快速DFS-6.06

./make.sh

./make.sh安装

安装后,FastDFS主程序的位置:

/usr/cqdxd -可执行文件的位置。

/etc/fdfs -设定档的位置。

/usr/lib64 -主程序代码所在的位置

/usr/include/fastdfs -包含的插件组的位置

服务配置

顺控脚本

在/etc/init.d/目录中,脚本文件为fdfs -存储和fdfs -跟踪

配置文件

配置文件位于/etc/fdfs/目录中

tracker.conf.sample-tracker服务配置文件模板storage.conf.sample -存储服务器配置文件模板client.conf.sample - FastDFS为可以通过命令行测试FastDFS的有效性

Tracker 服务配置

来修改配置文件

复制模板配置文件

光盘/以太网/光纤通道

CP tracker.conf .样本tracker.conf

创建/usr /本地/快速DFS /快速DFS -跟踪程序文件夹

vim跟踪器. conf

更改基本路径。 base_path FastDFSTracker启动后使用的根目录用于存储跟踪数据和日志

基本路径=/用户/本地/快速DFS

/fastdfs-tracker

启动Tracker

/etc/init.d/fdfs_trackerd start

启动成功后,配置文件中base_path指向的目录中出现FastDFS服务相关数据目录(data目录、logs目录)

查看服务状态

ps -ef | grep fdfs

停止服务

/etc/init.d/fdfs_trackerd stop

重启服务

/etc/init.d/fdfs_trackerd restart

Storage 服务

配置文件

cd /etc/fdfs

cp storage.conf.sample storage.conf

mkdir -p /usr/local/fastdfs/fastdfs-storage/base

mkdir -p /usr/local/fastdfs/fastdfs-storage/store

修改storage.conf配置文件

vim storage.conf

base_path=/usr/local/fastdfs/fastdfs-storage/base

store_path0=/usr/local/fastdfs/fastdfs-storage/store

tracker_server=192.168.152.139:22122

base_path - 基础路径。用于保存storage server基础数据内容和日志内容的目录。store_path0 - 存储路径。是用于保存FastDFS中存储文件的目录,就是要创建256*256个子目录的位置。base_path和store_path0可以使用同一个目录。tracker_server - 跟踪服务器位置。就是跟踪服务器的ip和端口。

启动服务

要求tracker服务必须已启动

/etc/init.d/fdfs_storaged start

启动成功后,配置文件中base_path指向的目录中出现FastDFS服务相关数据目录(data目录、logs目录)

配置文件中的store_path0指向的目录中同样出现FastDFS存储相关数据录(data目录)

其中$store_path0/data/目录中默认创建若干子孙目录(两级目录层级总计256*256个目录),是用于存储具体文件数据的。

Storage服务器启动比较慢,因为第一次启动的时候,需要创建256*256个目录。

查看服务状态

/etc/init.d/fdfs_storaged status

停止服务

/etc/init.d/fdfs_storaged stop

重启服务

/etc/init.d/fdfs_storaged restart

配置Client端

修改配置文件

cd /etc/fdfs

cp client.conf.sample client.conf

mkdir -p /usr/local/fastdfs/fastdfs-client

client.conf配置文件中主要描述客户端的行为,需要进行下述修改:

vim client.conf

base_path= /usr/local/fastdfs/fastdfs-client

tracker_server=192.168.152.1398:22122

base_path - 就是客户端命令行执行过程时临时数据存储位置。

校验整合

FastDFG的东西都已安装完成,最后我们还要确定一下,storage是否注册到了tracker中去

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

测试上传文件

在根目录下上传一个123.jpg用作测试上传文件

/usr/cqdxd/fdfs_upload_file /etc/fdfs/client.conf /123.jpg

上传结束后,返回group1/M00/00/00/xxxxxxxxxx.xxx,检查storage服务结点中的$store_path0/data/00/00/目录中是否有上传的文件(一般情况上传的文件按顺序保存在$store_path0/data/00/00/目录中,不能完全保证)。

上传文件结果:group1/M00/00/00/wKiYi16K6NOATtArAAF3eLG6Dmw260.jpg

组名:group1文件上传后所在的storage组名称,在文件上传成功后有storage服务器返回,需要客户端自行保存。虚拟磁盘路径:M00 storage配置的虚拟路径,与磁盘选项store_path*对应。如果配置了store_path0则是M00,如果配置了store_path1则是M01,以此类推。数据两级目录:/00/00 storage服务器在每个虚拟磁盘路径下创建的两级目录,用于存储数据文件。文件名:wKiYi16K6NOATtArAAF3eLG6Dmw260.jpg

测试删除文件

/usr/cqdxd/fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/wKiYi16K6NOATtArAAF3eLG6Dmw260.jpg

Nginx组件

如果FastDFS中保存的是图片信息。希望在WEB应用中可以直接访问FastDFS中的图片进行显示。如果操作?

安装Nginx是为了WEB应用中可以使用HTTP协议直接访问Storage服务中存储的文件。在storage结点所在服务器安装Nginx组件。

需要安装两部分内容。

Nginx应用,在安装nginx应用的时候,同时要在nginx中增加一个FastDFS的组件。

fastdfs-nginx-module模块

解压fastdfs-nginx-module-1.22.tar.gz,并把解压后的文件夹移动到/usr/local/fastdfs/

tar -zxvf fastdfs-nginx-module-1.22.tar.gz

mv fastdfs-nginx-module-1.22 /usr/local/fastdfs/

修改配置

vim /usr/local/fastdfs/fastdfs-nginx-module-1.22/src/config

CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon"

编译安装Nginx

cd /usr/local/fastdfs/installpackage/tengine-2.3.2

./configure --prefix=/usr/local/tengine --add-module=/usr/local/fastdfs/fastdfs-nginx-module-1.22/src/

make && make install

配置fastdfs-nginx-module

拷贝配置文件

cd /usr/local/fastdfs/fastdfs-nginx-module-1.22/src

cp mod_fastdfs.conf /etc/fdfs/

修改配置文件 mod_fastdfs.conf

tracker_server=192.168.152.139:22122

url_have_group_name = true

store_path0=/usr/local/fastdfs/fastdfs-storage/store

路径和storage中的store_path0路径必须相同

拷贝http服务需要的配置

复制FastDFS安装包中的两个配置文件(http.conf和mime.types)到/etc/fdfs目录中

/usr/local/fastdfs/fastdfs-6.06/conf

cp http.conf /etc/fdfs/

cp mime.types /etc/fdfs/

创建网络访问存储服务的软连接

在上传文件到FastDFS后,FastDFS会返回group1/M00/00/00/xxxxxxxxxx.xxx。其中group1是卷名,在mod_fastdfs.conf配置文件中已配置了url_have_group_name,以保证URL解析正确。

而其中的M00是FastDFS保存数据时使用的虚拟目录,需要将这个虚拟目录定位到真实数据目录上。

ln -s /usr/local/fastdfs/fastdfs-storage/store/data/ /usr/local/fastdfs/fastdfs-storage/store/data/M00

修改nginx配置文件

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

ngx_fastdfs_module;

}

访问地址即可打开或下载文件

http://192.168.152.139/group1/M00/00/00/wKiWC10xxc6AfHCKAAAib-i5DLU543_big.log

下载文件时指定文件名添加

正在ngx_fastdfs_module;前面加上面下这个配置

add_header Content-Disposition "attachment;filename=$arg_attname";

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。