FastDFS安装
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FastDFS安装相关的知识,希望对你有一定的参考价值。
参考技术A 一、准备安装包libfastcommon:FastDFS分离出的一些公用函数包
FastDFS:FastFDS本体
fastdfs-nginx-module:FastFDS和nignx的关联模块
nginx:发布访问服务
二、安装
0.将安装包上传至/home/software/fastdfs
1.安装基础环境
yum install -y gcc gcc-c++
yum -y install libevent
2.安装libfastcommon函数库
解压: tar -zxvf libfastcommon-1.0.42.tar.gz
进入到libfastcommon文件夹:./make.sh
./make.sh install
3.安装fastdfs主程序文件
解压:tar -zxvf fastdfs-6.04.tar.gz
进入fastdfs目录:./make.sh
./make.sh install
4.确保文件夹存在
/usr/bin:包含了可执行文件
/etc/fdfs:包含了配置文件
5.拷贝配置文件 cp /home/software/FastDFS/fastdfs-6.04/conf/* /etc/fdfs/
三、配置tracker
1.配置tracker配置文件
cd /etc/fdfs
vim tracker.conf
2.修改基础路径
base_path=/usr/local/fastdfs/tracker
mkdir /usr/local/fastdfs/tracker
3.启动tracker服务
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
4.查看进程 ps -ef|grep tracker
5.停止tracker
/usr/bin/stop.sh /etc/fdfs/tracker.conf
四、配置storage
1.配置storage配置文件
cd /etc/fdfs
vim storage.conf
#修改组名
group_name=imooc
# 修改storage的工作空间
base_path=/usr/local/fastdfs/storage
# 修改storage的存储空间
store_path0=/usr/local/fastdfs/storage
# 修改tracker的地址和端口号,用于心跳
tracker_server=192.168.1.153:22122
# 后续结合nginx的一个对外服务端口号
http.server_port=8888
2.创建目录 mkdir /usr/local/fastdfs/storage -p
3.启动storage(前提:必须先启动tracker) /usr/bin/fdfs_storaged /etc/fdfs/storage.conf
4.查看进程: ps -ef|grep storage
五、测试图片上传
0.创建/usr/local/fastdfs/client后,配置/etc/fdfs/client.conf
base_path=/usr/local/fastdfs/client
tracker_server=192.168.1.153:22122
1.上传测试图片至/home/logo.png
2.确保先启动tracker,再启动storage
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /home/logo.png
六、配置Nginx FastDFS实现文件服务器(按步骤来配置)
fastdfs安装好以后是无法通过http访问的,这个时候就需要借助nginx,所以需要安装fastdfs第三方模块到nginx中,就能使用了。
注:nginx需要和storage在同一个节点
1.安装nginx插件
解压nginx的fastdfs压缩包:tar -zxvf fastdfs-nginx-module-1.22.tar.gz
复制配置文件:cp mod_fastdfs.conf /etc/fdfs
修改/fastdfs-nginx-modules/src/config文件,主要是修改路径,把local删除,因为fastdfs安装的时候我们没有修改路径
2.安装nginx,详情参考https://www.jianshu.com/p/65b48c4a6606
其中配置模块,增加fastdfs插件
./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 --add-module=/home/software/fastdfs/fastdfs-nginx-module-1.22/src
修改nginx.conf,添加如下虚拟机
3.修改mod_fastdfs.conf配置文件
创建文件夹: mkdir /usr/local/fastdfs/tmp
4.启动nginx
5.访问 Ip+代理转发端口+storage存储组名
http://192.168.31.221:8888/imooc/M00/00/00/wKgf3V-eChSAdlnFAALdsLCF3uA337.JPG
FastDFS腾讯云安装FastDFS及安装ngix
因为新租服务器,所以需要从新配置环境和安装软件,所以顺便把安装过程的坑写出来。以下是用到的软件包
在这里强烈建议,大家不要!!!开启全端口或者关闭防火墙,会后悔的!!!
fastdfs-nginx-module_v1.16.tar.gz |
官方提供的nginx插件 |
FastDFS_v5.0.5.tar.gz |
tracker+storage |
libfastcommonV1.0.7.tar.gz |
FastDFS官方提供的,libfastcommon包含了FastDFS运行所需要的一些基础库。
|
nginx-1.8.1.tar.gz |
|
配置gcc-c++环境
yum -y install gcc-c++
FastDFS依赖libevent库,需要安装
yum -y install libevent
注:如果出现
yum install gcc-c++: Nothing to do Package gcc-c++ already installed and latest
则需要:yum remove gcc-4.8.5-39.el7.x86_64(根据提醒的版本,修改),然后重新执行 yum -y install gcc-c++
以下文件情况,请根据个人情况修改:
压缩包放在:/software
文件放在位置:/usr/local/fastdfs
1) 安装libfastcommon
解压
cd /software tar -zxvf libfastcommonV1.0.7.tar.gz -C /usr/local/fastdfs/
编译
cd /usr/local/fastdfs/libfastcommon-1.0.7/ ./make.sh ./make.sh install
注意:libfastcommon安装好后会自动将库文件拷贝至/usr/lib64下,由于FastDFS程序引用usr/lib目录,所以需要将/usr/lib64下的库文件拷贝至/usr/lib下。
cd /usr/lib64/
cp libfastcommon.so /usr/lib
2) 安装FastDFS_v5.05(tracker+storage)
解压
cd /software
tar -zxvf FastDFS_v5.0.5.tar.gz -C /usr/local/fastdfs/
编译
cd /usr/local/fastdfs/FastDFS/ ./make.sh ./make.sh install
安装成功将安装目录下的conf下的文件拷贝到/etc/fdfs/下
cd /usr/local/fastdfs/FastDFS/conf/
cp * /etc/fdfs/
兄弟们,大坑来了!!
1.注意版本:FastDFS V6.0以上支持双IP,但是我是5,而且我又是腾讯云服务器,所以我Storage配置要用内网地址,不能用公网地址。
2.需要开启端口:其中包括:8888,22122,23000
netstat -tunlp查看防火墙开放情况 firewall-cmd --permanent --zone=public --add-port=22122/tcp firewall-cmd --permanent --zone=public --add-port=23000/tcp firewall-cmd --permanent --zone=public --add-port=8888/tcp
安装tracker服务
vim /etc/fdfs/tracker.conf
启动tracker服务,一般启动成功的,也可以看日志,日志位置在:/usr/local/fastdfs/FastDFS/tracker/logs ,可以cd /usr/local/fastdfs/FastDFS/tracker/logs,然后cat trackerd.log
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
安装Storage,其中tracker_server=服务器内网地址:22122
vim /etc/fdfs/storage.conf
启动
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf
一般来说,启动需要一段时间,可以查看日志情况:如果出现连不上,一个是端口或者防火墙的问题,第二个就是要使用内网地址
cd /usr/local/fastdfs/FastDFS/storage/logs
cat storaged.log
3) 配置客户端
将/usr/local/FastDFS/client 里面的libfdfsclient.so 拷贝到 /usr/lib
cd /usr/local/fastdfs/FastDFS/client/
cp libfdfsclient.so /usr/lib
修改配置文件/etc/fdfs/client.conf,其中tracker_server=服务器内网地址:22122
测试配置情况
vim /root/hi.html
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /root/hi.html
现在:外网还不能访问要通过ngix
2) 安装nginx及nginx插件
#yum install gcc-c++ (之前已经安装不需要了) yum install -y pcre pcre-devel yum install -y zlib zlib-devel yum install -y openssl openssl-devel
可以使用官方提供的nginx插件。要使用nginx插件需要重新编译。
解压
cd /software/ tar -zxf fastdfs-nginx-module_v1.16.tar.gz -C /usr/local/fastdfs/
修改/usr/local/fastdfs/fastdfs-nginx-module/src/config,把其中的local去掉。
cd /usr/local/fastdfs/fastdfs-nginx-module/src
vim config
把fastdfs-nginx-module/src/mod_fastdfs.conf文件复制到/etc/fdfs目录下。并编辑该文件
cd /usr/local/fastdfs/fastdfs-nginx-module/src
cp mod_fastdfs.conf /etc/fdfs/
vim /etc/fdfs/mod_fastdfs.conf
其中tracker_server=服务器内网地址:22122
解压nginx
cd /software/ tar -zxf nginx-1.8.1.tar.gz -C /usr/local/fastdfs/
对nginx重新config
./configure --add-module=/usr/local/fastdfs/fastdfs-nginx-module/src cd /usr/local/fastdfs/nginx-1.8.1/ make make install
注意:nginx默认安装到了/usr/local/nginx目录下,所以接下来要进入此目录中
cd /usr/local/nginx/conf/
vim nginx.conf
启动nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ps -aux|grep nginx
现在就配置完成拉,输入之前上传的地址,其中内网地址改成公网地址就可以访问了。
注:部分资料及压缩包来自B站风清扬老师 https://www.bilibili.com/video/BV1bE411o7Uz?spm_id_from=333.999.0.0
以上是关于FastDFS安装的主要内容,如果未能解决你的问题,请参考以下文章