2.0.FastDFS单机模式综合版
1.什么是FastDFS?
FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器主要做调度工作,在访问上起负载均衡的作用。
存储节点存储文件,完成文件管理的所有功能:存储、同步和提供存取接口,FastDFS同时对文件的meta data进行管理。所谓文件的meta data就是文件的相关属性,以键值对(key value pair)方式表示,如:width=1024,其中的key为width,value为1024。文件meta data是文件属性列表,可以包含多个键值对。
FastDFS系统结构如下图所示:

2.本文目标
本文的目标是在CentOS上,单机安装FastDFS,包括Tracker和Storage,并结合Nginx的配置,最终完成文件的上传,并通过Nginx的路径来完成静态文件内容的展示
3.安装准备
3.1.1安装依赖库
在安装FastDFS和Nginx之前,需确保gcc、gcc-c++、 libstdc++-devel、make等依赖库和工具已经安装。
yum -y install gcc gcc-c++ libstdc++-devel
yum -y groupinstall 'Development Tools'
yum -y install wget
yum -y install make
Nginx安装需要依赖pcre库以及zlib库,
yum -y install pcre-devel
yum install -y zlib-devel
yum -y install libxml2 libxml2-dev
yum -y install libxslt-devel
yum -y install gd-devel
yum -y install pcre pcre-devel
yum -y install zlib zlib-devel
yum -y install openssl openssl-devel
3.1.2安装libfastcommon类库
安装FastDFS必须先安装libfastcommon类库,否则会导致报错,安装直接根据如下几个步骤即可~
wget https://github.com/happyfish100/libfastcommon/archive/master.zip
unzip master.zip
或者从 https://github.com/happyfish100/libfastcommon/archive/V1.0.39.tar.gz下载指定版本
cd libfastcommon-master
./make.sh
./make.sh install
安装结束。
3.1.3安装FastDFS
wget https://github.com/happyfish100/fastdfs/archive/master.tar.gz
tar -zxvf master.tar.gz
cd fastdfs-master/
./make.sh
./make.sh install
安装结束。
安装好之后,在/usr/bin目录下,可以看fdfs开头的命令工具~

FastDFS安装完成之后,所有配置文件在/etc/fdfs目录下,tracker需要tracker.conf配置文件,storage需要storage.conf配置文件。
3.1.4配置tracker.conf
cd /etc/fdfs
ll
cp tracker.conf.sample tracker.conf
mkdir /opt/fastdfs/tracker
vi tracker.conf
设置base_path=/opt/fastdfs/tracker
保存退出。
启动FastDFS -Tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start 查看端口22122是否开始监听,确认启动是否成功

查看运行情况

查看日志是否启动成功
cat /srv/fastdfs/tracker/logs/trackerd.log

tracker配置完成
3.1.5配置storaged.conf
添加storage工作目录 mkdir /opt/fastdfs/storage
添加storage存储目录 mkdir /opt/fastdfs/data
复制storage.conf.sample为storage.conf
cp storage.conf.sample storage.conf

store_path0修改为storage存储目录路径

store_path修改为storage工作目录路径

3.1.6配置http.conf

conf目录中的http.conf /etc/fdfs/http.conf

conf目录中的mime.types 拷贝至 /etc/fdfs/mime.types

conf目录中的anti-steal.jpg 拷贝至/etc/fdfs/anti-steal.jpg

修改http.conf
vi http.conf

启动存储节点配置
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
3.1.7配置预览
3.1.7.1FastDFS-nginx-module安装
a.下载安装包
wget https://github.com/happyfish100/fastdfs-nginx-module/archive/master.zip
unzip master.zip
3.1.7.2Nginx下载
wget https://nginx.org/download/nginx-1.9.9.tar.gz

3.1.7.3编译
cd nginx-1.9.9
./configure --add-module=../fastdfs-nginx-module-master/src/ --with-http_ssl_module
安装成功,查看版本信息

3.1.7.4查看ningx安装目录

3.1.7.5配置fastdfs-nginx-module
a.进入fastdfs-nginx-module/src目录
将mod_fastdfs.conf配置文件拷贝到/etc/fdfs/目录中

进入/etc/fdfs目录

vi mod_fastdfs.conf

store_path0设置为storage存储目录 /opt/fastdfs/data
tracker_server设置为 192.168.125.139:22122
url_have_group_name设置为true
3.1.8nginx配置
建议先在不添加任何模块时默认安装,新模块在再安装替换。
nginx初始安装,参照 https://www.cnblogs.com/oumi/p/10217057.html
现在假定是已安装了nginx,本文用到1.9.9版
本文用到的fastdfs-nginx-module版本未1.20

cd nginx-1.9.9
编译

make
make install (由于本次nginx已经安装过了,此处不再执行)。
替换编译后的nginx文件
a.先备份原先安装
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_v0
b.替换新编译文件
从nginx-1.9.9/objs/目录复制nginx文件至 /usr/local/nginx/sbin/
cd objs
cp nginx /usr/local/nginx/sbin/
c.重启nginx
service nginx restart
3.1.9FastDFS资源http协议访问支持
在nginx配置中 添加如下配置
server
{
listen ;
server_name localhost;
location ~/group[-]/ {
ngx_fastdfs_module;
}
error_page /50x.html;
location = /50x.html {
root html;
}
}
3.2 开机自启动
3.2.1设置开机启动
chkconfig --add fdfs_trackerd
chkconfig --add fdfs_storaged
chkconfig fdfs_trackerd on
chkconfig fdfs_storaged on
3.2.2启动命令参考
service fdfs_trackerd start
service fdfs_storaged start
service fdfs_trackerd stop
service fdfs_storaged stop
2.0.FastDFS单机模式综合版的更多相关文章
- 一、Ubuntu14.04下安装Hadoop2.4.0 (单机模式)
一.在Ubuntu下创建hadoop组和hadoop用户 增加hadoop用户组,同时在该组里增加hadoop用户,后续在涉及到hadoop操作时,我们使用该用户. 1.创建hadoop用户组 2.创 ...
- Ubuntu 14.04下安装Hadoop2.4.0 (单机模式)
转自 http://www.linuxidc.com/Linux/2015-01/112370.htm 一.在Ubuntu下创建Hadoop组和hadoop用户 增加hadoop用户组,同时在该组里增 ...
- Ubuntu14.04下安装Hadoop2.4.0 (单机模式)
一.在Ubuntu下创建hadoop组和hadoop用户 增加hadoop用户组,同时在该组里增加hadoop用户,后续在涉及到hadoop操作时,我们使用该用户. 1.创建hadoop用户组 2.创 ...
- Ubuntu14.04下安装Hadoop2.5.1 (单机模式)
本文地址:http://www.cnblogs.com/archimedes/p/hadoop-standalone-mode.html,转载请注明源地址. 欢迎关注我的个人博客:www.wuyudo ...
- hbase0.96.0单机模式安装(win7 无需cygwin)
之前折腾了几天,想让hbase的单机模式在cygwin上跑起来,都不成功.正当我气馁之时,我无意中发现hbase0.96.0的bin和conf目录下有一些扩展名为cmd的文件.这难道是给win ...
- Hadoop单机模式安装-(1)安装设置虚拟环境
网络上关于如何单机模式安装Hadoop的文章很多,按照其步骤走下来多数都失败,按照其操作弯路走过了不少但终究还是把问题都解决了,所以顺便自己详细记录下完整的安装过程. 此篇主要介绍如何在Windows ...
- ZooKeeper的安装、配置、启动和使用(一)——单机模式
ZooKeeper的安装.配置.启动和使用(一)——单机模式 ZooKeeper的安装非常简单,它的工作模式分为单机模式.集群模式和伪集群模式,本博客旨在总结ZooKeeper单机模式下如何安装.配置 ...
- HBase单机模式安装
第一部分 安装前准备 1.安装hadoop 今天刚刚学了hbase的一点基础,准备安装Hbase实际操练一下.因为安装hbase的前提条件是已经成功安装了hadoop,而且hadoop的版本要和hba ...
- Redis 单机模式,主从模式,哨兵模式(sentinel),集群模式(cluster),第三方模式优缺点分析
Redis 的几种常见使用方式包括: 单机模式 主从模式 哨兵模式(sentinel) 集群模式(cluster) 第三方模式 单机模式 Redis 单副本,采用单个 Redis 节点部署架构,没有备 ...
随机推荐
- matplotlib 画封闭图像并填充
1.画矩形 这个费了我半天劲,不知怎么就可以了. 复制来自:https://www.cnblogs.com/ymjyqsx/p/7390288.html import matplotlib.pypl ...
- OpenGL 3D拾取文章(转)
参考文章 深入探索3D拾取技术 OpenGL 3D拾取 射线和三角形的相交检测(ray triangle intersection test) 3D拾取的方法有两种 1.基于几何计算的射线-三角形相交 ...
- 每天一个linux命令--ssh的host配置用户名密码
1.在终端输入 cd ~/.ssh/ vi config 输入服务器的用户名和密码 souche@kickseed:~/.ssh$ cat config # 这是跳板机的配置,给跳板机的 IP 起个别 ...
- hadoop cdh 后启动群起脚本总是起不起来的一些坑
最近都在流行大数据什么的,然后偶然之间加入了一个物联网的小公司,可以使用hadoop 来做数据分析,于是心中窃喜,可以有机会接触大数据了,从此走上人生巅峰赢取白富美. 可是成功的道路总不是一帆风顺滴, ...
- ORM表单操作
准备工作: 1.在orm操作表单之前需要先修改下django中连接的数据库,默认连接的是SQLit3,这里我们修改成mysql 2.mysql使用的版本是5.6,已经安装好了,直接连接就可以使用 创建 ...
- HDU多校第三场 Hdu6606 Distribution of books 线段树优化DP
Hdu6606 Distribution of books 题意 把一段连续的数字分成k段,不能有空段且段和段之间不能有间隔,但是可以舍去一部分后缀数字,求\(min(max((\sum ai ))\ ...
- 洛谷 P4555 [国家集训队]最长双回文串(Manacher)
题目链接:https://www.luogu.com.cn/problem/P4555 首先明白两个回文串,那么要使两个回文串成立,那么我们只能把$'#'$作为中间节点. 然后我们跑一边Manache ...
- jquery grid 获取选中的行的数据,以及获取所有行的方法
https://blog.csdn.net/shenqingkeji/article/details/52861319
- C++四种初始化方式
1. 直接初始化直接调用与实参匹配的构造函数,形式如“T t(u)”.2. 拷贝初始化:复制初始化首先使用指定构造函数创建一个临时对象,然后用复制构造函数将那个临时对象复制到正在创建的对象”,形式如“ ...
- 左偏树(p1456) 比较模板的一道题
题意:有n只猴子,m个操作,每一个操作,会让这两堆猴子里的最大的两只打架,打完之后,自身权值减半,然后他们会成为朋友 也就是会属于同一棵树,细节:如果选出的猴子在同一堆,就输出-1,然后下一个操作,不 ...