• FastDFS环境搭建和注意事项


    FastDFS

    FastDFS作为一个分布式文件系统,使用原理和环境搭建步骤网上有很多教程,https://www.cnblogs.com/chiangchou/p/fastdfs.html?tdsourcetag=s_pcqq_aiomsg该博客写得非常的完美,按照博客上的步骤进行搭建即可。(防火墙开发的命令建议根据实际系统进行配置。该博客中的防火墙和新版的centos 防火墙不一样,我这边使用的系统是CentOS Linux release 7.7.1908 ,防火墙不是iptables而是firewalld。)

    FastDFS文件上传操作原理

    1、storage定时向Tracker上传状态信息
    2、client发送上传连接请求到Tracker,Tracker查询步骤1返回可用的storage
    3、Tracker将可用的storage的ip和端口返回到client
    4、client发送file content(文件内容)和metadata(源数据)到storage
    5、storage接收到client发送的信息后,生成file ID 并将上传的内容写入磁盘,然后依次返回给Tracker和client
    6、将生成的file ID(group、存储目录、两级子目录、fileid、文件后缀名(由客户端指定,主要用于区分文件类型)拼接等信息)写入数据库

    FastDFS安装思路

    版本:V5.05 (网上安装教程一般都是V5.05的)
    libfastcommon(基础环境)+FastNDF(Tracker+Storage+Client)+Nginx(astdfs-nginx-module )
    1、确保linux系统上安装了GCC编译器
    2、下载编译安装FastDNS基础环境libfastcommon
    3、下载编译安装FastDNS
    4、修改FastDFS 服务脚本设置的默认路径。默认路径是/usr/local/bin,但实际命令安装在/usr/bin
    修改方法1)直接修改/etc/init.d/fdfs_tracker和fdfs_storaged文件中配置的路径地址。
    修改方法2)创建软连接ln-s,将 /usr/bin 下的restart.sh、restart.sh、fdfs_tracker、fdfs_storaged连接到/usr/bin下
    5、修改tracker.conf配置文件中的base_path 和 http.server_port。(http.server_port应该和nginx中配置的端口一致)
    6、将storage.conf.sample重命名storaged.conf 并配置文件中的base_path 、store_path0、tracker_server和http.server_port。tracker_server为服务器配置的域名或者ID地址+tracker端口号
    7、验证Tracker 和Storage 通信是否正常:/usr/bin/fdfs_monitor /etc/fdfs/storage.conf
    8、cd命令 client.conf.sample重命名为client.conf文件 ,修改client.conf文件中的base_path 和 tracker_server。
    9、上传图片进行测试。
    如果以上均测试没有问题,那么根据自己的实际需求,设置开机自启动和防火墙开发端口。 (tracker默认端口:22122 Storage默认端口:23000 )
    10、安装nginx 修改nginx.conf 将/group1/M00 映射到对应的路径下。
    11、开放防火墙端口后,通过域名+端口+文件上传返回的字符串信息进行访问操作。
    12、nginx 整合fastdfs-nginx-module模块

    FastDFS安装过程中常见的报错

    1、使用GCC编译时报错,建议更新或下载安装GCC
    2、配置文件错误,无法正确启动程序,建议检查conf文件中配置信息是否正确
    3、启动时端口占用,建议更换端口或者将已经占用该端口的进程强制结束掉
    4、Tracker和Storage 均能启动,但是无法通讯,建议检查:两边配置文件中的参数是否匹配,racker.conf文件中的tracker_server参数是否正确。
    5、上传文件成功并返回文件ID但是无法浏览器访问。建议检查防火墙是否关闭、已经开放了nginx端口、已经默认端口是否是80
    (通过域名直接访问,默认只能访问80端口,如果修改了端口号那么需要域名+端口才能访问)

     

     

     

     

     

     

  • 相关阅读:
    echarts中label上下两行展示
    vue中去掉地址栏中的#
    vue中登录超时跳转到登录页面设置拦截器
    在table中,tbody没有充满整个table
    vant中dialog的使用
    水位波纹动画兼容ie8
    在vue中使用XLSX导出表格
    elementUI 选择开始结束日期加限制
    element table 合并同类项并输出后台返回数据
    将后台返回的月份201810,201809转换成正常的9月10月
  • 原文地址:https://www.cnblogs.com/linxinmeng/p/11910501.html
Copyright © 2020-2023  润新知