`
rensanning
  • 浏览: 3552568 次
  • 性别: Icon_minigender_1
  • 来自: 大连
博客专栏
Efef1dba-f7dd-3931-8a61-8e1c76c3e39f
使用Titanium Mo...
浏览量:38217
Bbab2146-6e1d-3c50-acd6-c8bae29e307d
Cordova 3.x入门...
浏览量:607594
C08766e7-8a33-3f9b-9155-654af05c3484
常用Java开源Libra...
浏览量:682774
77063fb3-0ee7-3bfa-9c72-2a0234ebf83e
搭建 CentOS 6 服...
浏览量:89528
E40e5e76-1f3b-398e-b6a6-dc9cfbb38156
Spring Boot 入...
浏览量:402129
Abe39461-b089-344f-99fa-cdfbddea0e18
基于Spring Secu...
浏览量:69760
66a41a70-fdf0-3dc9-aa31-19b7e8b24672
MQTT入门
浏览量:91835
社区版块
存档分类
最新评论

搭建分布式文件存储服务(FastDFS)

 
阅读更多
服务器规划如下:

引用
-跟踪服务器
    192.168.21.231 fdfs_tracker(22122)
-存储服务器
    192.168.21.232 nginx(mod_fdfs)(8888) fdfs_storage(23000)
    192.168.21.233 nginx(mod_fdfs)(8888) fdfs_storage(23000)
-客户端
    192.168.21.231 fdfs_client
-下载网关
    192.168.21.231 nginx(80)


(0)系统设置
# vi /etc/sysconfig/network-scripts/ifcfg-eth0 
# systemctl stop NetworkManager
# systemctl disable NetworkManager
# service network restart

# vi /etc/sysctl.d/disable_ipv6.conf
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
# sysctl -p/etc/sysctl.d/disable_ipv6.conf
# ip a

# vi /etc/sysconfig/selinux
SELINUX=disabled

# systemctl stop firewalld
# systemctl disable firewalld 
 
# yum -y install gcc gcc-c++ kernel-devel pcre pcre-devel make libevent perl perl-devel gzip gzip-devel openssl-devel libxml2-devel wget unzip net-tools

# yum clean all
# yum makecache

# useradd fastdfs -M -s /sbin/nologin
# useradd nginx -M -s /sbin/nologin

# shutdown -r now


(1)安装FastDFS依赖包libfastcommon
# cd /usr/local/src
# wget https://github.com/happyfish100/libfastcommon/archive/master.zip --no-check-certificate -O libfastcommon-master.zip
# unzip libfastcommon-master.zip
# cd libfastcommon-master
# ./make.sh && ./make.sh install
    mkdir -p /usr/lib64
    mkdir -p /usr/lib
    install -m 755 libfastcommon.so /usr/lib64
    install -m 755 libfastcommon.so /usr/lib
    mkdir -p /usr/include/fastcommon


(2)安装FastDFS
# cd /usr/local/src
# wget https://github.com/happyfish100/fastdfs/archive/V5.09.tar.gz --no-check-certificate -O fastdfs-V5.09.tar.gz
# tar -zxvf fastdfs-V5.09.tar.gz
# cd fastdfs-5.09
# ./make.sh && ./make.sh install

# ll /etc/init.d/ |grep fdfs
    -rwxr-xr-x  1 root root   918 Mar 17 15:32 fdfs_storaged
    -rwxr-xr-x  1 root root   920 Mar 17 15:32 fdfs_trackerd
# ll /etc/fdfs/
    -rw-r--r-- 1 root root 1461 Mar 17 15:32 client.conf.sample
    -rw-r--r-- 1 root root 7927 Mar 17 15:32 storage.conf.sample
    -rw-r--r-- 1 root root  105 Mar 17 15:32 storage_ids.conf.sample
    -rw-r--r-- 1 root root 7318 Mar 17 15:32 tracker.conf.sample
# ll /usr/bin|grep fdfs
    -rwxr-xr-x  1 root root    315495 Mar 17 15:32 fdfs_appender_test
    -rwxr-xr-x  1 root root    315272 Mar 17 15:32 fdfs_appender_test1
    -rwxr-xr-x  1 root root    302120 Mar 17 15:32 fdfs_append_file
    -rwxr-xr-x  1 root root    301780 Mar 17 15:32 fdfs_crc32
    -rwxr-xr-x  1 root root    302179 Mar 17 15:32 fdfs_delete_file
    -rwxr-xr-x  1 root root    302914 Mar 17 15:32 fdfs_download_file
    -rwxr-xr-x  1 root root    302504 Mar 17 15:32 fdfs_file_info
    -rwxr-xr-x  1 root root    316333 Mar 17 15:32 fdfs_monitor
    -rwxr-xr-x  1 root root   1102214 Mar 17 15:32 fdfs_storaged
    -rwxr-xr-x  1 root root    325431 Mar 17 15:32 fdfs_test
    -rwxr-xr-x  1 root root    320552 Mar 17 15:32 fdfs_test1
    -rwxr-xr-x  1 root root    448889 Mar 17 15:32 fdfs_trackerd
    -rwxr-xr-x  1 root root    303106 Mar 17 15:32 fdfs_upload_appender
    -rwxr-xr-x  1 root root    304126 Mar 17 15:32 fdfs_upload_file


(3)配置跟踪服务器
# mkdir -p /data/fastdfs/tracker

# cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
# vi /etc/fdfs/tracker.conf
disabled=false
port=22122
base_path=/data/fastdfs/tracker

# cp /usr/local/src/fastdfs-5.09/conf/http.conf /etc/fdfs/
# cp /usr/local/src/fastdfs-5.09/conf/mime.types /etc/fdfs/

# /etc/init.d/fdfs_trackerd start
# netstat -unltp|grep fdfs
# ls /data/fastdfs/tracker/
# cat /data/fastdfs/tracker/logs/trackerd.log


(4)配置存储服务器
# mkdir -p /data/fastdfs/storage

# cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
# vi /etc/fdfs/storage.conf
disabled=false
port=23000
http.server_port=8888
base_path=/data/fastdfs/storage
store_path0=/data/fastdfs/storage
tracker_server=192.168.21.231:22122

# cp /usr/local/src/fastdfs-5.09/conf/http.conf /etc/fdfs/
# cp /usr/local/src/fastdfs-5.09/conf/mime.types /etc/fdfs/

# /etc/init.d/fdfs_storaged start
# netstat -unltp|grep fdfs
# ls /data/fastdfs/storage


(5)配置客户端
# cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
# vi /etc/fdfs/client.conf
base_path=/data/fastdfs/tracker
tracker_server=192.168.21.231:22122


文件上传下载测试
# /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/src/fastdfs-5.09/README.md
group1/M00/00/00/wKgV6FjLk9eAMFQOAAAJTOwCGr42261.md
# cd /tmp
# /usr/bin/fdfs_download_file /etc/fdfs/client.conf group1/M00/00/00/wKgV6FjLk9eAMFQOAAAJTOwCGr42261.md fastdfs-5.09-README.md


(6)存储服务器安装nginx(mod_fdfs)
# cd /usr/local/src
# wget https://github.com/happyfish100/fastdfs-nginx-module/archive/master.zip --no-check-certificate -O fastdfs-nginx-module-master.zip
# unzip fastdfs-nginx-module-master.zip

# cd /usr/local/src
# wget http://nginx.org/download/nginx-1.9.9.tar.gz -O nginx-1.9.9.tar.gz
# tar -zxvf nginx-1.9.9.tar.gz
# cd nginx-1.9.9
# ./configure --prefix=/usr/local/nginx-1.9.9 --add-module=../fastdfs-nginx-module-master/src
# make && make install
# ln -s /usr/local/nginx-1.9.9 /usr/local/nginx

# cp -r /usr/local/src/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/
# vi /etc/fdfs/mod_fastdfs.conf
connect_timeout=10
base_path=/tmp
tracker_server=192.168.21.231:22122
storage_server_port=23000
url_have_group_name=true
store_path0=/data/fastdfs/storage
group_name=group1

# vi /usr/local/nginx/conf/nginx.conf
server {
      listen       8888;

      location ~/group[0-9]/ {
            ngx_fastdfs_module;
      }
}

# /usr/local/nginx/sbin/nginx
# netstat -unltp|grep nginx


以上步骤安装两台服务器(192.168.21.232、192.168.21.233)

确认nginx
http://192.168.21.232:8888/
Welcome to nginx!
http://192.168.21.233:8888/
Welcome to nginx!

确认文件:
http://192.168.21.232:8888/group1/M00/00/00/wKgV6FjLk9eAMFQOAAAJTOwCGr42261.md
http://192.168.21.233:8888/group1/M00/00/00/wKgV6FjLk9eAMFQOAAAJTOwCGr42261.md

(7)下载网关安装nginx
# cd /usr/local/src
# wget http://nginx.org/download/nginx-1.9.9.tar.gz -O nginx-1.9.9.tar.gz
# tar -zxvf nginx-1.9.9.tar.gz
# cd nginx-1.9.9
# ./configure --prefix=/usr/local/nginx-1.9.9
# make && make install
# ln -s /usr/local/nginx-1.9.9 /usr/local/nginx

# vi /usr/local/nginx/conf/nginx.conf
upstream fdfs {
    server   192.168.21.232:8888;
    server   192.168.21.233:8888;
}
server {
    location ~/group[0-9]/ {
        proxy_pass http://fdfs;
    }
}

# /usr/local/nginx/sbin/nginx
# netstat -unltp|grep nginx


确认文件:
http://192.168.21.231/group1/M00/00/00/wKgV6FjLk9eAMFQOAAAJTOwCGr42261.md

以上就安装完成了,可以客户端再次上传图片测试各服务器是否同步:

# /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /tmp/test.jpg
group1/M00/00/00/wKgV6VjLmKGAEGocAAJmqsSfEXA036.jpg


确认文件:
http://192.168.21.232:8888/group1/M00/00/00/wKgV6VjLmKGAEGocAAJmqsSfEXA036.jpg
http://192.168.21.233:8888/group1/M00/00/00/wKgV6VjLmKGAEGocAAJmqsSfEXA036.jpg
http://192.168.21.231/group1/M00/00/00/wKgV6VjLmKGAEGocAAJmqsSfEXA036.jpg
分享到:
评论

相关推荐

    07_搭建分布式文件系统_FASTDFS.docx

    FastDFS作为一个高性能的分布式文件系统,在图片、视频等大规模文件的存储和访问方面表现优异。通过对FastDFS的基本概念、工作原理、架构设计、安装配置等方面的详细介绍,我们可以更加深入地理解其优势所在,进而为...

    分布式文件系统FastDFS搭建.pdf

    分布式文件系统FastDFS是一种用C语言编写、开源的分布式文件系统,专门为互联网应用量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,追求高可用和高性能的文件存储服务。FastDFS架构由Tracker服务器和...

    FastDFS 分布式文件系统

    "**FastDFS角色配置参数导图.jpg**"和"**FastDFS分布式搭建.pdf**"可能包含了详细的配置参数和搭建步骤。例如,Tracker和Storage的启动配置、连接超时设置、网络通信协议选择等。 ### 8. 相关资源 "**FastDFS.pdf*...

    分布式文件系统FastDFS架构剖析

    对于开发者来说,掌握FastDFS的使用和原理,有助于构建更稳定、高效的分布式存储系统。 综上所述,FastDFS是一个优秀的分布式文件系统解决方案,尤其适用于处理大量小文件的场景。通过深入学习和实践,我们可以利用...

    FastDFS需要的配置需要软件和配置说明

    总之,FastDFS、Nginx和FastDFS-nginx-module的整合能构建一个强大的文件服务系统,提供高可用性和高性能的文件存储与访问。对于大型网站或需要处理大量小文件的业务来说,这是一个理想的解决方案。在配置过程中,...

    分布式文件系统FastDFS详解

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

    FastDFS分布式文件系统 v6.12.0.zip

    2. 分布式:通过 Tracker服务器和Storage服务器的配合,实现了文件的分布式存储,可动态扩展存储节点,具备良好的扩展性。 3. 负载均衡:Tracker服务器负责调度Storage服务器,实现文件上传、下载的负载均衡。 4. ...

    SpringBoot 结合分布式文件系统FastDFS实现文件上传实例demo2.zip

    FastDFS是一个高性能、轻量级的分布式文件系统,它对文件进行管理,包括文件存储、文件同步、文件访问(文件上传、文件下载)等功能,解决了大容量存储和负载均衡的问题。FastDFS将文件存储在服务器集群上,通过...

    FastDFS分布式文件系统.docx

    9.能够掌握FastDFS文件合并存储机制 10.能够掌握FastDFS图片压缩机制 11.能够理解FastDFS快速定位文件机制 后期课程: 1、es 2、RocketMQ 3、授权中心 (非对称加密(公钥私钥),JWT) 4、分布式事务 5、...

    FastDFS+Nginx.doc

    【FastDFS+Nginx】搭建分布式文件存储服务 FastDFS是一个轻量级的开源分布式文件系统,专为解决大容量文件存储和高并发访问而设计。它提供了负载均衡功能,并支持存储服务器在线扩容,实现软件RAID,节省磁盘空间。...

    轻量级分布式文件系统fastdfs_client-1.25.jar

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

    FastDFS 分布式文件系统搭建.zip

    FastDFS是一种轻量级的开源分布式文件系统,主要用于解决大容量存储和负载均衡的问题。它在互联网行业中广泛应用于...通过以上步骤,你可以成功搭建一个基本的FastDFS集群,为你的业务提供可靠、高效的文件存储服务。

    FastDFS_v5.05_分布式文件系统--集群的安装、配置、使用

    FastDFS是一个轻量级的开源分布式文件系统,主要用于解决大规模数据存储问题,尤其是在互联网应用环境下,能够有效地处理高并发访问及海量文件存储的需求。其核心功能包括文件的存储、同步和访问(上传、下载等),...

    分布式文件系统FastDFS对文件管理,解决了大容量存储和负载均衡的问题.docx

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

    fastDFS分布式文件服务搭建安装包

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

    基于Python + Fastdfs + Nginx + Mysql 的分布式文件存储平台.zip

    在本项目中,Fastdfs负责文件的实际存储和访问,提供文件的上传、下载服务,并且能实现文件的分布式存储,提高系统的扩展性。 【Nginx】 Nginx是一款高性能的HTTP和反向代理服务器,广泛用于网站的负载均衡和静态...

    fastDFS文件系统搭建

    - **后续规划**:计划搭建分布式环境、性能优化及考虑多Tracker、分布式部署、负载均衡、URL请求缓存技术等高级特性。 ##### 2.2 服务器与资源准备 - **服务器信息**:Server1 IP地址为172.17.210.229 - **相关...

    毕业设计:基于Python+Fastdfs的分布式文件存储系统.zip

    【标题】:“毕业设计:基于...在这个毕设项目中,学生可能会学到如何使用Python进行网络编程,理解分布式系统的设计原理,以及如何实际操作和维护一个Fastdfs文件系统。这是一次全面了解和实践分布式存储的好机会。

Global site tag (gtag.js) - Google Analytics