从虚拟机到FASTDFS安装手册

首先是需求需要安装一个fdfs服务,在网络上找了好多教程,都不太对。
有的还在用最老的版本去安装部署,本篇文章主要是记录我的安装过程,最重要的是过程中的一些思想。
下面直接开始。

虚拟机安装

  • 创建新的虚拟机
  • 选择自定义
  • 稍后安装操作系统
  • 选择Linux 64位 --centos7
  • 选择CPU 和内存,选择安装位置
  • 使用桥接网络
  • 编辑虚拟机,选择CD -- ISO镜像
  • 确定 -- 开启虚拟机

关键点

image.png

image.png

最小选择安装的内容比较少,各种编译工具可能都没有,还没有图形化界面。 所以这里选择 开发及生成工作站 ,安装的软件比较全面。 等待安装完成。。。重启

  • 重启完成接收许可证,设置网络连接

image.png

image.png
我这边需要配置IP,如果是自动获取就可以不配置

说明:主机IP是192.168.1.108,因为想在安装完成FDFS后在同一个网段内直接使用,所以选择桥接

FDFS内容获取

github地址:github.com/happyfish10… 有3个需要下载,fastdfs、libfastcommon、fastdfs-nginx-module

进入项目里面,点 tag 选择版本

image.png

鼠标右键复制链接地址,我这里选择的是: github.com/happyfish10…

github.com/happyfish10…

github.com/happyfish10…

nginx下载页面 nginx.org/en/download… 在 nginx 版本上 右键 复制链接地址,我这里选择的是1.22.0 版本 nginx.org/download/ng…

思想:各种软件工具都会有不同的版本,要学会从官网找资源,渠道要正规

FDFS安装

进入到centos 命令行,使用wget 将资源下载下来,也可以下载完成后上传到centos中,我这里放到了 /usr/local 下。

注意关闭防火墙,否则可能远程不上去

查看防火墙状态: systemctl status firewalld

关闭防火墙:systemctl stop firewalld

也可以使用 disable 禁用

思想:要学会理解命令,更要学会查看命令的帮助文档,刚开始可能看不懂,多看一些就理解了,思维方式有了就能看懂了,而且官方文档是最标准的

image.png

然后是 tar 解压这些内容

然后在 fdfs 的3个目录里可以找到 INSTALL 这个文件,3个INSTALL文件就是 3 个帮助文档了。

思想:望文生义,自己工作的时候也应该有这个习惯

安装libfastcommon

./make.sh clean && ./make.sh && ./make.sh install

image.png

报错提示没有gcc,解决: yum install gcc -y

image.png

安装成功

安装fastfds

./make.sh clean && ./make.sh && ./make.sh install

image.png

然后按照INSTALL 步骤操作

FDFS 文件目录我这里使用的是代码中的路径 /home/yuqing/fastdfs 没有做修改

需要创建目录 mkdir -p /home/yuqing/fastdfs

各配置文件需要看一下,修改tracker IP地址

启动fdfs

需要启动 storege 和 tracker,在启动之前看一下有哪些进程和服务

image.png ps -ef| grep tracker ps -ef| grep storage

service fdfs_storaged status service fdfs_trackerd status

也可以用 systemctl 查看

systemctl status fdfs_storaged systemctl status fdfs_trackerd

然后直接尝试启动服务

image.png

image.png

用service 或 systemctl 启动,命令行不会跳到完成状态,ctrl+c 结束之后,查看进程已经启动了

这个不知道咋回事

另外 也可以直接用 /usr/bin/fdfs* /etc/fdfs/*.conf command 形式启动

思想:理解命令,不要死记硬背

此时 可以在浏览器上访问 http://192.168.1.109:22122/

image.png

虽然没有内容,但是我们可以通过访问响应时间 知道已经启动成功,不然浏览器会一致转圈圈的

验证的脚本: /usr/bin/fdfs_monitor /etc/fdfs/client.conf

我们还可以通过上传一个文件来验证

通过命令可以看到 /usr/bin 下面有这些fdfs脚本

image.png

我们使用 upload file

echo hello >a.txt 将hello 写入到a.txt 文件

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf a.txt

image.png 文件已上传成功,输出的是路径

安装nginx模块

下面我们将安装 nginx 和 nginx module ,去访问a.txt

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

指定了nginx 安装路径和 fdfs nginx 模块

image.png

我们可以看到1)增加了fastdfs-nginx-module,2)PCRE not found ,3)error ,4)需要install pcre

所以 yum install pcre-devel -y 然后再次执行

image.png

image.png

又报错 需要安装 zlib yum -y install zlib-devel

image.png

image.png

然后 make && make install

image.png

成功!

配置nginx

我这边是直接修改了 nginx.conf 中8000的配置,把注释放开就行

image.png

启动nginx ./nginx

image.png

缺少mod_fastdfs.conf文件,在 fastdfs 中找找吧

嗯、是配置nginx 用到的,所以应该在 nginx module 里找,在src 里面找到

cp mod_fastdfs.conf /etc/fdfs/ vim /etc/fdfs/mod_fastdfs.conf 找到{tracker_server=tracker:22122} 修改为{tracker_server=192.168.1.109:22122}

重启nginx 之后

image.png

访问http://192.168.1.109:8000/

image.png

a.txt 上传时 路径 group1/M00/00/00/wKgBbWLolZqAFXMWAAAABjY6MCA288.txt

访问 http://192.168.1.109:8000/M00/00/00/wKgBbWLolZqAFXMWAAAABjY6MCA288.txt

image.png

成功显示txt 内容。

如果路径中包含 group1 ,可以在nginx 配置中修改一下 location

fastdfs太麻烦了,用minio吧

猜你喜欢

转载自juejin.im/post/7127120569845153800