`
flychao88
  • 浏览: 753263 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

如何安装FastDFS

 
阅读更多

 

目前FastDFS支持类Unix系统 ,在Linux和FreeBSD下测试过,本文使用的是Ubuntu10.4,建议安装之前先简单了解一下FastDFS的原理 ,这对后继的配置部分会有很好的理解。

一、准备工作-安装libevent

FastDFS 内部绑定了 libevent 作为 http 服务器 ,在V2.X版本必须安装 libevent ,本文安装的是V2.2版本,因此必须安装libevent。(官方也推荐使用 http 方式下载 文件 

如果已经安装了 libevent,请确认安装路径是 /usr , 因为 FastDFS 在编译源程序时,需要到此目录下查找一些依赖文件,否则编译 FastDFS 会出错 。如果不是,建议首先卸载 libevent ,然后安装到 /usr 下。Ubuntu10.4默认是安装了libevent,可以到软件中心卸载掉然后按照下面介绍的方式安装。

安装步骤:
解压 libevent ,然后进入解压后的目录分别执行:

Shell代码 
  1. ./configure --prefix=/usr  
  2. make clean;  
  3. make  
  4. make install  

 安装libevent完成。

 

二、安装 FastDFS

1、下载 FastDFS 源程序 

2、在 FastDFS_v4.05.tar.gz 所在文件夹下执行:

Shell代码 
  1. sudo tar vxzf FastDFS_v4.05.tar.gz /home/soar/FastDFS  

     注: /home/soar/FastDFS 也可以是其他目录,记住这是解压目录,以后用 %FastDFS% 表示)


3、由于要使用内置的 http 服务,因此编辑 %FastDFS%/make.sh 文件,找到
#WITH_HTTPD=1 
修改成
WITH_HTTPD=1 
以支持 http

4、进入 %FastDFS% 目录,执行:

Shell代码   收藏代码
  1. sudo ./make.sh  

 

5、在 %FastDFS% 目录下,执行:

Shell代码 
  1. sudo ./make.sh install  

 

如果运行如上命令后,在命令行信息最后看到类似

Shell代码 
  1. #ln -fs /usr/local/lib/libfastcommon.so.1 /usr/local/lib/libfastcommon.so  
  2. #ln -fs /usr/local/lib/libfdfsclient.so.1 /usr/local/lib/libfdfsclient.so  
  3. sh ./fdfs_link_library.sh  

 

恭喜你,已经安装成功了!

 

 

FastDFS的配置文件在%FastDFS%/conf目录下,其中包括
Client.conf    客户端上传配置文件
Storage.conf    文件存储服务器配置文件
Tracker.conf    负责均衡调度服务器配置文件
http.conf        http服务器配置文件

配置文件需要根据服务器环境的不同,进行不同的配置,具体可以参考FastDFS官方的安装配置文档http://code.google.com/p/fastdfs/wiki/Setup,以及FastDFS原理介绍文档http://code.google.com/p/fastdfs/wiki/Overview

在本例中,Tracker Server,Storage Server都安装在一台服务器上,IP:10.0.2.15

1、配置及启动Tracker Server

A、修改%FastDFS%/conf/tracker.conf文件,修改如下
#可以自己指定目录位置,但目录必须存在,用于存储日志及storage server等信息,否则tracker server无法启动

Txt代码 
  1. base_path=/home/yuqing/fastdfs -> base_path=/home/soar/fastdfs_tracker   

 #改成你想要的http端口,将来http下载文件的端口就是他了

Txt代码 
  1. http.server_port=8080 -> http.server_port=8090   

 #http支持

Txt代码   收藏代码
  1. ##include http.conf -> #include http.conf   

 #默认4GB,如果空间不足,建议调小,否则会报no free space的异常,无法正常启动

Txt代码   收藏代码
  1. reserved_storage_space = 4GB -> reserved_storage_space = 1GB    

 #tracker server对storage server供服务的端口,使用默认的即可,也可以自定义

Txt代码 
  1. port=22122  

 

B、将http.conf文件拷贝到/etc/fdfs目录下,执行

Shell代码 
  1. sudo cp %FastDFS%/conf/http.conf /etc/fdfs/  

 注:为了支持http,必须将这个文件拷贝到此目录,否则无法启动,报param http.XXX not exist or is empty类似的错误


C、进入/usr/local/bin/目录,启动tracker服务器,执行

Shell代码 
  1. sudo fdfs_trackerd %FastDFS%/conf/tracker.conf  

 
D、进入/home/soar/fastdfs_tracker/logs/trackerd.log查看tracker的启动日志,如果看到类似

Shell代码 
  1. [2010-11-04 16:21:25] INFO - FastDFS v2.02, base_path=/home/soar/fastdfs_tracker, connect_timeout=30s, network_timeout=60s, port=22122, bind_addr=, max_connections=256, work_threads=4, store_lookup=2, store_group=, store_server=0, store_path=0, reserved_storage_space=4MB, download_server=0, allow_ip_count=-1, sync_log_buff_interval=10s, check_active_interval=120s, thread_stack_size=64 KB, storage_ip_changed_auto_adjust=1, storage_sync_file_max_delay=86400s, storage_sync_file_max_time=300s  
  2. [2010-11-04 16:21:25] INFO - HTTP supported: server_port=8090, default_content_type=application/octet-stream, anti_steal_token=0, token_ttl=0s, anti_steal_secret_key length=0, token_check_fail content_type=, token_check_fail buff length=0, check_active_interval=30, check_active_type=tcp, check_active_uri=/status.html  

 

恭喜你,tracker server已经启动成功!

2、配置及启动Storage Server

A、修改%FastDFS%/conf/storage.conf文件,修改如下:
#可以自定义,但必须存在此目录,用于存储storage相关的log、group内的相关信息

Txt代码 
  1. base_path=/home/yuqing/fastdfs -> /home/soar/fastdfs_storge  

#文件的存储位置,在一台storage server上可以指定多个存储位置

Txt代码 
  1. store_path0=/home/yuqing/fastdfs -> store_path0=/home/soar/fastdfs_storge   

 #必须指定

Txt代码 
  1. group_name=group1   

 #修改成tracker server的IP和端口信息

Txt代码 
  1. tracker_server=192.168.209.121:22122 -> tracker_server=10.0.2.15:22122  

 #http支持

Txt代码 
  1. ##include http.conf ->#include http.conf   

 

B、进入/usr/local/bin/目录,启动storage服务器,执行

Shell代码 
  1. sudo fdfs_storaged %FastDFS%/conf/storage.conf  

 

C、进入/home/soar/fastdfs_tracker/logs/storage.log查看storage服务器启动日志,如果看到类似

Shell代码 
  1. [2010-11-04 16:37:16] INFO - FastDFS v2.02, base_path=/home/soar/fastdfs_storge, store_path_count=1, subdir_count_per_path=256, group_name=group1, connect_timeout=30s, network_timeout=60s, port=23000, bind_addr=, client_bind=1, max_connections=256, work_threads=4, disk_rw_separated=1, disk_reader_threads=1, disk_writer_threads=1, buff_size=256KB, heart_beat_interval=30s, stat_report_interval=60s, tracker_server_count=1, sync_wait_msec=200ms, sync_interval=0ms, sync_start_time=00:00, sync_end_time=23:59, write_mark_file_freq=500, allow_ip_count=-1, file_distribute_path_mode=0, file_distribute_rotate_count=100, fsync_after_written_bytes=0, sync_log_buff_interval=10s, sync_binlog_buff_interval=60s, sync_stat_file_interval=300s, thread_stack_size=512 KB, upload_priority=10, if_alias_prefix=, check_file_duplicate=0, FDHT group count=0, FDHT server count=0, FDHT key_namespace=, FDHT keep_alive=0, HTTP server port=8888, domain name=  
  2. [2010-11-04 16:37:16] INFO - HTTP supported: server_port=8888, http_trunk_size=262144, default_content_type=application/octet-stream, anti_steal_token=0, token_ttl=0s, anti_steal_secret_key length=0, token_check_fail content_type=, token_check_fail buff length=0  
  3. [2010-11-04 16:37:16] INFO - file: storage_param_getter.c, line: 48, storage_ip_changed_auto_adjust=1  
  4. [2010-11-04 16:37:19] INFO - file: tracker_client_thread.c, line: 274, successfully connect to tracker server 10.0.2.15:22122, as a tracker client, my ip is 10.0.2.15  

 

恭喜你,storage server已经启动成功!

 

 

经过前面的安装、配置、启动,马上就可以看到FastDFS的效果了,我们先上传一个文件,然后再通过http下载。

一、上传文件

FastDFS安装包中,自带了客户端程序,通过程序可以进行文件上传。在使用这个客户端程序之前,首先需要配置client.conf,然后再进行文件上传及下载。

 

1、修改%FastDFS%/conf/client.conf文件,修改如下:
#可自定义,但此目录必须存在,用于存放文件上传log

Txt代码   收藏代码
  1. base_path=/home/yuqing/fastdfs-> base_path=/home/soar/fastdfs_tracker  
Txt代码   收藏代码
  1. tracker_server=192.168.209.121:22122 -> tracker_server=10.0.2.15:22122  
Txt代码   收藏代码
  1. http.tracker_server_port=8080 ->http.tracker_server_port=8090  

 #支持http

Txt代码   收藏代码
  1. ##include http.conf ->#include http.conf   

 

2、进入/usr/local/bin/目录,上传文件,执行

Txt代码   收藏代码
  1. sudo fdfs_test %FastDFS%/conf/client.conf upload a.txt   

注:a.txt可以在/usr/local/bin/目录下自己创建一个

 

如果命令行反馈类似如下:

则说明上传文件成功。

 

 

关于fastdfs集群和备份配置

 

    1、修改tracker.conf文件中store_lookup=2 平衡负载

 

    2、修改tracker.conf文件中store_server=0 采用轮询方式。

 

       如果希望只使用一台文件存储服务器,其他二台做备份,则修改文件tracker_server为某台主机的IP,只启动文件存储服务器的tracker,其他二台备份服务器不需要启动tracker

 

    如果希望三台服务器集群使用,互相备份,比如:使用A机器存储文件,这时候A机器会将文件同步到B机器和C机器,同理使用B机器存储文件,则会同时将文件同步到A机器和C机器。这时候需要将所有的机器IP和端口号

 

都配置在storage.conf中,如下所示:

 tracker_server=10.207.16.127:22122

        tracker_server=10.207.16.129:22122

 

分享到:
评论
3 楼 sunlightcs 2014-03-26  
http://doc.baba.io/subject/318   这个文档不错了,是FastDFS5.01的安装
2 楼 flychao88 2013-11-06  
`fdfs_trackerd
No such file or directory


fdfs_storaged
No such file or directory

我看你的信息上面显示上面二个错,这二个目录提示找不到,需要选建立目录,如果建立好了以后,没有再报错就是安装成功
1 楼 IT民工% 2013-11-05  
运行命令后出现如下信息:是安装成功了吗?

kernel@ubuntu:~/Desktop/FastDFS$ sudo ./make.sh install
mkdir -p /usr/local/bin
mkdir -p /etc/fdfs
cp -f fdfs_trackerd  /usr/local/bin
cp: cannot stat `fdfs_trackerd': No such file or directory
make: *** [install] Error 1
mkdir -p /usr/local/bin
mkdir -p /etc/fdfs
cp -f fdfs_storaged  /usr/local/bin
cp: cannot stat `fdfs_storaged': No such file or directory
make: *** [install] Error 1
mkdir -p /usr/local/bin
mkdir -p /etc/fdfs
mkdir -p /usr/local/lib
cp -f fdfs_monitor fdfs_test fdfs_test1 fdfs_crc32 fdfs_upload_file fdfs_download_file fdfs_delete_file fdfs_file_info fdfs_appender_test fdfs_appender_test1 fdfs_append_file fdfs_upload_appender /usr/local/bin
if [ 0 -eq 1 ]; then cp -f libfastcommon.a libfdfsclient.a /usr/local/lib; fi
if [ 1 -eq 1 ]; then cp -f libfastcommon.so.1 libfdfsclient.so.1 /usr/local/lib; fi
if [ 1 -eq 1 ]; then ln -fs /usr/local/lib/libfastcommon.so.1 /usr/local/lib/libfastcommon.so; fi
if [ 1 -eq 1 ]; then ln -fs /usr/local/lib/libfdfsclient.so.1 /usr/local/lib/libfdfsclient.so; fi
if [ ! -f /etc/fdfs/client.conf ]; then cp -f ../conf/client.conf ../conf/http.conf /etc/fdfs; fi
mkdir -p /usr/local/include
mkdir -p /usr/local/include/fastcommon
mkdir -p /usr/local/include/fastdfs
cp -f ../common/common_define.h ../common/hash.h ../common/chain.h ../common/logger.h ../common/base64.h ../common/shared_func.h ../common/pthread_func.h ../common/ini_file_reader.h ../common/sockopt.h ../common/sched_thread.h ../common/http_func.h ../common/md5.h ../common/_os_bits.h ../common/local_ip_func.h ../common/avl_tree.h ../common/connection_pool.h /usr/local/include/fastcommon
cp -f ../common/fdfs_define.h ../common/fdfs_global.h ../common/mime_file_parser.h ../common/fdfs_http_shared.h ../tracker/tracker_types.h ../tracker/tracker_proto.h ../tracker/fdfs_shared_func.h ../storage/trunk_mgr/trunk_shared.h tracker_client.h storage_client.h storage_client1.h client_func.h client_global.h fdfs_client.h /usr/local/include/fastdfs
if [ 1 -eq 1 -a /usr/local/lib = "/usr/local/lib" ]; then sh ./fdfs_link_library.sh; fi

相关推荐

    Linux安装FastDFS.docx

    Linux安装FastDFS FastDFS是一款开源的分布式文件系统,旨在提供高性能、可靠的文件存储和管理解决方案。下面是Linux安装FastDFS的详细步骤和知识点总结。 一、环境准备 1. 安装gcc:FastDFS是使用C语言开发的,...

    centos系统上安装fastdfs

    CentOS 系统上安装 FastDFS FastDFS 是一个开源的分布式文件系统,能够提供高性能、高可靠性和高扩展性的文件存储服务。下面是 CentOS 系统上安装 FastDFS 的详细步骤和相关知识点。 安装 libfastcommon ...

    CentOS7离线安装fastdfs包

    对于那些无法连接到互联网或者网络环境不稳定的服务器,离线安装FastDFS变得尤为重要。本篇文章将详细介绍如何在CentOS7上进行离线安装FastDFS的过程,以及配合博客步骤来实现这一目标。 首先,我们需要获取FastDFS...

    CentOS6.5下安装fastDFS

    ### CentOS 6.5 下安装 FastDFS #### 一、前言 FastDFS 是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载等),解决了大容量存储和负载均衡的...

    centos7安装FastDFS_v5.08及配置

    本教程将详细介绍如何在CentOS 7操作系统上安装FastDFS v5.08版本,并进行基本配置。 首先,确保你的CentOS 7系统已经更新到最新版本,并安装了基础开发工具,包括GCC编译器和其他必要的库,通过运行以下命令: ``...

    不踩坑使用Docker安装FastDFS方法详解.docx

    Docker安装FastDFS 关于Docker的安装不同的操作系统有不同的安装方法,这里就不再赘述,默认你的电脑或服务器上已经安装好了Docker,并已启动。 我们来看一下Docker库里面已经存在了哪些镜像可供使用。执行以下命令...

    安装FastDFS所需要的包

    Linux环境下安装FastDFS文件服务器所需要的几个资源包(FastDFS_v5.05+fastdfs-nginx-module_v1.16+libfastcommonV1.0.7+nginx-1.16.1)

    Centos7安装FastDFS整合nginx.docx

    Centos7安装FastDFS整合nginx

    fastdfs安装包以及步骤.zip

    总结,安装FastDFS在银河麒麟服务器上涉及多个步骤,包括环境准备、源码编译、服务启动、集群配置、客户端工具使用及后续的安全优化。遵循这些步骤,可以构建一个稳定可靠的文件服务器,满足企业的大规模文件存储和...

    centos6.7安装fastdfs docker部署

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

    安装fastdfs所需工具包.rar

    本资源“安装fastdfs所需工具包.rar”包含了安装FastDFS过程中可能需要的各种工具和配置文件,这些工具包经过实践验证,确保了安装过程的顺利进行。 首先,让我们了解一下FastDFS的基本概念。FastDFS是一个高性能、...

    在Linux安装FastDFS.pdf

    安装FastDFS之前需要准备环境,由于FastDFS是用C语言编写的,所以需要GCC环境来编译安装。在安装FastDFS前,需要先安装它的依赖库libfastcommon。这个库是FastDFS和FastDHT共用的库,包含了FastDFS的公共函数和数据...

    centos安装FastDFS.md

    ### CentOS 下安装 FastDFS FastDFS 是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载等),适用于以文件作为载体的在线服务。FastDFS 为互联网...

    centos安装FastDFS.docx

    在CentOS系统中安装FastDFS是一项基础的系统管理和运维任务,尤其对于那些需要构建分布式文件存储系统的用户来说。FastDFS是一个开源的、轻量级的高性能文件系统,它设计用于互联网应用,支持高并发访问和大容量存储...

    centos离线安装fastdfs所需要软件

    本篇将详细介绍在CentOS系统中离线安装FastDFS所需软件的步骤。 首先,你需要下载FastDFS及其相关模块的源码包,这些在描述中已经列出: 1. fastdfs-6.03:FastDFS的核心组件,提供文件存储和管理功能。 2. fastdfs...

    centos6 安装 fastdfs所需安装包(适用于centos6 和centos 7)

    本文将详细讲解如何在CentOS 6.5上安装FastDFS及其依赖包,确保安装过程顺利。 首先,你需要确保你的CentOS 6.5系统是最新的。打开终端,运行以下命令更新系统: ```bash yum update -y ``` FastDFS的安装依赖于...

    Ubuntu安装FastDFS.md

    讲述了如何安装FastDFS

    Redhat下Fastdfs安装配置及nginx模块安装配置文档.pdf

    然后执行make和make install命令来编译和安装FastDFS。 3. 配置Tracker Server: 修改`%FastDFS%/conf/tracker.conf`文件,设置`base_path`为所需的存储路径,并配置HTTP服务端口和Tracker Server对外服务的端口。...

Global site tag (gtag.js) - Google Analytics