springboot推荐算法分布式⽂件系统fastDfs集搭建及springboot整合fastdfs客户端*服务器规划
跟踪服务器1【主机】(Tracker Server):10.10.77.165
存储服务器2(Storage Server):10.10.77.166
存储服务器3(Storage Server):10.10.77.167
数据存储⽬录
应⽤安装⽬录
安装包/usr/local/src
Tracker_data/fastdfs/tracker
Storage_data/fastdfs/storage
nginx/opt/nginx
安装包:
FastDFS_v5.:FastDFS源码
libfastcommon-master.zip:(从 FastDFS 和 FastDHT 中提取出来的公共 C 函数库)
fastdfs-nginx-module-master.zip:storage节点http服务nginx模块
nginx-1.10.:Nginx安装包
下载完成后,将压缩包解压到/usr/local/src⽬录下
正式开始前需要确认gcc、g++开发库已经预先安装好,检查gcc是否安装,gcc --version
检查g++是否安装,g++ --version。
如果是离线安装,还需要以下包,,下⾯的三个包主要是编译nginx所需要的包:
zlib-1.2.
pcre-8.
openssl-1.1.
将包上传到服务器后,依次安装,安装命令如下:
pcre安装
执⾏如下命令:
tar -zxvf pcre-8.
cd pcre-8.42/
./configure
make
make install
zlib安装
执⾏如下命令:
tar -zxvf zlib-1.2.
cd zlib-1.2.11/
./configure
make
make install
openssl安装
执⾏如下命令:
tar -zxvf openssl-1.1.
cd openssl-1.1.0h/
./config
make
make install
正式开始:
**
步骤⼀:所有tracker和storage节点都执⾏如下操作** 1、安装所需的依赖包
yum install make cmake gcc gcc-c++
2、安装libfatscommon依次执⾏下列命令
cd /usr/local/src
unzip libfastcommon-master.zip
cd libfastcommon-master
./make.sh
./make.sh install
3、安装FastDFS 依次执⾏下列命令
cd /usr/local/src
tar -xzvf FastDFS_v5.
cd FastDFS
./make.sh
./make.sh install
采⽤默认安装⽅式,相应的⽂件与⽬录检查如下:
1> 服务脚本:
/etc/init.d/fdfs_storaged
/etc/init.d/fdfs_trackerd
2> 配置⽂件(⽰例配置⽂件):
ll /etc/fdfs/
出现下列内容
-rw-r–r-- 1 root root 1461 1⽉ 4 14:f.sample
-rw-r–r-- 1 root root 7927 1⽉ 4 14:f.sample
-rw-r–r-- 1 root root 7200 1⽉ 4 14:f.sample
3> 命令⾏⼯具(/usr/bin⽬录下)
ll /usr/bin/fdfs_*
出现下列内容
-rwxr-xr-x 1 root root 260584 1⽉ 4 14:34 fdfs_appender_test
-rwxr-xr-x 1 root root 260281 1⽉ 4 14:34 fdfs_appender_test1 -rwxr-xr-x 1 root root 250625 1⽉ 4 14:34 fdfs_append_file
-rwxr-xr-x 1 root root 250045 1⽉ 4 14:34 fdfs_crc32
-rwxr-xr-x 1 root root 250708 1⽉ 4 14:34 fdfs_delete_file
-rwxr-xr-x 1 root root 251515 1⽉ 4 14:34 fdfs_download_file
-rwxr-xr-x 1 root root 251273 1⽉ 4 14:34 fdfs_file_info
-rwxr-xr-x 1 root root 266401 1⽉ 4 14:34 fdfs_monitor
-rwxr-xr-x 1 root root 873233 1⽉ 4 14:34 fdfs_storaged
-rwxr-xr-x 1 root root 266952 1⽉ 4 14:34 fdfs_test
-rwxr-xr-x 1 root root 266153 1⽉ 4 14:34 fdfs_test1
-rwxr-xr-x 1 root root 371336 1⽉ 4 14:34 fdfs_trackerd
-rwxr-xr-x 1 root root 251651 1⽉ 4 14:34 fdfs_upload_appender -rwxr-xr-x 1 root root 252781 1⽉ 4 14:34 fdfs_upload_file
**
步骤⼆:配置tracker服务器
**
1、复制tracker样例配置⽂件,并重命名
cp /etc/f.sample /etc/f
2、修改tracker配置⽂件
vim /etc/f
主要修改以下内容
disabled=false              # 启⽤配置⽂件
port=22122                  # tracker服务器端⼝(默认22122)
base_path=/fastdfs/tracker  # 存储⽇志和数据的根⽬录
store_group=group1
其它参数保留默认配置,具体配置解释可参考官⽅⽂档说明:bbs.chinaunix/thread-1941456-1-1.html 3、创建base_path指定的⽬录
mkdir -p /fastdfs/tracker
4、防⽕墙中打开tracker服务器端⼝( 默认为 22122)
防⽕墙如果是iptables
vi /etc/sysconfig/iptables
添加如下端⼝⾏:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22122 -j ACCEPT
重启防⽕墙
service iptables restart
防⽕墙⼈如果是firewall
新开端⼝
firewall-cmd --zone=public --add-port=端⼝/tcp --permanent
重启
firewall-cmd --reload
5、启动tracker服务器
/etc/init.d/fdfs_trackerd start
初次启动,会在/fastdfs/tracker⽬录下⽣成logs、data两个⽬录。
drwxr-xr-x 2 root root 4096 1⽉ 4 15:00 data
drwxr-xr-x 2 root root 4096 1⽉ 4 14:38 logs
检查FastDFS Tracker Server是否启动成功:
ps -ef | grep fdfs_trackerd
tracker启动与停⽌
停⽌:
killall fdfs_trackerd
启动:
/etc/init.d/fdfs_trackerd start
或者
/usr/bin/fdfs_trackerd /etc/f(确定⼀下/usr/local/bin还是/usr/bin)
重启:
/usr/bin/fdfs_trackerd /etc/f restart
三、配置storage服务器
1、复制storage样例配置⽂件,并重命名
cp /etc/f.sample /etc/f
2、编辑配置⽂件
vi /etc/f
修改的内容如下:
disabled=false                      # 启⽤配置⽂件
port=23000                          # storage服务端⼝
base_path=/fastdfs/storage          # 数据和⽇志⽂件存储根⽬录
store_path_count=3
store_path0=/fastdfs/storage0
store_path1=/fastdfs/storage1
store_path2=/fastdfs/storage2      # 存储⽬录
tracker_server=10.10.77.165:22122  # tracker服务器IP和端⼝
http.server_port=8888              # http访问⽂件的端⼝
3、创建基础数据⽬录
mkdir -p /fastdfs/storage    #这个存储⽬录只是为了让Storage启动的时候存放信息,storage0、storage1、storage2可以分类存放不同种类的数据类型 mkdir -p /fastdfs/storage0
mkdir -p /fastdfs/storage1
mkdir -p /fastdfs/storage2
4、防⽕墙中打开storage服务器端⼝( 默认为 23000) 如果是firerwall上⾯有命令,记得修改端⼝
vi /etc/sysconfig/iptables
#添加如下端⼝⾏:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 23000 -j ACCEPT
重启防⽕墙
service iptables restart
5、启动storage服务器
/etc/init.d/fdfs_storaged start
初次启动,会在/fastdfs/storage⽬录下⽣成logs、data两个⽬录。
drwxr-xr-x 259 root root 4096 Mar 31 06:22 data
drwxr-xr-x 2 root root 4096 Mar 31 06:22 logs
检查FastDFS Tracker Server是否启动成功:
ps -ef | grep fdfs_storaged
会出现如下内容
root 1336 1 3 06:22 ? 00:00:01 /usr/bin/fdfs_storaged /etc/f
root 1347 369 0 06:23 pts/0 00:00:00 grep fdfs_storaged
**
storage的启动与 停⽌
启动:
/
etc/init.d/fdfs_storaged start
或者
/usr/bin/fdfs_storaged /etc/f (确定⼀下是/usr/local/bin还是/usr/local/bin,楼主调试的时候killall fdfs_storaged,发现上⾯那个启动命令启动不了storage,改⽤这个命令)
停⽌:
killall fdfs_storaged
四、⽂件上传测试(ip01)
**
1、修改Tracker服务器客户端配置⽂件
cp /etc/f.sample /etc/f
vim /etc/f
修改以下配置,其它保持默认
base_path=/fastdfs/tracker
tracker_server=10.10.77.165:22122  # tracker服务器IP和端⼝
2、执⾏⽂件上传命令
#/usr/local/src/test.png 是需要上传⽂件路径
/usr/bin/fdfs_upload_file /etc/f /usr/local/src/test.png
返回⽂件ID号:group1/M00/00/00/tlxkwlhttsGAU2ZXAAC07quU0oE095.png
(能返回以上⽂件ID,说明⽂件已经上传成功)
或者 执⾏下列命令:
/usr/bin/fdfs_test /etc/f f
五、在所有storage节点安装fastdfs-nginx-module
1、fastdfs-nginx-module 作⽤说明
FastDFS 通过 Tracker 服务器,将⽂件放在 Storage 服务器存储,但是同组存储服务器之间需要进⼊⽂件复制,有同步延迟的问题。假设Tracker 服务器将⽂件上传到了 ip01,上传成功后⽂件 ID 已经返回给客户端。此时 FastDFS 存储集机制会将这个⽂件同步到同组存储ip02,在⽂件还没有复制完成的情况下,客户端如果⽤这个⽂件 ID 在 ip02 上取⽂件,就会出现⽂件⽆法访问的错误。⽽ fastdfs-nginx-module 可以重定向⽂件连接到源服务器取⽂件,避免客户端由于复制延迟导致的⽂件⽆法访问错误。(解压后的 fastdfs-nginx-module 在nginx 安装时使⽤)
2、解压 fastdfs-nginx-module_v1.
cd /usr/local/src
tar -xzvf fastdfs-nginx-module_v1.
3、修改 fastdfs-nginx-module 的 config 配置⽂件
cd fastdfs-nginx-module/src
vim config
CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。