【FastDFS】小伙伴们说在 CentOS 8 服务器上搭建 FastDFS 环境总报错?
写在前面
在【冰河技术】微信公众号的【分布式存储】专题中,我们分别搭建了单节点FastDFS环境和高可用FastDFS集群环境。但是,之前的环境都是基于CentOS 6.8服务器进行搭建的。很多小伙伴反馈说:自己在CentOS 8服务器上,按照我写的文章搭建FastDFS环境时,会失败!看到小伙伴们的这些问题,我今天就给大家分享下如何在CentOS 8服务器上搭建FastDFS环境。
什么是FastDFS?
这里,我就摘录下百度百科上对于FastDFS的描述。
FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。
文件上传下载流程
这里,我们用两张图分别来说明下FastDFS文件上传和下载的过程。这样,小伙伴们也能一目了然的看到FastDFS的执行流程。
文件上传
文件下载
了解了FastDFS的这些基本知识之后。接下来,我们就一起来看看如何在CentOS 8服务器上搭建FastDFS环境。
服务器版本
在正式开始搭建FastDFS环境之前,我们先确定下服务器的版本,这里我使用的CentOS服务器的内核版本为:release 8.1.1911,如下所示。
下载FastDFS
这里,我们使用的FastDFS版本为6.0.6,官方的地址为:https://github.com/happyfish100
在FastDFS 6.0.6中,有三个子模块,如下所示。
我们可以在CentOS 8服务器的命令行执行如下命令来下载这些模块。
下载Nginx
Nginx的官方网址为:http://nginx.org/
我们可以在CentOS 8服务器命令行输入如下命令下载Nginx。
安装FastDFS依赖
安装libfastcommon
解压libfastcommon的压缩包
编译并安装
测试安装结果
编译安装fastdfs
解压FastDFS
安装FastDFS
查看FastDFS的安装情况
修改FastDFS配置文件
启动FastDFS
启动tracker服务
(1)创建tracker服务所需的目录
(2)配置tracker服务
修改 tracker.conf 文件。
只修改base_path一项的值为我们在上面所创建的目录即可。
(3)启动 tracker 服务
(4)检查tracker服务启动是否成功
能看到 fdfs_trackerd,表示tracker服务启动成功
(5)检查tracker服务是否已绑定端口 22122
说明: 22122端口是在/etc/fdfs/tracker.conf中定义的。如下所示:
启动storage服务
(1)创建storage服务所需的目录
(2)配置storage服务
编辑storage的配置文件:
各配置项包括:
配置basepath为上面所创建的storage目录,其中,storepath 为存储所在的目录,可以设置多个,注意从0开始。
配置tracker_server的ip和端口。
指定http服务的端口
(3)启动storage服务
(4)检查storage服务启动是否成功?
说明:看到fdfs_storaged,表示storage服务启动成功
(5)检查storage服务是否已绑定到端口:23000?
说明:23000 端口是在配置文件 /etc/fdfs/storage.conf中定义的,如下所示。
配置客户端文件
(1)配置客户端要使用的client.conf
以下两项配置用到的tracker目录和服务器地址端口
(2)从客户端的配置可以看到:客户端只需要了解tracker_server的信息,Tracker server作用也正是负载均衡和调度
(3)Storage server作用是文件存储,客户端上传的文件最终存储在 Storage 服务器上。
安装nginx及fastdfs-nginx-module
解压nginx:
解压fastdfs-nginx-module
修改config文件
修改config文件,把/usr/local 替换成 /usr
配置Nginx
Nginx配置,添加fastdfs-nginx-module和httpstubstatus_module 模块
编译安装Nginx
检查安装是否成功?
验证Nginx配置
配置fastdfs-nginx-module
复制配置文件
编辑配置文件
配置以下几项
复制Web配置文件
复制另两个web访问用到配置文件到fdfs配置目录下:
配置nginx
编辑nginx的配置文件:
在server listen 80 的这个server配置下面,
增加一个location
启动nginx
启动Nginx
检查nginx是否已成功启动
测试图片上传
(1)命令行上传图片
注意fdfs所返回的地址,我们需要使用这个地址进行访问
(2)打开浏览器:访问这个地址
可以看到图片
其中,192.168.175.100是拼接的本地服务器的ip
我门可以通过命令行来查看图片在服务器上的真实存储路径。
可见/group1/M00这两个目录是由fdfs所管理生成的目录,它们分别代表fdfs生成的组名和磁盘
FastDFS其他命令
查看fdfs的版本
查看fdfs的运行状态
重磅福利
微信搜一搜【冰河技术】微信公众号,关注这个有深度的程序员,每天阅读超硬核技术干货,公众号内回复【PDF】有我准备的一线大厂面试资料和我原创的超硬核PDF技术文档,以及我为大家精心准备的多套简历模板(不断更新中),希望大家都能找到心仪的工作,学习是一条时而郁郁寡欢,时而开怀大笑的路,加油。如果你通过努力成功进入到了心仪的公司,一定不要懈怠放松,职场成长和新技术学习一样,不进则退。如果有幸我们江湖再见!
另外,我开源的各个PDF,后续我都会持续更新和维护,感谢大家长期以来对冰河的支持!!
写在最后
如果你觉得冰河写的还不错,请微信搜索并关注「 冰河技术 」微信公众号,跟冰河学习高并发、分布式、微服务、大数据、互联网和云原生技术,「 冰河技术 」微信公众号更新了大量技术专题,每一篇技术文章干货满满!不少读者已经通过阅读「 冰河技术 」微信公众号文章,吊打面试官,成功跳槽到大厂;也有不少读者实现了技术上的飞跃,成为公司的技术骨干!如果你也想像他们一样提升自己的能力,实现技术能力的飞跃,进大厂,升职加薪,那就关注「 冰河技术 」微信公众号吧,每天更新超硬核技术干货,让你对如何提升技术能力不再迷茫!
版权声明: 本文为 InfoQ 作者【冰河】的原创文章。
原文链接:【http://xie.infoq.cn/article/f9584bc8c3640aefd8eec4721】。文章转载请联系作者。
评论