`

FastDFS部署笔记【原创】

阅读更多
为了比对MFS, 在系统中装了FastDFS,以下是部署笔记。

1. 准备机器
Tracker: 192.168.3.127
Tracker: 192.168.3.131
Storage: 192.168.3.142  group1
         192.168.3.143  group1
Storage:192.168.3.140  group2
         192.168.3.141  group2
安装tracker
1. 下载 FastDFS_v5.03.tar.gz http://heanet.dl.sourceforge.net/project/fastdfs/FastDFS%20Server%20Source%20Code/FastDFS%20Server%20with%20PHP%20Extension%20Source%20Code%20V5.03/FastDFS_v5.03.tar.gz
注:从5.0.4之后版本,缺少文件,需要安装libfastcommon 依赖包。(可以检查FastDFS\common\logger.h是否存在判断是否缺少文件)
tar zxvf FastDFS_v5.03.tar.gz
cd FastDFS
./make.sh
./make.sh install

2. 修改配置
vim /etc/fdfs/tracker.conf
修改 base_path=/home/zjport/fastdfs
mkdir /home/zjport/fastdfs
3. 启动tracker
/usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
查看:netstat -unltp| grep fdfs
    查看日志: cat /home/zjport/fastdfs/logs/trackerd.log

4. 设置开启启动
vim /etc/rc.d/rc.local
添加 /usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf start

安装storage(3.140,3.141,3.142,3.143)
1. 与安装tracker一致
2. vim /etc/fdfs/storage.conf
修改 base_path=/home/zjport/storage
     store_path0=/home/zjport/storage
tracker_server=192.168.3.127:22122
tracker_server=192.168.3.131:22122
     group_name=group2(142,143 为group1, 140,141 为group2)
mkdir /home/zjport/storage
3. 启动storage
/usr/local/bin/fdfs_storaged /etc/fdfs/storage.conf start
查看:netstat -unltp| grep fdfs
4. 查看是否连上服务器: /usr/local/bin/fdfs_monitor /etc/fdfs/storage.conf
看到 192.168.3.142  ACTIVE 即可
5. 开机自动启动
vim /etc/rc.d/rc.local
添加: /usr/local/bin/fdfs_storaged /etc/fdfs/storage.conf start
6. 将3.140.3.141.3.143 都装上


Storage安装nginx(3.140,141,142,143)
1. 拷贝lib包并解压
tar zxf nginx-1.4.7.tar.gz
tar zxf fastdfs-nginx-module_v1.16.tar.gz
tar zxf pcre-8.39.tar.gz
tar zxf zlib-1.2.8.tar.gz
2. 安装nginx
cd nginx-1.4.7
./configure --prefix=/usr/local/nginx --add-module=/usr/local/fastdfs/fastdfs-nginx-module/src --with-pcre=/usr/local/fastdfs/pcre-8.39/ --with-zlib=/usr/local/fastdfs/zlib-1.2.8

make
make install
3. 安装模块
cp /usr/local/fastdfs/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs

4. 确认nginx安装目录
cd /usr/local/nginx

5. 修改nginx配置,添加storage信息
vim /usr/local/nginx/conf/nginx.conf
将 server 段中的 listen 端口号改为 8080 :
listen 8080;
在 server 段中添加:
location ~/group[1-2]/M00 {
root /home/zjport/storage/data;
ngx_fastdfs_module;
}

vim /etc/fdfs/mod_fastdfs.conf
修改 base_path=/home/zjport/storage
     store_path0=/home/zjport/storage
tracker_server=192.168.3.127:22122
tracker_server=192.168.3.131:22122
     group_name=group2(142,143 为group1, 140,141 为group2)
url_have_group_name = true
http.need_find_content_type=true
group_count = 2
添加
[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/home/zjport/storage
[group2]
group_name=group2
storage_server_port=23000
store_path_count=1
   store_path0=/home/zjport/storage

建立存储链接
ln -s /home/zjport/storage/data /home/zjport/storage/data/M00
chmod -R 777 /home/zjport/
6. 运行nginx
/usr/local/nginx/sbin/nginx
查看启动日志:  cat /usr/local/nginx/logs/error.log

7. 设置开机启动
vim /etc/rc.d/rc.local
添加 /usr/local/nginx/sbin/nginx
Tracker安装nginx(3.127)
1. 拷贝lib包并解压
tar zxf nginx-1.4.7.tar.gz
tar zxf ngx_cache_purge-2.3.tar.gz
tar zxf pcre-8.39.tar.gz
tar zxf zlib-1.2.8.tar.gz

2. 安装
cd nginx-1.4.7
./configure --prefix=/usr/local/nginx --add-module=/usr/local/fastdfs/ngx_cache_purge-2.3 --with-pcre=/usr/local/fastdfs/pcre-8.39/ --with-zlib=/usr/local/fastdfs/zlib-1.2.8

make
make install

3. 修改配置
vim /usr/local/nginx/conf/nginx.conf
#user  nobody;
worker_processes 2; #根据 CPU 核心数而定
events {
worker_connections 65535; # 最大链接数
use epoll; # 新版本的 Linux 可使用 epoll 加快处理性能
}
http {
# 设置缓存参数
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 300m;
sendfile on;
tcp_nopush on;
proxy_redirect off;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
# 设置缓存存储路径、存储方式、分配内存大小、磁盘最大空间、缓存期限
proxy_cache_path /var/cache/nginx/proxy_cache levels=1:2
keys_zone=http-cache:500m max_size=10g inactive=30d;
proxy_temp_path /var/cache/nginx/proxy_cache/tmp;
# 设置 group1 的服务器
upstream fdfs_group1 {
server 192.168.3.142:8080 weight=1 max_fails=2 fail_timeout=30s;
server 192.168.3.143:8080 weight=1 max_fails=2 fail_timeout=30s;
}
# 设置 group2 的服务器
upstream fdfs_group2 {
server 192.168.3.140:8080 weight=1 max_fails=2 fail_timeout=30s;
server 192.168.3.141:8080 weight=1 max_fails=2 fail_timeout=30s;
}
server {
# 设置服务器端口
listen 8080;
# 设置 group1 的负载均衡参数
location /group1/M00 {
proxy_next_upstream http_502 http_504 error timeout invalid_header;
proxy_cache http-cache;
proxy_cache_valid 200 304 12h;
proxy_cache_key $uri$is_args$args;
proxy_pass http://fdfs_group1;
expires 30d;
}
# 设置 group2 的负载均衡参数
location /group2/M00 {
proxy_next_upstream http_502 http_504 error timeout invalid_header;
proxy_cache http-cache;
proxy_cache_valid 200 304 12h;
proxy_cache_key $uri$is_args$args;
proxy_pass http://fdfs_group2;
expires 30d;
}
# 设置清除缓存的访问权限
location ~ /purge(/.*) {
allow 127.0.0.1;
allow 192.168.3.0/24;
proxy_cache_purge http-cache $1$is_args$args;
}
}
}
4. 创建存储目录
mkdir /home/zjport/storage
mkdir -p /var/cache/nginx/proxy_cache
chmod -R 777 /var/cache/
chmod -R 777 /home/zjport/
5. 修改配置
vim /etc/fdfs/client.conf
base_path=/home/zjport/storage # 日志存放路径
tracker_server=192.168.3.127:22122 #tracker 服务器 IP 地址和端口号
tracker_server=192.168.3.131:22122
http.tracker_server_port=8080 #tracker 服务器的 http 端口号
6. 运行nginx
/usr/local/nginx/sbin/nginx
7. 上传文件测试
/usr/local/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/nginx/s.png
返回: group1/M00/00/00/wKgDj1eFq8SAVScTAACE1CpbOR0868.png
8. 使用浏览器访问
http://192.168.3.127:8080/group1/M00/00/00/wKgDj1eFq8SAVScTAACE1CpbOR0868.png
9. 设置开机启动
vim /etc/rc.d/rc.local
添加 /usr/local/nginx/sbin/nginx


10. 查看缓存情况
ll /var/cache/nginx/proxy_cache/ -R
清除缓存只需在url前加purge就行(nginx中有配置).
http://192.168.3.127:8080/purge/group1/M00/00/00/wKgDj1eFq8SAVScTAACE1CpbOR0868.png


监控
/usr/local/bin/fdfs_monitor /etc/fdfs/client.conf


JAVA 客户端调用
1. 下载 fastdfs_client_java._v1.25.tar.gz
http://ufpr.dl.sourceforge.net/project/fastdfs/Java%20Client%20API%20Source%20Code/Java%20Client%20API%20Source%20Code%20V1.25/fastdfs_client_java._v1.25.tar.gz
2. 解压并导入eclipse
3. 运行 Test1.java 测试, 注意修改TrackerGroup的地址 和 fdfs_client.conf 配置
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    fastDFS部署.docx

    FastDFS部署指南 FastDFS是一个开源的分布式文件系统,提供了高性能、可靠的文件存储和管理解决方案。下面将详细介绍FastDFS的部署过程。 安装依赖项 在安装FastDFS之前,需要安装一些依赖项,包括vim、gcc、make...

    fastdfs文件上传下载笔记

    fastdfs文件上传下载笔记,fastdfs文件上传下载笔记,fastdfs文件上传下载笔记,fastdfs文件上传下载笔记,fastdfs文件上传下载笔记,fastdfs文件上传下载笔记,fastdfs文件上传下载笔记,fastdfs文件上传下载笔记,...

    FastDFS部署教程

    ### FastDFS部署教程 #### 一、FastDFS简介 **FastDFS**是一款使用C语言编写的开源分布式文件系统,特别适合于互联网环境下的文件管理和存储需求。它充分考虑了诸如冗余备份、负载均衡以及线性扩展等特性,并且...

    FastDFS部署教程及安装FastDfsWORD文档.txt

    FastDFS部署教程及安装FastDfsWORD文档,部署视频教程,本人亲测可用!!!!!!!!!!!!!!

    centos6.7安装fastdfs docker部署

    CentOS 6.7 安装 FastDFS Docker 部署 在本文中,我们将详细介绍 CentOS 6.7 下安装 FastDFS 文件服务器和 Docker 容器集群的过程。 1. 安装 JDK 1.8 在安装 FastDFS 之前,我们需要首先安装 JDK 1.8。在 CentOS ...

    fastdfs部署安装文档.pdf

    FastDFS 是一个开源的高性能分布式文件系统(DFS)。 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡。主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4KB )为载体的在线服务...

    fastDFS部署.rar

    《FastDFS深度解析与部署实践》 FastDFS是一款开源的高性能、轻量级的分布式文件系统,由C语言编写,专为互联网应用设计,能够解决大量数据存储问题。它的主要功能包括文件存储、文件同步、文件访问(文件上传、...

    fastdfs部署

    **FastDFS部署详解** FastDFS是一款开源的高性能、轻量级的分布式文件系统,它对文件进行管理,包括文件存储、文件同步、文件访问(文件上传、文件下载)等功能,解决了大容量存储和负载均衡的问题。本文将详细介绍...

    FastDFS部署所需安装包

    在Linux环境下部署FastDFS,我们需要准备一些必要的安装包和进行一系列的配置步骤。以下是关于FastDFS部署的知识点详解: 一、FastDFS的特性与应用 1. 高性能:FastDFS设计简洁,优化了数据存储和访问,使其具有较...

    FastDFS部署与迁移

    ### FastDFS部署与迁移知识点详解 #### 一、FastDFS简介及系统角色解析 FastDFS是一种开源的分布式文件系统,其设计目标是为了处理大规模互联网应用中的文件存储问题。FastDFS系统主要包括三种角色:跟踪服务器...

    FastDFS开发笔记(配置,安装,开发)

    它轻量级、易部署、支持高并发,能够有效地解决传统文件服务器在面对大量文件存储时的性能瓶颈问题。 **FastDFS核心组件** 1. **Tracker Server**:跟踪服务器,负责调度文件存储和文件下载的路由,处理客户端的...

    fastDFS分布式文件系统部署方案

    【FastDFS分布式文件系统部署方案】 FastDFS是一个开源的高性能分布式文件系统,它专注于解决海量数据存储的问题,尤其适用于中小文件(建议大小在4KB到500MB之间)的在线服务。FastDFS提供了文件存储、文件同步和...

    FastDFS部署规范

    ### FastDFS部署规范详解 #### 一、FastDFS概述 FastDFS是一个开源的轻量级分布式文件系统,专为大规模在线文件服务设计。其主要功能包括文件存储、文件同步、文件访问(即文件上传和下载),能有效解决大容量存储...

    FastDFS部署文档

    FastDFS部署文档,环境为Ubuntu,搭配语言为PHP,实测成功。 文档中略去了配置第一步解压fastdfs压缩包并执行./make.sh和./mash.sh install。 我在配置时失败一次,原因为storage.conf中的tracker_server的地址写错...

    FastDFS学习笔记

    FastDFS是一种轻量级的分布式文件系统,专为互联网设计,用于解决大容量存储和负载均衡问题。它具有高可用性、高性能、易部署和使用的特点,尤其在处理大量小文件场景下表现突出。以下是对FastDFS核心概念、工作原理...

    Fastdfs集群部署方案.docx

    本文档将详细介绍如何在生产环境中部署Fastdfs集群,包括设置跟踪节点(Tracker)和存储节点(Storage),以及相关的配置和优化。 一、Fastdfs集群部署 1. 跟踪节点部署 跟踪节点主要负责调度存储节点,管理文件元...

    fastDFS文件系统搭建

    ### FastDFS 文件系统搭建知识点详解 #### 一、概述 ...随着对FastDFS理解的深入和技术的不断进步,可以进一步探索和实现更多高级特性,如多Tracker、分布式部署、负载均衡等,以满足更高层次的需求。

    Fastdfs搭建资料

    FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站...

    FastDFS集群的简介、部署与参数调优

    FastDFS集群的简介、部署与参数调优 FastDFS是基于开源的分布式文件系统,主要用于解决大型企业级应用程序中的文件存储问题。 FastDFS集群的主要特点是高可用性、高性能、可扩展性和高可靠性。 FastDFS集群的架构...

Global site tag (gtag.js) - Google Analytics