分布式文件系统FastDFS 技术整理( 四 )


 

  • 查看是否启动成功
ps -ef | grep fdfs
  • 如下图表示启动成功

分布式文件系统FastDFS 技术整理

文章插图
 
 
  • 但是上面的启动会有坑儿,所以需要确认一把
# 查看日志文件是否有报ERRORcat /opt/fastdfs/storage/logs/storage.log
 
  • 若是发现日志中报的是如下信息
ERROR - file: storage_ip_changed_dealer.c, line: 180, connect to tracker server 服务器ip:22122 fail, errno: 110, error info: Connection timed out 即:链接超时
  • 这种情况一般都是22122端口没开放
# 开放22122端口firewall-cmd --zone=public --add-port=22122/tcp --permanent # 重启防火墙systemctl restart firewalld.service # 当然:要是云服务器的话,直接在web管理界面中添加规则( 开放22122端口 ) 即可
 
2.2.3、查看默认创建的文件数
  • 进入如下的目录
cd /opt/fastdfs/storage/files/data
分布式文件系统FastDFS 技术整理

文章插图
 
  • 这里面有256个文件夹,而每一个文件夹里面又有256个文件夹,即256 * 256个文件夹,总的文件夹数目为6万多个
    • 这256 * 256个文件夹的作用:解决的就是如下的问题
  •  
    • 而fastDFS就是使用那256 * 256个文件夹,把文件分别放入哪些文件夹中,这样就让搜索变得方便了

 
2.2.4、测试FastDFS2.2.4.1、测试上传文件
  • 要想进行测试的话,需要修改一个配置文件,因为这个配置文件中的配置信息是作者余庆的

分布式文件系统FastDFS 技术整理

文章插图
 
  • 要修改的内容如下:
# 注意:这个目录也要保证存在,不存在就是创建 mkdir -p /opt/fastdfs/clientbase_path=/opt/fastdfs/client tracker_server=自己服务器ip:22122
 
  • 搞一个用来测试上传的文件

分布式文件系统FastDFS 技术整理

文章插图
 
  • 执行文件上传命令
    • 可以使用如下命令看一下测试文件上传命令是怎么写的
      • fdfs_test

分布式文件系统FastDFS 技术整理

文章插图
 
  • 提取出测试命令语法
fdfs_test <config_file> <operation> operation: upload, download, getmeta, setmeta, delete and query_servers# <> 表示必填 # 因此:在测试中,文件上传的指令为:fdfs_test /etc/fdfs/client.conf upload /root/hello-fastdfs.txt
分布式文件系统FastDFS 技术整理

文章插图
 
  • 注意:防火墙的问题啊,要是报:connect to xxx.xx.xx.xx:23000 fail, errno: 113, error info: No route to host,这就是防火墙没开放23000端口,打开就可以了
# 开放23000端口firewall-cmd --zone=public --add-port=23000/tcp --permanent # 刷新防火墙systemctl restart firewalld.service
 
  • 上面成功之后有一堆信息,很重要
This is FastDFS client test program v5.11 Copyright (C) 2008, Happy Fish / YuQing FastDFS may be copied only under the terms of the GNU GeneralPublic License V3, which may be found in the FastDFS source kit. # 这个是说访问fastdfs的主页网址 - 目前还不能访问,需要后面弄Please visit the FastDFS Home Page http://www.csource.org/ for more detail. # 这是配置的client.conf中的信息[2022-06-01 10:17:07] DEBUG - base_path=/opt/fastdfs/client, connect_timeout=30, network_timeout=60, tracker_server_count=1, anti_steal_token=0, anti_steal_secret_key length=0, use_connection_pool=0, g_connection_pool_max_idle_time=3600s, use_storage_id=0, storage server id count: 0 tracker_query_storage_store_list_without_group:server 1. group_name=, ip_addr=162.14.66.60, port=23000 group_name=group1, ip_addr=162.14.66.60, port=23000storage_upload_by_filename# 重要的信息在这里group_name、remote_filename# group_name就是组名,在前面配置中见过它,就是说的文件系统 和 数据备份这二者的组合名# remote_filename 远程文件名 这是关键中的关键,告知你:文件保存到那里去了group_name=group1, remote_filename=M00/00/00/CgAAEGKWzCOACGE1AAACgUQE2TQ590.txtsource ip address: 10.0.0.16file timestamp=2022-06-01 10:17:07file size=641file crc32=1141168436# 下面这个URL地址很重要,就是去浏览器访问上传的这个文件资源的地址,但是:目前还不可以访问,因为没有配置Nginxexample file url: http://162.14.66.60/group1/M00/00/00/CgAAEGKWzCOACGE1AAACgUQE2TQ590.txtstorage_upload_slave_by_filenamegroup_name=group1, remote_filename=M00/00/00/CgAAEGKWzCOACGE1AAACgUQE2TQ590_big.txtsource ip address: 10.0.0.16file timestamp=2022-06-01 10:17:07file size=641file crc32=1141168436example file url: http://162.14.66.60/group1/M00/00/00/CgAAEGKWzCOACGE1AAACgUQE2TQ590_big.txt


推荐阅读