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
Linux环境搭建少不了FastDFS的安装,本文记录Linux环境下安装fdfs的步骤。
将安装包上传至服务器
环境安装好的跳过此步骤
[图片上传失败...(image-c15bdd-1652446961897)]
libfatscommon 是 FastDFS 分离出的一些公用函数包,解压之后进入libfastcommon目录,执行 ./make.sh 和 ./make.sh install
同上,进入解压目录执行执行 ./make.sh 和 ./make.sh install
编译成功之后进入 /etc/fdfs ,会出现 client.conf.sample 客户端文件、 storage.conf.sample 、 tracker.conf.sample 两个基础配置文件,将这三个文件复制
再将fastdfs-5.05下conf文件夹中的http.conf和mime.types拷贝到 /etc/fdfs/中供nginx访问使用
[图片上传失败...(image-45d78d-1652446961897)]
执行命令 vim /etc/fdfs/tracker.conf
base_path=/data/fastdfs/tracker
修改如下:
[图片上传失败...(image-280bff-1652446961897)]
执行命令 service fdfs_trackerd start
启动成功后,在 /data/fastdfs/tracker 中找到两个新文件
[图片上传失败...(image-8bcea-1652446961897)]
大致流程和tracker配置一样
执行命令 vim /etc/fdfs/storage.conf ,修改内容:
store_path0=/data/fastdfs/file
tracker_server=192.168.18.125:22122
http.server_port=8086
日志文件存储路径
[图片上传失败...(image-e550a9-1652446961897)]
文件存储路径
[图片上传失败...(image-23e2c1-1652446961897)]
填写服务器ip(云服务器填内网ip)
[图片上传失败...(image-6c8618-1652446961897)]
执行命令 service fdfs_storaged start
启动成功后,在 /data/fastdfs/storage 中找到两个新文件
[图片上传失败...(image-49a113-1652446961897)]
执行 /usr/bin/fdfs_monitor /etc/fdfs/storage.conf ,成功如下
[图片上传失败...(image-f6a0ef-1652446961897)]
执行命令 vim /etc/fdfs/client.conf ,修改内容:
如图所示
[图片上传失败...(image-aa4a20-1652446961897)]
在 /data/fastdfs 下编写一个测试文件
[图片上传失败...(image-3e14e4-1652446961897)]
执行命令 /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /data/fastdfs/test.txt
[图片上传失败...(image-395d27-1652446961897)]
成功返回文件路径,如图:
[图片上传失败...(image-80da85-1652446961897)]
如果出现错误,请检查(tracker.conf、storage.conf、client.conf)base_path、store_path0配置路径是否正确路径需要一致。
上述文件如果想要在web上查看,就需要配置nginx和fastdfs-nginx-module模块
进入fastdfs-nginx-module-master/src中,执行命令 cp mod_fastdfs.conf /etc/fdfs /将mod_fastdfs.conf文件复制到/etc/fdfs/目录下
执行命令 vim /etc/fdfs/mod_fastdfs.conf 修改 mod_fastdfs.conf 文件
[图片上传失败...(image-38e7af-1652446961897)]
fastdfs-nginx-module-master/src/config文件
进入到nginx文件夹中,执行命令 ./configure --add-module=/data/soft/fastdfs-nginx-module-master/src (module后面是fastdfs-nginx-module-master的解压路径)
然后安装nginx,执行命令 make &&make install ,安装成功编辑nginx.conf
[图片上传失败...(image-ad1b90-1652446961897)]
修改监听端口为 8086 (和前面配置的端口一致),添加如下内容:
重启nginx之后,开放指定端口
如果需要其他代理访问,需要监听配置这台服务器的8086端口。
如果 unknown directive “ngx_fastdfs_module” in /usr/local/nginx/conf/nginx.conf:151 ,可能是nginx一直是启动的,必须要重启nginx才可以, nginx -s reload 无效。
nginx和之前配置一样
因为cdn的速度与fastdfs相差并不是很大,但是价格却十分昂贵,所以相同情况下,企业都会选择使用fastdfs分布式文件系统。
(1)FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。
(2)CDN的全称是Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络。
CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)