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

FastDFS 5.08 部署与配置(包括老版本卸载)

 
阅读更多

 

作者:黄湘龙
欢迎非商业转载,商业使用请联系我

 

目前官网提供的最新版本是5.08,官网的部署包下载地址是:

https://sourceforge.net/projects/fastdfs/files/FastDFS%20Server%20Source%20Code/

我们针对这个版本的部署细节进行描述:

 

 

1.依赖部署

依赖libevent,需要删除本机低版本的libevent,然后安装libevent的配对版本libevent-2.0.22-stable.tar.gz

libevent下载地址为:http://libevent.org/

安装libevent-2.0.22-stable.tar.gz步骤:

1) 移除之前的版本:

apt-get remove libevent*

2) 运行安装命令,注意需要参数安装

./configure --prefix=/usr/local/libevent

make && make install

3) 链接动态库 

ln -s /usr/local/libevent/lib/libevent-2.0.so.5 /usr/lib/libevent-2.0.so.5

如果是64位系统,需要链接: 

ln -s /usr/local/libevent/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5

 

2.安装脚本确认

 

因为make.sh中的libpthread.so 、libpthread.a的路径和服务器的不一致,可能会导致运行make.sh的时候出错,我们需要先确认这两个库的地址和make.sh中的一致,如果不一直,需要加软链。

确认两个库的位置:

find / -name 'libpthread.a'

/usr/lib/x86_64-linux-gnu/libpthread.a

 

find / -name 'libpthread.so'

/usr/lib/x86_64-linux-gnu/libpthread.so

 

make.sh中对这两个库的引用位置并没有上面两个位置:

if [ -f /usr/lib/libpthread.so ] || [ -f /usr/local/lib/libpthread.so ] || [ -f /lib64/libpthread.so ] || [ -f /usr/lib64/libpthread.so ] || [ -f /usr/lib/libpthread.a ] || [ -f /usr/local/lib/libpthread.a ] || [ -f /lib64/libpthread.a ] || [ -f /usr/lib64/libpthread.a ];

 

增加软链:

link /usr/lib/x86_64-linux-gnu/libpthread.so /usr/lib/libpthread.so

link /usr/lib/x86_64-linux-gnu/libpthread.a /usr/lib/libpthread.a

 

如果不增加软链,在运行make.sh的时候可能会遇到以下错误:

//lib/x86_64-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line

collect2: error: ld returned 1 exit status

make: *** [fdfs_storaged] Error 1

 

3.安装依赖的common组件

安装FastDFS之前需要先安装common组件,组件的下载地址是:

https://github.com/happyfish100/libfastcommon

进入下载页面后,点击右上角的Download ZIP按钮。

 

下载完成后,解压缩ZIP文件,进入文件夹,执行以下命令:

./make.sh

./make.sh install

 

4.部署FastDFS

 

讲下载好的FastDFS的包解压

tar -xvf FastDFS_v5.08.tar.gz

 

准备工作做完后,部署过程就会比较顺利,首先我们修改下make.sh中的安装位置:

vim make.sh,将TARGET_PREFIX,TARGET_CONF_PATH,TARGET_INIT_PATH修改为:

TARGET_PREFIX=$DESTDIR/usr/local/fastdfs

TARGET_CONF_PATH=$DESTDIR/usr/local/fastdfs/conf

TARGET_INIT_PATH=$DESTDIR/usr/local/fastdfs/init.d

 

然后运行:

./make.sh C_INCLUDE_PATH=/usr/local/libevent/include LIBRARY_PATH=/usr/local/libevent/lib

./make.sh install

 

 

4.配置

已经把所有涉及的配置项已经全部翻译过来,由于篇幅比较大,不在本篇文章中详细说明,请点击链接:

tracer.conf

http://fredlong.iteye.com/blog/2287817

 

storage.conf

http://fredlong.iteye.com/blog/2287899

 

client.conf

http://fredlong.iteye.com/blog/2287999

 

5.启动与关闭

启动:

 

   /usr/local/fastdfs/bin/fdfs_trackerd /usr/local/fastdfs/conf/tracker.conf

   /usr/local/fastdfs/bin/fdfs_storaged /usr/local/fastdfs/conf/storage.conf

 

       关闭:

 

/usr/local/fastdfs/bin/stop.sh fdfs_trackerd

 /usr/local/fastdfs/bin/stop.sh fdfs_storaged

 

6.测试

测试上传:

将本机的/home/parallels/Downloads/FastDFS_v5.08.tar.gz 文件上传到FastDFS中:

写道
./fdfs_test ../conf/client.conf upload /home/fred/Downloads/FastDFS_v5.08.tar.gz
This is FastDFS client test program v5.08

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.

[2016-04-10 13:44:37] DEBUG - base_path=/home/service/fastdfs/client, connect_timeout=30, network_timeout=60, tracker_server_count=2, 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

invalid operation: /home/fred/Downloads/FastDFS_v5.08.tar.gz
root@ubuntu:/usr/local/fastdfs/bin# ./fdfs_test ../conf/client.conf upload /home/fred/Downloads/FastDFS_v5.08.tar.gz
This is FastDFS client test program v5.08

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.

[2016-04-10 13:45:11] DEBUG - base_path=/home/service/fastdfs/client, connect_timeout=30, network_timeout=60, tracker_server_count=2, 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=10.211.55.5, port=23000
server 2. group_name=, ip_addr=10.211.55.6, port=23000

group_name=favorite, ip_addr=10.211.55.5, port=23000
storage_upload_by_filename
group_name=favorite, remote_filename=M00/00/00/CtM3BVcJ6G-AHc6KAAVCLLrKVow.tar.gz
source ip address: 10.211.55.5
file timestamp=2016-04-10 13:45:19
file size=344620
file crc32=3133822604
example file url: http://10.211.55.5/favorite/M00/00/00/CtM3BVcJ6G-AHc6KAAVCLLrKVow.tar.gz
storage_upload_slave_by_filename
group_name=favorite, remote_filename=M00/00/00/CtM3BVcJ6G-AHc6KAAVCLLrKVow_big.tar.gz
source ip address: 10.211.55.5
file timestamp=2016-04-10 13:45:19
file size=344620
file crc32=3133822604
example file url: http://10.211.55.5/favorite/M00/00/00/CtM3BVcJ6G-AHc6KAAVCLLrKVow_big.tar.gz

 

文件成功上传之后,我们可以group中每台机器中的指定文件夹内,都能找到这个文件:

 

写道
root@ubuntu:cd /home/service/fastdfs/file/data/00/00/
root@ubuntu:/home/service/fastdfs/file/data/00/00# ls
CtM3BVcJ6G-AHc6KAAVCLLrKVow_big.tar.gz CtM3BVcJ6G-AHc6KAAVCLLrKVow.tar.gz
CtM3BVcJ6G-AHc6KAAVCLLrKVow_big.tar.gz-m CtM3BVcJ6G-AHc6KAAVCLLrKVow.tar.gz-m

 

 

从上面可以看见上传的结果有最终的文件名和storage server的组名,通过这两个属性可以将文件下载下来。

测试下载,将刚才上传的文件下载下来:

 

写道
./fdfs_test ../conf/client.conf download favorite M00/00/00/CtM3BVcJ6G-AHc6KAAVCLLrKVow_big.tar.gz
This is FastDFS client test program v5.08

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.

[2016-04-10 13:48:40] DEBUG - base_path=/home/service/fastdfs/client, connect_timeout=30, network_timeout=60, tracker_server_count=2, 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

storage=10.211.55.5:23000
download file success, file size=344620, file save to CtM3BVcJ6G-AHc6KAAVCLLrKVow_big.tar.gz

 

7.设置服务器重启启动服务:

服务器有可能意外重启,所以需要在启动脚本中运行启动命令。

在SUSE中可以在/

cd /etc/init.d

touch after.local

vim after.local

 

#! /bin/sh

 

/usr/local/fastdfs/bin/fdfs_trackerd /usr/local/fastdfs/conf/tracker.conf

/usr/local/fastdfs/bin/fdfs_storaged /usr/local/fastdfs/conf/storage.conf

 

 

 

 

 

关于旧版本的卸载:

因为我之前安装的4.06的版本是指定了文件夹(/usr/local/fastdfs)安装的,所以卸载特别方便,具体就是以下几部:

1.删除所有配置和执行文件:

cd /usr/local/fastdfs

rm -rf *

mkdir conf

 

2.因为我本机是测试数据,所以,我把之前的上下文数据全部删除了:

cd /service/home/fastdfs/tracker

rm -rf *

cd ../storage

rm -rf *

cd ../file

rm -rf *

 

做了以上两个动作,基本上旧版本的数据就全部删除了,然后安心安装新版本数据就可以了。

至于新旧版本的数据是否兼容,这块没有测试过,以后如果有相关验证数据再写文章告诉大家。

 

 

 

1
6
分享到:
评论

相关推荐

    centos7安装FastDFS_v5.08及配置

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

    FastDFS-5.08+nginx-1.8.0+fastdfs-1.16

    在给定的压缩包文件中,包含了FastDFS的5.08版本、Nginx的1.8.0版本以及FastDFS的Nginx模块1.16版本,这些组件可以协同工作,构建一个高效稳定的分布式文件服务环境。 首先,我们来看FastDFS本身。FastDFS设计目标...

    FastDFS_v5.08 完整包.rar

    FastDFS_v5.08.tar.gz;libfastcommon-master.zip;fastdfs-nginx-module_v1.16.tar.gz;libfastcommon_v1.01.tar.gz;fastdfs_client_java_v1.10.tar.gz

    fastdfs_v5.08以及依赖包.rar

    安装FastDFS通常包括安装依赖库(如libevent、libcurl等)、编译FastDFS源码、配置环境变量以及修改配置文件等步骤。配置过程中需要注意Tracker Server和Storage Server的IP地址、端口设置,以及数据目录的指定。 ...

    fastdfs(5.08)版本安装所需的资源文件

    fastdfs(5.08)版本安装所需要的所有资源文件。包含:FastDFS_v5.08.tar.gz、fastdfs-ngx_cache_purge-2.3.tar.gznginx-module-master.zip、libfastcommon-master.zip、nginx-1.11.10.tar.gz、pcre-8.34.tar.gz、ngx_...

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

    在实际应用中,`BaseFastDFS`这个文件可能是整合配置的基线或者模板,包含了基本的FastDFS部署结构和配置示例。用户可以参考这个模板来快速搭建自己的FastDFS环境,根据实际需求调整配置。 总之,FastDFS、Nginx和...

    centos6.7安装fastdfs docker部署

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

    fastDFS文件系统搭建

    - 若使用`libfastcommon-1.0.7`与`fastdfs-5.08`集成时出现编译错误,可尝试升级`libfastcommon`版本至`1.0.35`解决该问题。 - 安装 - 命令:`# ./make.sh install` #### 三、服务配置 完成安装后,接下来是对...

    FastDFS最新集群部署,个人珍藏版本,包括原理讲解、集群参数配置优化.docx

    FastDFS架构主要包括Tracker server和Storage server两部分。Tracker server作为调度器,负责客户端的文件上传和下载请求,根据策略选择合适的Storage server执行实际的文件操作。Storage server则负责存储文件,...

    FastDFS_v5.08.tar

    FastDFS资源压缩包,其中包括FastDFS_v5.08.tar.gz,fastdfs-nginx-module_v1.16.tar.gz,libfastcommon-master.zip,nginx-1.9.11.tar.gz等部署FastDFS集群所需要的全部软件包

    fastdfs在ubuntu上的部署配置

    在本文中,我们将详细探讨如何在Ubuntu系统上部署配置FastDFS,这是一个开源的分布式文件系统。FastDFS设计用于解决大容量存储和负载均衡的问题,特别适合以文件为主的数据存储。以下是配置FastDFS的步骤: 1. **...

    FastDFS安装部署文档

    FastDFS安装部署文档 FastDFS是基于开源的分布式文件系统,提供了高性能、高可靠性和高可扩展性的解决方案。本文档将指导您完成FastDFS的安装和部署。 服务器说明 在安装FastDFS之前,需要了解服务器的各个组件...

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

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

    fastDFS+Nginx安装包(Linux版本)

    安装此版本的FastDFS,需要配置环境,包括编译、安装、配置文件设置以及启动和停止服务。安装过程中,通常会创建两个角色的服务器:Tracker Server和Storage Server。Tracker Server负责调度和监控,而Storage ...

    Fastdfs集群部署方案.docx

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

    fastDFS部署.docx

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

    FastDFS集群与Http访问部署详解配置文件.rar

    《FastDFS集群与Http访问部署详解》涉及到的关键技术主要包括FastDFS分布式文件系统、Nginx反向代理服务器以及集群和HTTP访问的配置。FastDFS是一个开源的高性能、轻量级的分布式文件系统,主要解决大容量存储和负载...

    FastDFS-v5.08.tar.gzlibfastcommonfastdfs-nginx-modulenginx

    FastDFS的v5.08版本是对先前版本的更新,可能包含性能优化、bug修复和新功能。具体改进和新特性需要查看官方发布说明或更新日志来了解详细信息。 【CentOS安装FastDFS】 在CentOS操作系统中安装FastDFS通常包括...

    FastDFS安装和配置过程

    ### FastDFS安装与配置详解 ...综上所述,FastDFS的安装与配置涉及多个环节,包括依赖库的安装、核心组件的编译安装、配置文件的修改以及Nginx模块的集成。每一环节都需要仔细操作,以确保系统的稳定性和性能。

Global site tag (gtag.js) - Google Analytics