FastDFS部署
环境:
CentOS 7
FastDFS 5.05
Nginx 1.10
fastdfs-nginx-module_v1.16
libfastcommon-1.0.7
libevent-2.0.21-stable
pcre-8.35.tar.gz
单机启动一个Tracker和三个Storage
安装支持模块:
yum install openssl openssl-devel
安装libevent-2.0.21-stable
tar zxvf libevent-2.0.21-stable.tar.gz
./configure
make && make install
安装libfastcommon-1.0.7.tar.gz
tar zxvf libfastcommon-1.0.7.tar.gz
./make.sh
./make.sh install
安装FastDFS
tar zxvf FastDFS_v5.05.tar.gz
./make.sh
./make.sh install
配置文件目录:/etc/fdfs/
配置tracker和storage
tracker:
vim /etc/fdfs/tracker.conf
base_path=/data/local/fdfs_data/tracker #确保目录存在
storage:
vim /etc/fdfs/storage.conf
group_name=group1
http.server_port=8123
base_path=/data/local/fdfs_data/storage #确保目录存在 store_path0=/data/local/fdfs_data/storage/images/data #确保目录存在,存放图片目录 tracker_server=192.168.153.10:22122 #tracker服务地址,这里就是本机地址
由于要启动三个storage,所以复制storage.conf二份,三份配置文件分别为:storage.conf、storage1.conf、storage2.conf
修改storage1.conf和storage2.conf:
storage1.conf:
group_name=group2
http.server_port=8123
base_path=/data/local/fdfs_data/storage1 #确保目录存在 store_path0=/data/local/fdfs_data/storage1/images/data #确保目录存在,存放图片目录 tracker_server=192.168.153.10:22122 #tracker服务地址,这里就是本机地址
storage2.conf:
group_name=group2
http.server_port=8123
base_path=/data/local/fdfs_data/storage2 #确保目录存在 store_path0=/data/local/fdfs_data/storage2/images/data #确保目录存在,存放图片目录 tracker_server=192.168.153.10:22122 #tracker服务地址,这里就是本机地址
启动tracker:
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
启动三个storage:
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf
/usr/bin/fdfs_storaged /etc/fdfs/storage1.conf
/usr/bin/fdfs_storaged /etc/fdfs/storage2.conf
初次启动storage时会稍慢。
配置client
vim /etc/fdfs/client.conf:
base_path=/data/local/fdfs_data/client #确保目录存在 tracker_server=192.168.153.10:22122
http.server_port=8123
拷贝mime.types、http.conf
cp FastDFS/conf/mime.types /etc/fdfs/
cp FastDFS/conf/http.conf /etc/fdfs/
修改fastdfs-nginx-module/src/config,去掉local:
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
否在在安装nginx时会报错:
致命错误:fdfs_define.h:没有那个文件或目录
#include "fdfs_define.h"
安装nginx:
tar zxvf nginx-1.10.3.tar.gz
./configure --prefix=/data/local/nginx --with-http_gzip_static_module --with-http_ssl_module --with-http_stub_status_module --add-module=/data/package/fastdfs-nginx-module/src/ --with-pcre=/data/package/pcre-8.35
make
make install
拷贝模块文件:
cp fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
修改mod_fastdfs.conf:
将
tracker_server=tracker:22122
改为:
tracker_server=192.168.0.9:22122 #tracker的实际地址
nginx.conf
listen 8123
location /group1/M00 {
root /data/local/fdfs_data/storage/images;
ngx_fastdfs_module;
}
启动nginx...
设置伪集群:
vim mod_fastdfs.conf:
base_path=/data/local/fdfs_data/fdfs-nginx-module tracker_server=192.168.153.9:22122 group_name=group1/group2/group3 store_path0=/data/local/fdfs_data/storage/images/data group_count = 3 [group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/data/local/fdfs_data/storage/images [group2]
group_name=group2
storage_server_port=23001
store_path_count=1
store_path0=/data/local/fdfs_data/storage1/images [group3]
group_name=group3
storage_server_port=23002
store_path_count=1
store_path0=/data/local/fdfs_data/storage3/images
重启服务:
/usr/bin/fdfs_trackered /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage1.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage2.conf restart /data/local/nginx/sbin/nginx -s reload
上传图片测试:
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /data/package/111.jpg
通过结果:
This is FastDFS client test program v5.05 Copyright (C) 2008, Happy Fish / YuQing FastDFS may be copied only under the terms of the GNU General
Public License V3, which may be found in the FastDFS source kit.
Please visit the FastDFS Home Page http://www.csource.org/
for more detail. [2017-04-21 17:58:52] DEBUG - base_path=/data/local/fdfs_data/client, connect_timeout=30, network_timeout=60, tracker_server_count=1, anti_steal_token=0, anti_steal_secret_key length=0, use_connection_pool=0, g_connection_pool_max_idle_time=3600s, use_storage_id=0, storage server id count: 0 tracker_query_storage_store_list_without_group:
server 1. group_name=, ip_addr=192.168.153.9, port=23000 group_name=group1, ip_addr=192.168.153.9, port=23000
storage_upload_by_filename
group_name=group1, remote_filename=M00/00/00/wKiZCVj519yAMVOkAAA_xFjVVbc000.jpg
source ip address: 192.168.153.9
file timestamp=2017-04-21 17:58:52
file size=16324
file crc32=1490376119
example file url: http://192.168.153.9:8123/group1/M00/00/00/wKiZCVj519yAMVOkAAA_xFjVVbc000.jpg
storage_upload_slave_by_filename
group_name=group1, remote_filename=M00/00/00/wKiZCVj519yAMVOkAAA_xFjVVbc000_big.jpg
source ip address: 192.168.153.9
file timestamp=2017-04-21 17:58:52
file size=16324
file crc32=1490376119
example file url: http://192.168.153.9:8123/group1/M00/00/00/wKiZCVj519yAMVOkAAA_xFjVVbc000_big.jpg
其中 'http://192.168.153.9:8123/group1/M00/00/00/wKiZCVj519yAMVOkAAA_xFjVVbc000_big.jpg'就是改图片通过nginx的访问地址。
PS:同一个group中的storage之间是平等的,相互备份。
查看FastDFS集群状态:
/usr/bin/fdfs_monitor /etc/fdfs/client.conf
删除storage节点,重新加入:
/usr/bin/fdfs_monitor /etc/fdfs/client.conf delete group1 192.168.153.9
删除一个组:
/usr/bin/fdfs_monitor /etc/fdfs/client.conf delete group2
删除完之后,重启tracker和storage
FastDFS部署的更多相关文章
- FastDFS部署安装全过程
你好!欢迎阅读我的博文,你可以跳转到我的个人博客网站,会有更好的排版效果和功能. 此外,本篇博文为本人Pushy原创,如需转载请注明出处:https://pushy.site/posts/153205 ...
- Fastdfs 部署干货
tracker server and client:192.168.1.42 storage server:192.168.1.46 storage server:192.168.1.53 安装: 安 ...
- FastDFS的配置、部署与API使用解读(7)Nginx的FastDFS模块(转)
1.Nginx的FastDFS模块什么作用? 我们在使用FastDFS部署一个分布式文件系统的时候,通过FastDFS的客户端API来进行文件的上传.下载.删除等操作.同时通过 FastDFS的HTT ...
- FastDFS为什么要结合Nginx
FastDFS为什么要结合Nginx? 我们在使用FastDFS部署一个分布式文件系统的时候,通过FastDFS的客户端API来进行文件的上传.下载.删除等操作.同时通过FastDFS的HTTP服务器 ...
- FastDFS分布式存储实战
<FastDFS分布式存储实战> 技术选型 FastDFS相关组件及原理 FastDFS介绍 FastDFS架构 FastDFS工作流程 上传 同步机制 下载 文件合并原理 实验环境说明 ...
- linux上安装fastdfs+nginx+ngin-module实践并解决多个异常篇
为什么选择Nginx Nginx 是一个很牛的高性能Web和反向代理服务器, 它具有有很多非常优越的特性: 在高连接并发的情况下,Nginx是Apache服务器不错的替代品:Nginx在美国是做虚拟主 ...
- CentOS7搭建FastDFS V5.11分布式文件系统-第三篇
1.测试 前面两篇博文已对FastDFS的安装和配置,做了比较详细的讲解.FastDFS的基础模块都搭好了,现在开始测试下载. 1.1 配置客户端 同样的,需要修改客户端的配置文件: /etc/fdf ...
- fastdfs+nginx+image_filter安装与生成缩略图
fastdfs简介 类似google FS的一个轻量级分布式文件系统,纯C实现,支持linux.FreeBSD等UNIX系统: 只能通过API访问,不支持POXIS: 文件不分块存储,上传的文件和OS ...
- fastdfs5.11+centos7.2 按照部署(三)【转载】
1.测试 前面两篇博文已对FastDFS的安装和配置,做了比较详细的讲解.FastDFS的基础模块都搭好了,现在开始测试下载. 1.1 配置客户端 同样的,需要修改客户端的配置文件: vim /etc ...
随机推荐
- No.10_分数分配
C#队一共有7名成员,因此团队贡献分一共350分. 分配方式应当反映绝大部分组员的真实贡献情况,即由贡献决定分数. 另外保证一定的奖惩措施,充分调动组员的积极性,鞭策团队向前迈进. 对于团队贡献分数的 ...
- java学习de路线建议
我想谈一谈我的一些关于网页学习的小感悟吧.之所以是写这个的原因完全是想告诉现在还处在网页学习的初始阶段的同学一些我学习走过的弯路,但我说的也仅是我个人的理解,毕竟我只能是JavaWeb开发的新手,所以 ...
- Task 4.3 求环形数组的最大子数组和
任务要求:输入一个整形数组,数组里有正数也有负数. 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. 如果数组A[0]……A[j-1]首尾相邻,允许A[i-1], …… A[n- ...
- 超实用 2 ArrayList链表之 员工工资管理系统
package ArrayList的小程序; import java.io.*; import java.util.*; public class kkk { /** * 作者:Mr.fan * 功能 ...
- vue-cli 安装时 npm 报错 errno -4048
如何解决vue-cli 安装时 npm 报错 errno -4048 第一种解决方法:以管理身份运行cmd.exe 第二种解决办法:在dos窗口输入命令 npm cache clean --fo ...
- 搭建企业级Docker Registry -- Harbor
Harbor 是一个企业级的 Docker Registry,可以实现 images 的私有存储和日志统计权限控制等功能,并支持创建多项目(Harbor 提出的概念),基于官方 Registry V2 ...
- Sql Server外键约束
一.添加约束(级联删除) 1.创建表结构时添加 create table UserDetails(id int identity(1,1) primary key,name varchar(50) n ...
- [转帖] 学习一下 apache bench 的总结简介 ( LAMP的没用过..)
PS:网站性能压力测试是性能调优过程中必不可少的一环.只有让服务器处在高压情况下才能真正体现出各种设置所暴露的问题.Apache中有个自带的,名为ab的程序,可以对Apache或其它类型的服务器进行网 ...
- 从解决一个java.lang.NoSuchMethodError想到的
今天在发布系统部署一个web app的时候,发现应用服务器(tomcat 7.0.26)不能正常启动,于是远程登陆到服务器上查看应用服务器的启动日志,在tomcat_home的logs/localho ...
- Task的运行原理和工作窃取
在net4.0以前,当调用ThreadPool.QueueUserWorkItem方法往线程池中插入作业时,会把作业内容(其实就是一个委托)放到线程池中的一个全局队列中,然后线程池中的线程按照先进先出 ...