FastDFS单节点安装教程。
安装参考网址:https://www.jianshu.com/p/4c99eab7aa7c
1.准备安装包
安装包资源下载地址:https://download.csdn.net/download/ACpartner/12719141
将文件上传至服务器中 路径 /opt
2.安装流程
1 安装依赖包 gcc
2 libfatscommon
3 安装FastDFS
4.配置Tracker
5.配置Storage
3.安装GCC
如果服务器没有gcc编译器则需要先安装gcc
$yum -y install gcc-c++
4.安装libfatscommon
1 解压到当前目录
$unzip libfastcommon-1.0.36.zip
cdlibfastcommon-1.0.36/
2 编译并安装
./make.sh ./make.sh install
#有的服务器的命令可能是下面这种:
#./make
#./make install
3.设置软连接
参考原因:
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so #ln -sf /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so 如果上面命令出现 file exist错误,则用这条命令 -sf ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so
5.安装fastDFS
1.解压
cd /opt/ unzip -n fastdfs-5.11.zip -d /usr/local/src/
2.编译安装
cd /usr/local/src/ cd fastdfs-5.11/ ./make.sh ./make.sh install
3.复制配置文件
cd /etc/fdfs/ cp client.conf.sample client.conf cp storage.conf.sample storage.conf cp storage_ids.conf.sample storage_ids.conf cp tracker.conf.sample tracker.conf
6.配置Tracker
1.创建tracker服务器文件路径(存储数据和日志文件)
mkdir /opt/fastdfs_tracker
2.编辑tracker.conf文件
cd /etc/fdfs/ vim tracker.conf
修改以下配置内容:
disabled=false #启用配置文件(默认启用) port=22122 #设置tracker的端口号,通常采用22122这个默认端口 base_path=/opt/fastdfs_tracker #设置tracker的数据文件和日志目录 http.server_port=88 #设置http端口号,默认为8080,记住此端口号,对应于后续nginx的listen端口
3.启动和关闭tracker服务器
#启动 $service fdfs_trackerd start 或者 $/etc/init.d/fdfs_trackerd start #关闭 $service fdfs_trackerd stop 或者 $/etc/init.d/fdfs_trackerd stop
启动成功:
7.配置Storage
创建Storage服务器文件目录和上传的文件存储目录fastdfs_storage_data
mkdir /opt/fastdfs_storage mkdir /opt/fastdfs_storage_data
修改目录/etc/fdfs/storage.conf配置文件,打开文件后依次做以下修改:
disabled=false #启用配置文件(默认启用) group_name=group1 #组名,根据实际情况修改 port=23000 #设置storage的端口号,默认是23000,同一个组的storage端口号必须一致 base_path=/opt/fastdfs_storage #设置storage数据文件和日志目录 store_path_count=1 #存储路径个数,需要和store_path个数匹配 store_path0=/opt/fastdfs_storage_data #实际文件存储路径 tracker_server=192.168.64.32:22122 #tracker 服务器的 IP地址和端口号,如果是单机搭建,IP不要写127.0.0.1,否则启动不成功(此处的ip是我的CentOS虚拟机ip) http.server_port=7777 #设置 http 端口号
配置OK!
启动和关闭Storage服务
#开启 $service fdfs_storaged start #或者 $/etc/init.d/fdfs_storaged start #关闭 $service fdfs_storaged stop 或者 $/etc/init.d/fdfs_storaged stop
备注:启动storage时,要先启动tracker,不然无法启动监视
查看监听情况
netstat -unltp | grep fdfs
确定了storage服务器启动成功后,还有一项工作就是看看storage服务器是否已经登记到 tracker服务器(也可以理解为tracker与storage是否整合成功),运行以下命令:
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf
出现 active 说明成功
添加storage服务开机启动
vim /etc/rc.d/rc.local
追加两行:
service fdfs_trackerd start service fdfs_storaged start
然后对该文件进行授权
$chmod +x /etc/rc.d/rc.local #对rc.local进行授权
安装完成!
8.本地测试
编辑client配置文件
vim client.conf
修改配置:
base_path=/opt/fastdfs_tracker #tracker服务器文件路径 tracker_server=192.168.64.32:22122 #tracker服务器IP地址和端口号 http.tracker_server_port=88 # tracker 服务器的 http 端口号,必须和tracker的设置对应起来
执行上传命令
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf client.conf
测试成功:
9.安装fastdfs-nginx-module
说明:
1 安装依赖
在安装nginx之前需要先安装一些模块依赖的lib库:pcre-devel、zlib-devel、openssl-devel
yum -y install pcre pcre-devel yum -y install zlib zlib-devel yum -y install openssl openssl-devel
2 安装流程
1 解压fastdfs-nginx-module-master和nginx-1.12.2 2 ./configure配置nginx参数 3 编译安装 4 修改nginx的配置文件nginx.conf 5 copy http.conf和mime.types文件 6 copy mod_fastdfs.conf文件并修改参数 7 启动nginx
3 解压文件
cd /opt/ unzip fastdfs-nginx-module-master.zip tar -zxvf nginx-1.12.2.tar.gz
4 配置./configure
解压完毕后进入nginx目录,在执行./configure配置nginx参数的时候,需要将fastdfs-nginx-moudle源码作为模块编译进去,执行以下命令:
mv nginx-1.12.2 /usr/local/src mv fastdfs-nginx-module-master /usr/local/src/ cd /usr/local/src/nginx-1.12.2/ ./configure --prefix=/usr/local/src/nginx --add-module=/usr/local/src/fastdfs-nginx-module-master/src
5.编译安装
make make install
查看是否安装成功,出现文件则成功
ll /usr/local/src/nginx
6.修改niginx.conf
修改nginx的配置文件,打开/conf/nginx.conf文件,修改http中server的listen,添加location, 具体如下:
cd /usr/local/src/nginx cd conf vim conf.nginx
listen 7777; #注意,此处的listen对应于/etc/fdfs/storage.conf中的http.server_port=7777 #location放在server里面 location ~/group1/M00 { root /opt/fastdfs_storage_data/data; ngx_fastdfs_module; }
7 复制copy http.conf和mime.types
cp -r /usr/local/src/fastdfs-5.11/conf/http.conf /etc/fdfs/ cp -r /usr/local/src/fastdfs-5.11/conf/mime.types /etc/fdfs/
8 配置mod_fastdfs.conf文件
将fastdfs-nginx-module-master/src/mod_fastdfs.conf拷贝到/etc/fdfs目录下,
cp -r /usr/local/src/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/ vim /etc/fdfs/mod_fastdfs.conf
编辑内容:
base_path=/opt/fastdfs_storage #保存日志目录 tracker_server=192.168.64.32:22122 #tracker服务器的IP地址以及端口号 storage_server_port=23000 #storage服务器的端口号 url_have_group_name = true #文件url中是否有 group 名 store_path0=/opt/fastdfs_storage_data # 存储路径 group_count = 3 #设置组的个数,事实上这次只使用了group1
设置group_count = 3,需要在文件尾部追加这3个group setting
[group1] group_name=group1 storage_server_port=23000 store_path_count=1 store_path0=/opt/fastdfs_storage_data [group2] group_name=group2 storage_server_port=23000 store_path_count=1 store_path0=/opt/fastdfs_storage_data [group3] group_name=group3 storage_server_port=23000 store_path_count=1 store_path0=/opt/fastdfs_storage_data
9 启动、停止nginx
/usr/local/src/nginx/sbin/nginx #启动 /usr/local/src/nginx/sbin/nginx -s reload #重新启动 /usr/local/src/nginx/sbin/nginx -s stop #停止
测试启动成功:
netstat -unltp | grep nginx
10 配置tracker nginx
1 再次配置nginx.conf
cd nginx/conf vim nginx.conf
2 在http下面添加 upstream
upstream fdfs_group1 { server 127.0.0.1:7777; }
3 在http下面再添加server
server{ listen 88; server_name localhost; location /group1/M00 { proxy_pass http://fdfs_group1; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
4 重启ngxin
/usr/local/src/nginx/sbin/nginx -s reload
5 测试
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf 14958390.jpg
访问nginx地址
nginx转发原理: