FastDFS - Linux 安装(Tracker、Storage、配合Nginx实现对外发)
目录
准备安装包
准备环境
Tracker节点配置
Storage节点配置
配置client测试FastDFS服务
对外发布
测试外发
注意:
准备安装包
FastDFS官网下载
fastdfs组合包.7z下载
准备环境
- 准备2个服务器,一个调度节点,一个存储节点,2个服务器做同样的准备
- 上传压缩包,在/usr/local文件夹下创建fastdfs文件夹
- mkdir /usr/local/fastdfs -p
- cd /usr/local/fastdfs
yum install -y gcc gcc-c++ perl perl-devel openssl openssl-devel pcre pcre-devel zlib zlib-devel libevent libevent-devel
- 解压文件,先安装libfastcommon
tar -zxvf /root/libfastcommon-1.0.42.tar.gzcd ./libfastcommon-1.0.42/./make.sh./make.sh installcd ../
- 解压文件,在安装fastdfs
tar -zxvf /root/fastdfs-6.04.tar.gzcd ./fastdfs-6.04/./make.sh./make.sh install
- 注意这些路径,都是很重要的信息
- 将fastdfs中所有配置文件复制到/etc/fdfs/路径下,便于管理,到此,2个环境就准备好了
cd ./conf/ cp * /etc/fdfs/ cd /etc/fdfs/
Tracker节点配置
- bind_addr:访问配置,不配置表示没有限制,任何请求都可以访问
- port:端口号
- base_path:tracker工作目录
cd /etc/fdfs vim tracker.conf
- 在配置文件一般只更改这里即可
- 创建tracker工作目录并启动
mkdir /usr/local/fastdfs/tracker -p/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
- 查看tracker启动进程
Storage节点配置
- group_name:组名
- base_path:工作目录
- store_path0:存储目录
- tracker_server:tracker的地址和端口号,用于心跳监听
- http.server_port:结合nginx的一个对外服务端口号
cd /etc/fdfs vim storage.conf
一般更改这几个配置就可以了
# 修改storage的工作空间
base_path=/usr/local/fastdfs/storage# 修改storage的存储空间
store_path0=/usr/local/fastdfs/storage# 修改tracker的地址和端口号,用于心跳
tracker_server=192.168.213.159:22122
- 创建工作目录并启动
mkdir /usr/local/fastdfs/storage -p/usr/bin/fdfs_storaged /etc/fdfs/storage.conf
- 查看storage启动进程
配置client测试FastDFS服务
- 在storage节点配置
- base_path:client工作目录
- tracker_server:tracker节点
创建工作目录并启动
mkdir /usr/local/fastdfs/client -p/usr/bin/fdfs_test /etc/fdfs/client.conf upload ./test.jpg
对外发布
- 准备fastdfs-nginx-module模块
cd /usr/local/fastdfs/tar -zxvf /root/fastdfs-nginx-module-1.22.tar.gzcd fastdfs-nginx-module-1.22/src/cp mod_fastdfs.conf /etc/fdfs/cd /etc/fdfs/ls
- 编辑配置文件,修改编译路径
- 查看路径发现/usr/local/include是空的,断然不是编译路径
- 所以将编译路径修改为/usr/include
cd /usr/local/fastdfs/fastdfs-nginx-module-1.22/srcls /usr/local/includels /usr/includevim config
- 编辑fastdfs-nginx-module模块配置文件(mod_fastdfs.conf)
- base_path:工作路径
- tracker_server:tracker节点路径
- group_name:组名,一定要与store节点配置的组名一致
- url_have_group_nam:是否结合组名,外部发布,这个需要结合,true/false
- store_path0:store节点的存储空间地址,一定要根据实际情况与store节点配置保持一致
base_path=/usr/local/fastdfs/tmptracker_server=192.168.213.159:22122group_name=group1url_have_group_name = truestore_path0=/usr/local/fastdfs/storage
- 工作路径补全
- mkdir -p /usr/local/fastdfs/tmp
- 安装nginx
- 注意在配置nginx时加上fastdfs-nginx-module模块配置
- 其中 --add-module=/usr/local/fastdfs/fastdfs-nginx-module-1.22/src部分要与结合实际路径
- 注意在配置nginx时加上fastdfs-nginx-module模块配置
./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 --conf-path=/usr/local/nginx/nginx.conf --add-module=/usr/local/fastdfs/fastdfs-nginx-module-1.22/src
- nginx核心配置文件
server {listen 8888;server_name localhost;location /group1/M00 {ngx_fastdfs_module;}}
- 存在部分nginx报错,nginx解决
- 缺失路径,创建对应的路径即可
- mkdir /var/temp/nginx/client -p
- 缺失路径,创建对应的路径即可
测试外发
注意:
FastDFS要求版本匹配很高,经常出现编译不通过,无法安装,如图
建议匹配好组建版本再进行安装调试,省去不必要的麻烦