Linux系统安装fastDFS(仅供参考)

FastDFS简介

FastDFS是由国人余庆所开发(淘宝团队中的大牛),其项目地址:

https://github.com/happyfish100

  • FastDFS是一个轻量级的开源分布式文件系统,主要解决了大容量的文件存储和高并发访问的问题,文件存取时实现了负载均衡。
  • FastDFS是一款类Google FS的开源分布式文件系统,它用纯C语言实现,支持Linux、FreeBSD、AIX等UNIX系统。
  • FastDFS只能通过专有API对文件进行存取访问,不支持POSIX接口方式,不能mount使用。
  • 准确地讲,Google FS以及FastDFS、mogileFS、 HDFS、TFS等类Google FS都不是系统级的分布式文件系统,而是应用级的分布式文件存储服务。

FastDFS的特性

  1. 分组存储,灵活简洁、对等结构,不存在单点
  2. 文件ID由FastDFS生成,作为文件访问凭证,FastDFS不需要传统的name server
  3. 和流行的web server无缝衔接,FastDFS已提供apache和nginx扩展模块
  4. 大、中、小文件均可以很好支持,支持海量小文件存储
  5. 支持多块磁盘,支持单盘数据恢复
  6. 支持相同文件内容只保存一份,节省存储空间
  7. 存储服务器上可以保存文件附加属性
  8. 下载文件支持多线程方式,支持断点续传

FastDFS架构图

FastDFS架构图

FastDFS安装部署

依赖下载

  1. 跳转到当前用户的家目录:cd ~
  2. 下载libfastcommon
wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz -O libfastcommonV1.0.7.tar.gz
  1. 下载fastdfs-nginx-module
wget http://jaist.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz
  1. 下载FastDFS
wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz -O FastDFS.tar.gz
  1. 下载Nginx:
wget http://mirrors.sohu.com/nginx/nginx-1.8.0.tar.gz
  1. 安装gcc
yum install -y gcc gcc-c++
  1. 安装libevent
yum -y install libevent

开始部署

  1. 解压与编译libfastcommon
tar -zxvf libfastcommonV1.0.7.tar.gz -C /usr/local/
cd /usr/local/libfastcommon-1.0.7/
./make.sh && ./make.sh install
cp /usr/lib64/libfastcommon.so /usr/lib/
  1. 安装tracker
cd ~
tar -zxvf FastDFS.tar.gz -C /usr/local/
mv /usr/local/fastdfs-5.05 /usr/local/FastDFS
cd /usr/local/FastDFS/
./make.sh && ./make.sh install
/bin/cp -rf /usr/local/FastDFS/conf/* /etc/fdfs/
cd /etc/fdfs/
cp tracker.conf.sample tracker.conf
sed -i 's/base_path=\/home\/yuqing\/fastdfs/base_path=\/home\/fastdfs/g' tracker.conf
sed -i 's/http.server_port=8080/http.server_port=80/g' tracker.conf
mkdir -p /home/fastdfs
  1. 启动tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
  1. 配置和启动storage
cd /etc/fdfs/

注:下面部分”这里填你的ip”一定要换填为当前服务器公网ip

sed -i 's/这里填你的ip:22122/g' storage.conf
sed -i 's/8888/88/g' storage.conf
sed -i 's/store_path0=\/home\/yuqing\/fastdfs/store_path0=\/home\/fdfs_storage /g' storage.conf
sed -i 's/base_path=\/home\/yuqing\/fastdfs/base_path=\/home\/fastdfs/g' storage.conf
mkdir -p /home/fdfs_storage
  1. 开放防火墙相关端口
firewall-cmd --zone=public --add-port=22122/tcp --permanent
firewall-cmd --zone=public --add-port=88/tcp --permanent
firewall-cmd --zone=public --add-port=23000/tcp --permanent
firewall-cmd --reload
  1. 启动storage
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart

配置fastdfs-nginx-module

cd ~
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz -C /usr/local
cd /usr/local/fastdfs-nginx-module/src/
sed -i 's/\/usr\/local/\/usr/g' config
cp mod_fastdfs.conf /etc/fdfs/
sed -i 's/base_path=\/tmp/base_path=\/home\/fastdfs/g' /etc/fdfs/mod_fastdfs.conf
sed -i 's/url_have_group_name = false/url_have_group_name = true/g' /etc/fdfs/mod_fastdfs.conf
sed -i 's/tracker_server=tracker:22122/tracker_server=你自己的ip:22122/g' /etc/fdfs/mod_fastdfs.conf
sed -i 's/store_path0=\/home\/yuqing\/fastdfs/store_path0=\/home\/fdfs_storage/g' /etc/fdfs/mod_fastdfs.conf
cp /usr/lib64/libfdfsclient.so /usr/lib/
mkdir -p /var/temp/nginx/client

安装nginx

cd ~
tar -zxvf nginx-1.8.0.tar.gz -C /usr/local/
yum -y install pcre && yum -y install pcre-devel && yum -y install zlib && yum -y install zlib-devel && yum -y install openssl && yum -y install openssl-devel
cd /usr/local/nginx-1.8.0/
./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=/usr/local/fastdfs-nginx-module/src
make && make install
cd /usr/local/FastDFS/conf
/bin/cp -rf http.conf mime.types /etc/fdfs/
mkdir /usr/local/nginx/logs
cd /usr/local/nginx/conf/
vim nginx.conf

下面是在Linux下修改文档内容

在这里插入图片描述
在这里插入图片描述

启动nginx

/usr/local/nginx/sbin/nginx

nginx + fastdfs 的开机自启动
虚拟机每次启动之后都要重新启动一下fastdfs 和 nginx服务,比较麻烦,所以增加开机自启动;
编辑 /etc/rc.d/rc.local文件,增加启动项;

  1. 编辑文件
vim /etc/rc.d/rc.local
  1. 增加如下
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
/usr/local/nginx/sbin/nginx
  1. 在centos7中, /etc/rc.d/rc.local 文件的权限被降低了,需要给rc.local 文件增加可执行的权限
chmod +x /etc/rc.d/rc.local
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

✎浅笑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值