当前位置: 首页 > news >正文

fastdfs环境搭建

安装包下载路径

  1. libfastcommon下载地址:https://github.com/happyfish100/libfastcommon/releases
  2. FastDFS下载地址:https://github.com/happyfish100/fastdfs/releases
  3. fastdfs-nginx-module下载地址:https://github.com/happyfish100/fastdfs-nginx-module/releases
  4. nginx下载地址:https://nginx.org/en/download.html
  5. fastdfs官网:https://github.com/happyfish100/fastdfs

fastdfs安装

  1. sudo yum -y update
  2. sudo yum install -y gcc gcc-c++
  3. sudo yum install -y libevent
  4. tar -zxvf libfastcommon-1.0.48.tar.gz
  5. sudo ./make.sh, sudo ./make.sh install
  6. tar -zxvf fastdfs-6.07.tar.gz
  7. sudo ./make.sh, sudo ./make.sh install
  8. 将conf目录中的文件复制到/etc/fdfs目录中 sudo cp ./conf/* /etc/fdfs/

配置tracker (192.168.99.101做tracker)

  1. 创建目录/home/Admin/fastdfs/tracker
  2. sudo vi /etc/fdfs/tracker.conf
  3. 修改base_path的值:base_path = /home/Admin/fastdfs/tracker
  4. 启动tracker: sudo /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
  5. 查看进程状态:ps -ef |grep tracker

配置storage(192.168.99.102做storage)

  1. 创建目录/home/Admin/fastdfs/storage
  2. sudo vi /etc/fdfs/storage.conf
  3. 修改参数
    base_path = /home/Admin/fastdfs/storage
    store_path0 = /usr/local/fastdfs/storage
    tracker_server = 192.168.99.101:22122
    
  4. 启动storage服务:sudo /usr/bin/fdfs_storaged /etc/fdfs/storage.conf

测试上传

  1. 修改storage服务器上的/etc/fdfs/client.conf文件
    base_path = /home/Admin/fastdfs/client
    tracker_server = 192.168.99.101:22122
    
  2. 将test.png文件上传到/home/Admin/test.png
  3. 进入/usr/bin/目录执行./fdfs_test /etc/fdfs/client.conf upload /home/Admin/test.png

安装fastdfs-nginx-module

  1. tar -zxvf fastdfs-nginx-module-1.22.tar.gz
  2. 进入src目录中,复制文件到fsds中: sudo cp mod_fastdfs.conf /etc/fdfs/
  3. 修改mod_fastdfs.conf文件:sudo vi /etc/fdfs/mod_fastdfs.conf
    # 修改 base_path 目录
    base_path=/home/Admin/fastdfs/tmp
    # 修改 store_path0 的路径和 storage.conf 配置文件中的 store_path0 路径一致
    store_path0= /home/Admin/fastdfs/storage
    # 修改 tracker_server 地址为 tracker 服务器地址
    tracker_server=192.168.99.101:22122
    # 修改一下 group_name
    group_name = group1
    # url_have_group_name,生成的访问url是否要包含group name,可以改成true
    url_have_group_name = true
    

修改fastdfs-nginx-module-1.22/src目录中的config文件

  1. sodu vi config
    ngx_module_incs="/usr/local/include" 修改为 ngx_module_incs="/usr/include"
    CORE_INCS="$CORE_INCS /usr/local/include" 修改为 CORE_INCS="$CORE_INCS /usr/include"
    

nginx安装

  1. sudo yum install -y pcre‐devel
  2. sudo yum install -y zlib-devel
  3. 创建目录:sudo mkdir -p /var/temp/nginx
  4. 进入nginx解压目录执行:sudo ./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=/home/Admin/fastdfs-nginx-module-1.22/src
  5. 安装nginx:sudo make & sudo make install

nginx 配置

  1. sudo vi /usr/local/nginx/conf/nginx.conf
    user root; # 这一行需要打开,否则启动会报权限错误
    error_log  logs/error.log;  # 打开日志,以及http节点下的log_format和access_log配置
    server {## 该端口为storage.conf中的http.server_port相同listen    8888;    server_name  localhost;location ~/group[0-9]/ {ngx_fastdfs_module;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}
    }
    
  2. 访问服务:http://192.168.99.102:8888/group1/M00/00/00/CmCyVGRI0X-ASpl8AAS1hl-FwsM154_big.png

防火墙开通

  1. 需要开通storage访问tracker服务22122端口策略
  2. 需要开通应用机器(测试环境)到tracker服务22122端口策略
  3. 需要开通应用机器(测试环境)到storage服务23000端口策略
  4. 历史文件迁移scp 需要开通旧storage到新storage的22端口策略

数据迁移

  1. tar -cvf data20230428.tar data
  2. 复制文件:scp data20230428.tar Admin@192.168.99.102:/home/Admin
  3. tar -xf data20230428.tar
  4. 删除解压目录中非数据文件的部分比如说进程id
  5. sudo cp -r * ~/fastdfs/storage/data/

配置fastdfs服务器开机自启动

  1. tracker开机启动:sudo vi /etc/rc.d/rc.local
    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
    
  2. storage开机启动: sudo vi /etc/rc.d/rc.local
    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
    
  3. nginx开机启动: sudo vi /etc/rc.d/rc.local
    /usr/local/nginx/sbin/nginx
    

其他

  1. 查看进程id:ps -aux|grep nginx
  2. 查看nginx的安装路径:ls -l /proc/进程号/exe
  3. 查看tracker服务:netstat -antp|grep fdfs

nginx 启停

  1. 启动:sudo /usr/local/nginx/sbin/nginx
  2. 停止:sudo /usr/local/nginx/sbin/nginx -s stop
  3. 重启:sudo /usr/local/nginx/sbin/nginx -s reload
  4. 日志所在目录: /usr/local/nginx/logs
http://www.lryc.cn/news/63676.html

相关文章:

  • 有什么牌子台灯性价比高?性价比最高的护眼台灯
  • 信息系统项目管理师 第9章 项目范围管理
  • 【Android入门到项目实战-- 8.2】—— 使用HTTP协议访问网络
  • Go官方指南(五)并发
  • VS快捷键大全 | 掌握这些快捷键,助你调试快人一步
  • 【刷题】203. 移除链表元素
  • C++11学习- CPU多核与多线程、并行与并发
  • docker登录harbor、K8s拉取镜像报http: server gave HTTP response to HTTPS client
  • Redis在linux下安装
  • 这里有你想知道的那些卖家友好型跨境电商平台!
  • 架构中如何建设共识
  • 力扣(LeetCode)1172. 餐盘栈(C++)
  • 详细说一下DotNet Core 、DotNet5、DotNet6和DotNet7的简介和区别
  • 基于MBD的控制系统建模与仿真软件工具集
  • QML动画分组(Grouped Animations)
  • 探索未来的数字人生:全景VR数字人
  • 计算机基础 -- 硬件篇
  • 【高危】Apache Superset <2.1.0 认证绕过漏洞(POC)(CVE-2023-27524)
  • vue3如果用setup写如何获取类似于vue2中的this
  • 关于 API接口的一些知识分享
  • 【ROS仿真实战】Gazebo仿真平台介绍及安装方法(一)
  • Lychee图床 - 本地配置属于自己的相册管理系统并远程访问
  • VP记录:Codeforces Round 865 (Div. 2) A~C
  • 智能学习 | MATLAB实现PSO-SVM多输入单输出回归预测(粒子群算法优化支持向量机)
  • Java后端:html转pdf实战笔记
  • 设计模式-适配器模式
  • 一款支持全文检索、工作流审批、知识图谱的企事业知识库
  • SAP MRP例外信息解释
  • 广义的S变换
  • python异常及其捕获