安装fastdfs文件系统
1、下载源码包
需要下载的源码包:
fastDFS源代码:FastDFS_v5.01.tar.gz
fastDFS的nginx模块源代码:fastdfs-nginx-module_v1.15.tar.gz
nginx服务器源代码:nginx-1.4.7.tar.gz
nginx依赖的pcre库源代码:pcre-8.34.tar.gz
nginx依赖的zlib库源代码:zlib-1.2.8.tar.gz
可以我的微云中下载http://url.cn/4Byr7Ky,也可以网上自行下载;
2、安装,配置,运行tracker
1.安装
[root@nginx opt]# cp FastDFS_v5.01.tar.gz /usr/local/src/
[root@nginx opt]# cd /usr/local/src/
[root@tracker src]# tar -zxf FastDFS_v5.01.tar.gz
[root@tracker src]# cd FastDFS
[root@nginx FastDFS]# ./make.sh #如出现错误请安装对应的依赖包
[root@nginx FastDFS]# ./make.sh install
安装完成后,所有可执行文件在/usr/local/bin下,以fdfs开头,配置文件在/etc/fdfs下;
2.配置
[root@nginx FastDFS]# vim /etc/fdfs/tracker.conf
一般只需改动以下几个参数即可:
disabled=false #启用配置文件
port=22122 #设置tracker的端口号
base_path=/home/fdfs/tracker/ #设置tracker的数据文件和日志目录(需预先创建)
http.server_port=9300 #设置http访问的端口号
3.运行
运行tracker之前,如果配置了防火墙则要先开放tracker的默认端口22122
[root@nginx FastDFS]# /usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
如需设置开机自启,可在/etc/rc.d/rc.local中添加上面的命令
3、安装、配置、运行storage
1、安装
由于现在将tracker和storeage安装在同一台服务器上,所以第二步已经安装过fastDFS了,跳过此步;
2、配置
[root@nginx FastDFS]# vim /etc/fdfs/storage.conf
一般只需改动以下几个参数即可:
disabled=false #启用配置文件
group_name=group1 #组名,根据实际情况修改
port=23000 #设置storage的端口号
base_path=/home/fdfs/storage #设置storage的日志目录(需预先创建)
store_path_count=1 #存储路径个数,需要和store_path个数匹配,目前只配置store_path0
store_path0=/home/fdfs/storage1 #存储路径
tracker_server=172.16.1.202:22122 #tracker服务器的IP地址和端口号
http.server_port=9300 #设置http端口号
3、运行
[root@nginx FastDFS]# /usr/local/bin/fdfs_storaged /etc/fdfs/storage.conf
如需设置开机自启,可在/etc/rc.d/rc.local中添加上面的命令
4、安装,配置,运行nginx
1、安装
[root@nginx opt]# cp nginx-1.4.7.tar.gz /usr/local/src
[root@nginx opt]# cp fastdfs-nginx-module_v1.15.tar.gz /usr/local/src
[root@nginx opt]# cp pcre-8.34.tar.gz /usr/local/src
[root@nginx opt]# cp zlib-1.2.8.tar.gz /usr/local/src
[root@nginx opt]# cd /usr/local/src/
[root@nginx src]# tar zxf nginx-1.4.7.tar.gz
[root@nginx src]# tar zxf fastdfs-nginx-module_v1.15.tar.gz
[root@nginx src]# tar zxf pcre-8.34.tar.gz
[root@nginx src]# tar zxf zlib-1.2.8.tar.gz
[root@nginx src]# cd nginx-1.4.7
[root@nginx nginx-1.4.7]# ./configure --prefix=/usr/local/nginx --add-module=/usr/local/src/fastdfs-nginx-module/src
--with-pcre=/usr/local/src/pcre-8.34/ --with-zlib=/usr/local/src/zlib-1.2.8
[root@nginx nginx-1.4.7] # make
[root@nginx nginx-1.4.7] # make install
[root@nginx nginx-1.4.7]# cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
2、配置
[root@nginx nginx-1.4.7]# vim /usr/local/nginx/conf/nginx.conf
修改nginx配置伟杰,添加fastDFS server模块
server {
listen 9300;
server_name localhost;
#注释掉部分为在有第二个storage的时候使用的
#location /group1/M01 {
# root /home/fdfs/storage2/data;
# ngx_fastdfs_module;
#}
location /group1/M00 {
root /home/fdfs/storage1/data;
ngx_fastdfs_module;
client_max_body_size 200m;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
[root@storage1 nginx-1.4.7]# vim /etc/fdfs/mod_fastdfs.conf
修改mod_fastdfs配置,一般需要修改如下几个配置
一般只需改动以下几个参数即可:
base_path=/home/fdfs/storage #保存日志目录
tracker_server=172.16.1.202:22122 #tracker服务器的IP地址以及端口号
storage_server_port=23000 #storage服务器的端口号
group_name=group1 #当前服务器的group名
url_have_group_name = true #文件url中是否有group名
store_path_count=1 #存储路径个数,需要和store_path个数匹配
store_path0=/home/fdfs/storage1 #存储路径
http.need_find_content_type=true #从文件扩展名查找文件类型(nginx时为true)
group_count = 1 #设置组的个数(具体要看有几个group)
在末尾增加组的具体信息(有几个group则增加几个)
[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/home/fdfs/storage1
[root@nginx nginx-1.4.7]# ln -s /home/fdfs/storage1/data /home/fdfs/storage1/data/M00
3、运行
运行nginx之前,先要把防火墙中fastDFS的http端口打开(本例中为9300)
[root@nginx nginx-1.4.7]# /usr/local/nginx/sbin/nginx
通过netstat -ntlp 查看9300、22122、23000这几个端口是不是都存在
5、测试
尝试上传一个文件到FastDFS,然后访问试试。先配置client.conf文件
[root@nginx nginx-1.4.7]# vim /etc/fdfs/client.conf
一般修改如下参数:
base_path=/home/fdfs/tracker #日志存放路径
tracker_server=172.16.1.202:22122 #tracker服务器IP地址和端口号
http.tracker_server_port=9300
[root@nginx nginx-1.4.7]# /usr/local/bin/fdfs_upload_file /etc/fdfs/client.conf /mnt/monk.jpg
程序会返回一个url如:group1/M00/00/00/rBABz1MzKG6Ad_hBAACKLsUDM60560.jpg
然后使用浏览器访问:
http://172.16.1.202:9300/group1/M00/00/00/rBABz1MzKG6Ad_hBAACKLsUDM60560.jpg
此处的172.16.1.202为内网地址,要换成nginx所在的公网地址,如果能访问到图片则安装成功
5、java客户端
1.下载源码https://github.com/happyfish100/fastdfs-client-java
2.用maven编译源码并安装
mvn clean install
3.使用maven从jar安装
mvn install:install-file -DgroupId=org.csource -DartifactId=fastdfs_client -Dversion=版本号 -Dpackaging=jar -Dfile=前得到的jar路径
安装fastdfs文件系统的更多相关文章
- CentOS7 安装FastDFS分布式文件系统
CentOS7 安装FastDFS分布式文件系统 最近要用到fastDFS,所以自己研究了一下,在搭建FastDFS的过程中遇到过很多的问题,为了能帮忙到以后搭建FastDFS的同学,少走弯路,与大家 ...
- CentOS上安装分布式文件系统FastDFS & 配置和问题解决
原文:https://my.oschina.net/wangmengjun/blog/1142982 什么是FastDFS? FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件 ...
- CentOS上安装FastDFS分布式文件系统
鱼大自己写的项目简介:http://bbs.chinaunix.net/thread-1920470-1-1.html 架构简介:http://www.programmer.com.cn/4380/ ...
- FastDFS文件系统(二) fastdfs和其他文件系统区别
FastDFS文件系统(二) fastdfs和其他文件系统区别 一.概述 普通存储方案:Rsync.DAS(IDE/SATA/SAS/SCSI等块).NAS(NFS.CIFS.SAMBA等文件系统). ...
- linux上安装fastdfs+nginx+ngin-module实践并解决多个异常篇
为什么选择Nginx Nginx 是一个很牛的高性能Web和反向代理服务器, 它具有有很多非常优越的特性: 在高连接并发的情况下,Nginx是Apache服务器不错的替代品:Nginx在美国是做虚拟主 ...
- Linux 安装FastDFS<准备>(使用Mac远程访问)
阅读本文需要一定的Linux基础 一 FastDFS简介 fastdfs是用c语言编写的一款开源分布式文件系统, fastdfs为互联网量身定制, 充分考虑了冗余备份, 负载均衡, 线性扩容等机制, ...
- Fastdfs文件系统扩容
1.简介 FastDFS文件服务器在设计时,为了支持大容量,存储节点(服务器)采用了分卷(或分组)的组织方式.存储系统由一个或多个卷组成,卷与卷之间的文件是相互独立的,所有卷的文件容量累加就是 ...
- 实战:docker搭建FastDFS文件系统并集成SpringBoot
实战:docker搭建FastDFS文件系统并集成SpringBoot 前言 15年的时候,那时候云存储还远远没有现在使用的这么广泛,归根结底就是成本和安全问题,记得那时候我待的公司是做建站开发的,前 ...
- centos7.x 安装 fastDFS
环境准备 使用的系统软件 名称 说明 centos 7.x libfatscommon FastDFS分离出的一些公用函数包 FastDFS FastDFS本体 fastdfs-nginx-modul ...
随机推荐
- BP神经网络的参数改进参考?
参考文献:黄巧巧. 基于BP神经网络的手写数字识别系统研究[D].华中师范大学,2009. 47-52 BP神经网络的缺陷:收敛速度慢和局部极小点的问题 使用的改进方案有 1. 学习速率(learn ...
- WPF中的路由事件(转)
出处:https://www.cnblogs.com/JerryWang1991/archive/2013/03/29/2981103.html 最近因为工作需要学习WPF方面的知识,因为以前只关注的 ...
- sprintf()与sscanf()
1.sprintf() sprintf()用于向字符串中写入格式化的数据,eg: int dSrc1 = 1; int dSrc2 = 2; char str[] = "hello" ...
- excel2007自定义菜单项学习
参考: http://club.excelhome.net/thread-1288002-1-1.html http://club.excelhome.net/thread-709306-1-1.ht ...
- es6 字符串方法
1.字符串的新方法 includes() 包含属性 startsWith() 头部开始是否包含 endWith() 字符串是否在尾部 ========三个返回值都为布尔值 第二参数为数字 e ...
- java 冒泡排序 二分查找 选择排序 插入排序
下面这个程序是先定义一个整型数组,然后将其中的元素反序赋值,再用冒泡排序进行排序以后用二分查找来查找其中是否有某个数,返回值为-1时表示这个数可能小于这个数组的最小值或大小这个数组的最大值,-2表示这 ...
- 微信小程序之弹框modal
官方文档 <modal hidden="{{hidden}}" title="这里是title" confirm-text="自定义确定按钮&q ...
- Gym 100096D Guessing game
Gym 100096D Guessing game 题面 Problem Description Byteman is playing a following game with Bitman. Bi ...
- kindeditor 富文本粘贴 图片
<script type="text/javascript" src="../../Scripts/Plugins/kindeditor/kindeditor.js ...
- 模块import,from ..import...
首次导入模块发生3件事 1.创建一个模块的名称空间 2.执行文件spam.py,将执行过程中产生的名字都放到模块的名称空间中 3.在当前执行文件中直接拿到一个名字,该名字就是执行模块中相对应的名字 f ...