首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >01.分布式文件系统FastDFS

01.分布式文件系统FastDFS

作者头像
全栈程序员站长
发布2022-06-30 10:56:50
发布2022-06-30 10:56:50
29200
代码可运行
举报
运行总次数:0
代码可运行

文章目录

相关的安装已上传到我的资源库,后序再更新整合nginx,和fdfs_test测试。 https://download.csdn.net/download/zhongxu_yuan/12444428

分布式文件系统FastDFS

一、安装

1.安装相关的依赖

  • yum install gcc-c++ -y
  • yum -y install zlib zlib-devel pcre pcre-devel gcc gcc-c++ openssl openssl-devel libevent libevent-devel perl unzip net-tools wget
  • yum -y install libevent
  • yum install perl*

2.安装libfastcommon

  • 上传压缩包文件libfastcommonV1.0.7.tar.gz 到 /usr/local目录下,并解压
    • tar -zxvf libfastcommonV1.0.7.tar.gz
  • 进入到解压后的文件夹中
  • 进行编译 ./make.sh
  • 执行安装./make.sh install
  • 功能文件目录
代码语言:javascript
代码运行次数:0
运行
复制
Opt/fastdfs 数据存储目录
Usr/local/fdfs 启动文件目录
Etc/fdfs 配置文件目录
Usr/bin/fdfs_trackerd 启动配置
Etc/init.d/fdfs_trackerd 启动服务脚本
  • 注意
代码语言:javascript
代码运行次数:0
运行
复制
libfastcommon安装好后会自动将库文件拷贝至/usr/lib64下,由于FastDFS程序引用usr/lib目录所以需要将/usr/lib64下的库文件拷贝至/usr/lib下。
# cp /usr/lib64/libfastcommon.so /usr/lib/

3.安装tracker

  • 1 上传资料FastDFS_v5.05.tar.gz到 /usr/local 目录下
  • 解压编译安装
    • tar -zxvf FastDFS_v5.05.tar.gz
    • 进入FastDFS:cd FastDFS
    • ./make.sh
    • ./make.sh install
    • 安装成功之后,将安装目录下的conf下的文件拷贝到/etc/fdfs/下
    • cd conf
    • cp * /etc/fdfs/
  • 修改配置文件
    • 在opt目录下创建fastdfs:mkdir /opt/fastdfs
  • vim /etc/fdfs/tracker.conf

4.设置启动项

  • 启动服务
    • mkdir /usr/local/fdfs
    • 拷贝安装目录下stop.sh 和restart.sh 到/usr/local/fdfs/
      • cp restart.sh /usr/local/fdfs/
      • cp stop.sh /usr/local/fdfs/
  • 修改启动脚本
    • vim /etc/init.d/fdfs_trackerd
  • 注册服务
    • chkconfig –add fdfs_trackerd

5.storage配置

  • vim /etc/fdfs/storage.conf

tracker_server 和storaged安装到同一台机器上的。我的虚拟机IP :192.168.1.7.

  • 创建fdfs_storage文件夹: mkdir /opt/fastdfs/fdfs_storage
  • 设置服务
    • vim /etc/init.d/fdfs_storaged
  • 注册服务 : chkconfig – -add fdfs_storaged
  • 启动服务: service fdfs_storaged start

我在启动的时候,第一次启动失败,根据提示来一步一步,再次启动居然成功了。 启动:systemctl start fdfs_storaged 查看状态:systemctl status fdfs_storaged 停止:systemctl stop fdfs_storaged

  • 启动trackerd:service fdfs_trackerd start

二、上传图片测试

FastDFS安装成功可通过/usr/bin/fdfs_test测试上传、下载等操作

修改/etc/fdfs/client.conf

[root@localhost ~]# vim /etc/fdfs/client.conf base_path=/opt/fastdfs tracker_server=192.168.3.159:22122

把root下的文件的hell.txt上传到FastDFS中:

/usr/bin/fdfs_test /etc/fdfs/client.conf upload /root/hell.txt

对应的上传路径:

/opt/fastdfs/fdfs_storage/data/00/00/wKgDn17HS5-AV6PgAAAADdQ74zc982_big.txt

三、FastDFS整合Nginx

1.安装fastdfs-nginx插件

上传fastdfs-nginx-module_v1.16.tar.gz上传到 /usr/local,并解压 tar -zxvf fastdfs-nginx-module_v1.16.tar.gz 编辑配置文件:修改config文件将/usr/local/路径改为/usr/

(这里需要修改三个路径)

将FastDFS-nginx-module/src下的mod_fastdfs.conf拷贝至/etc/fdfs/下 [root@localhost src]# cp mod_fastdfs.conf /etc/fdfs/ 并修改mod_fastdfs.conf的内容:

vi /etc/fdfs/mod_fastdfs.conf

继续修改 url中包含group名称

修改 #指定文件存储路径

将libfdfsclient.so拷贝至/usr/lib下 [root@localhost src]# cp /usr/lib64/libfdfsclient.so /usr/lib/

2.安装nginx

  • 创建nginx/client目录:[root@localhost src]# mkdir -p /var/temp/nginx/client
  • 安装环境:
    • 安装pcre库:yum -y install pcre-devel
    • 安装zlib库: yum install -y zlib-devel
  • 上传nginix压缩包到/usr/local目录下并解压: tar -zxvf nginx-1.12.2.tar.gz
  • 进入解压目录:cd nginx-1.12.2
代码语言:javascript
代码运行次数:0
运行
复制
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/usr/local/fastdfs-nginx-module/src
  • 编译安装:
    • [root@localhost nginx-1.12.2]# make
    • [root@localhost nginx-1.12.2]# make install
  • 编辑nginx.config :vim /usr/local/nginx/conf/nginx.conf
  • 启动nginx : /usr/local/nginx/sbin/nginx
  • 关闭nginx: ./nginx -s quit
  • 设置开机启动: vim /etc/rc.d/rc.local
  • 关闭防火墙:
    • 停止firewall: systemctl stop firewalld.service
    • 禁止firewall开机启动:systemctl disable firewalld.service
    • 查看默认防火墙状态: firewall-cmd –state
  • 重启网络服务:service network restart
  • 重启虚拟机:shutdown -r now
  • 关机:shutdown -h now
  • 查看fdfs_storaged fdfs_trackerd状态
  • 测试:

/usr/bin/fdfs_test /etc/fdfs/client.conf upload /root/logo.jpg

http://192.168.3.159/group1/M00/00/00/wKgDn17HZAGASkMLAAUGOx3-Awg741_big.jpg

启动nginx的一个小插曲:

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/100751.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年7月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 分布式文件系统FastDFS
    • 一、安装
      • 1.安装相关的依赖
      • 2.安装libfastcommon
      • 3.安装tracker
      • 4.设置启动项
      • 5.storage配置
    • 二、上传图片测试
    • 三、FastDFS整合Nginx
      • 1.安装fastdfs-nginx插件
      • 2.安装nginx
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档