文档章节

FAST DFS服务搭建说明

烽焱10仴
 烽焱10仴
发布于 2016/09/10 18:10
字数 1088
阅读 162
收藏 8

 

FAST DFS 搭建

 

注意:本文档使用CentOS 6.8 为例进行编写。CentOS安装的为桌面版

 

1. 下载源码

使用git到如下地址 https://github.com/happyfish100

下载源码。

如上图所示,红色圈起来的3部分为必须模块。

Fastdfs  为核心代码

Libfastcommon 为公共模块、

Fastdfs-nginx-module 为nginx模块。

 

其中,每个模块下,都附带 INSTALL 的说明文件。如下图:

 

按照INSTALL说明文件中的内容,即可完成对各个模块的编译,安装。

 

本文以下内容即参照 INSTALL 中的文件内容编写。

 

使用git下载以上源码。

Git工具的安装:

yum install -y git

 

Git安装完成后,使用git clone命令,分别下载git 库到本地。

搭建fastdfs服务,需要使用nginx,nginx需要单独下载,

http://nginx.org/download/nginx-1.10.1.tar.gz

下载完成nginx后,进行解压。

 

下载完成后,如下图所示:

 

2. 编译安装

2.1 编译安装libfastcommon

 

Libfastcommon为首先需要编译安装的内容。

 

cd /root/fastdfs_src/libfastcommon

 

使用如下命令编译:

./make.sh

使用如下命令安装:

./make.sh install

 

2.2 编译安装fastdfs

 

cd /root/fastdfs_src/fastdfs

 

使用如下命令编译:

./make.sh

使用如下命令安装:

./make.sh install

 

更改配置文件:

cd /etc/fdfs

 

cp ./tracker.conf.sample ./tracker.conf

 

cp ./storage.conf.sample ./storage.conf

 

cp ./client.conf.sample ./client.conf

 

更改tracker.conf文件

更改以下配置即可:

# the base path to store data and log files

base_path=/data/fastdfs

(我们使用/data/fastdfs来作为fastdfs的存储目录)

# HTTP port on this tracker server

http.server_port=80

 

# the tracker server port

port=22122

 

更改storage.conf文件

更改以下配置即可:

# the storage server port

port=23000

# the name of the group this storage server belongs to

#

# comment or remove this item for fetching from tracker server,

# in this case, use_storage_id must set to true in tracker.conf,

# and storage_ids.conf must be configed correctly.

group_name=group1

 

# the base path to store data and log files

base_path=/data/fastdfs

 

# store_path#, based 0, if store_path0 not exists, it's value is base_path

# the paths must be exist

store_path0=/data/fastdfs

 

# tracker_server can ocur more than once, and tracker_server format is

#  "host:port", host can be hostname or ip address

tracker_server=10.1.1.116:22122

(10.1.1.116是本机IP,22122是tracker.conf中配置的tracker服务的端口号)

 

# the port of the web server on this storage server

http.server_port=80

 

更改client.conf 配置文件(该文件可不修改,修改是为了方便本地做测试)

# the base path to store log files

base_path=/data/fastdfs

# tracker_server can ocur more than once, and tracker_server format is

#  "host:port", host can be hostname or ip address

tracker_server=localhost:22122

#HTTP settings

http.tracker_server_port=80

 

 

2.3 启动 tracker 和storage

使用如下命令启动:

/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart

 

/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart

 

服务启动的log可在/data/fastdfs/log 目录下查看,若查看日志中启动没有问题,则可以使用如下命令进行测试。

/usr/bin/fdfs_test /etc/fdfs/client.conf upload /usr/include/stdlib.h

文件能正常上传即可,输出中,会发现有http路径,这个需要等nginx编译安装完成之后才可使用。

 

2.4 编译安装nginx

 

编译nginx需要先安装pcre和zlib模块。

使用如下命令进行安装:

yum install -y pcre-devel.x86_64

yum install -y zlib-devel.x86_64

 

进入到nginx目录,

cd /root/fastdfs_src/nginx-1.10.1

然后依次执行如下命令:

./configure --prefix=/usr/local/nginx --add-module=/root/fastdfs_src/fastdfs-nginx-module/src

 

执行完成之后,没有error字样的情况下,可依次执行如下命令进行编译和安装:

make

make install

 

安装完成之后,需要拷贝配置文件,执行如下命令:

cp /root/fastdfs_src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/mod_fastdfs.conf

 

cp /root/fastdfs_src/fastdfs/conf/http.conf /etc/fdfs/httpd.conf

 

cp /root/fastdfs_src/fastdfs/conf/mime.types /etc/fdfs/mime.types

 

 

下一步修改配置文件:

 

cd  /etc/fdfs

 

修改mod_fastdfs.conf

# the base path to store log files

base_path=/data/fastdfs

 

 

#  "host:port", host can be hostname or ip address

# valid only when load_fdfs_parameters_from_tracker is true

tracker_server=10.1.1.116:22122

 

 

# the port of the local storage server

# the default value is 23000

storage_server_port=23000

 

# the group name of the local storage server

group_name=group1

 

# if the url / uri including the group name

# set to false when uri like /M00/00/00/xxx

# set to true when uri like ${group_name}/M00/00/00/xxx, such as group1/M00/xxx

# default value is false

url_have_group_name = true

 

 

# store_path#, based 0, if store_path0 not exists, it's value is base_path

# the paths must be exist

# must same as storage.conf

store_path0=/data/fastdfs

 

 

进入nginx的安装目录,修改nginx的配置:

 

修改nginx.conf 文件:

 

 server {

        listen       80;

        server_name  localhost;

   

 

        location / {

            root /data/fastdfs/data;

            ngx_fastdfs_module;

        }

}

 

修改nginx的如上配置即可。

 

2.5 启动nginx

 

启动nginx

/usr/local/nginx/sbin/nginx

重启nginx

/usr/local/nginx/sbin/nginx -s stop

停止nginx

/usr/local/nginx/sbin/nginx -s reload

 

启动nginx后,即可使用上传时返回的http路径来访问上传的文件。

 

 

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
烽焱10仴
粉丝 8
博文 44
码字总数 19836
作品 0
大兴
技术主管
私信 提问
加载中

评论(1)

jxpxwh
jxpxwh
好东西,留存
Microsoft Windows Server 2003 R2 分布式文件系统解决方案概述

一、DFS、FSRM简介 Microsoft Windows Server 2003 R2 分布式文件系统解决方案概述 此处为微软technet上讲述的DFS(分布式文件系统的优势及特点),请午饭们耐心、细心的去参阅一下,对你去构建...

王占兴
2018/01/09
0
0
Hadoop初体验:快速搭建Hadoop伪分布式环境

0.前言 本文旨在使用一个全新安装好的Linux系统从0开始进行Hadoop伪分布式环境的搭建,以达到快速搭建的目的,从而体验Hadoop的魅力所在,为后面的继续学习提供基础环境。 对使用的系统环境作...

xpleaf
2017/08/30
0
0
hadoop(01)、windows平台下hadoop环境搭建

hadoop是运行在linux系统下的一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的威力进行高速运算和存储。今天我们要...

MaxBill
2017/11/13
0
0
【干货】Apache Hadoop 2.8 完全分布式集群搭建超详细过程,实现NameNode HA、ResourceManager HA高可靠性

最近在自己的笔记本电脑上搭建了Apache Hadoop分布式集群,采用了最新的稳定版本2.8,并配置了NameNode、ResourceManager的HA高可用,方便日常对Hadoop的研究与测试工作。详细的搭建过程如下...

雪饼
2017/06/20
4.4K
21
Hadoop伪分布式环境搭建

创建一个目录用于管理软件包 1.安装JDK (1)下载 http://pan.baidu.com/s/1qYnHtLi 密码:kbem (2)使用sftp服务器(Alt+P 打开)上传jdk 至linux服务器 (3)查看服务器是否有jdk (4)解压JDK至app...

码农_皇甫
2016/07/14
15
0

没有更多内容

加载失败,请刷新页面

加载更多

商品详情页上拉查看详情

商品详情页上拉查看详情 目录介绍 01.该库介绍 02.效果展示 03.如何使用 04.注意要点 05.优化问题 06.部分代码逻辑 07.参考案例 01.该库介绍 模仿淘宝、京东、考拉等商品详情页分页加载的UI效...

潇湘剑雨
17分钟前
0
0
Netty内存池之PoolArena详解

PoolArena是Netty内存池中的一个核心容器,它的主要作用是对创建的一系列的PoolChunk和PoolSubpage进行管理,根据申请的不同内存大小将最终的申请动作委托给这两个子容器进行管理。整体上,P...

爱宝贝丶
22分钟前
0
0
Django使用Channels实现WebSocket--下篇

希望通过对这两篇文章的学习,能够对Channels有更加深入的了解,使用起来得心应手游刃有余 通过上一篇《Django使用Channels实现WebSocket--上篇》的学习应该对Channels的各种概念有了清晰的认...

运维咖啡吧
29分钟前
1
0
linux下设置定时执行shell脚本的示例

很多时候我们有希望服务器定时去运行一个脚本来触发一个操作,比如说定时去备份服务器数据、数据库数据等 不适合人工经常做的一些操作这里简单说下 shell Shell俗称壳,类似于DOS下的command...

阿锋zxf
32分钟前
2
0
介绍Kubernetes监控Heapster

什么是Heapster? Heapster是容器集群监控和性能分析工具,天然的支持Kubernetes和CoreOS,Kubernetes有个出名的监控agent—cAdvisor。在每个kubernetes Node上都会运行cAdvisor,它会收集本机...

xiangyunyan
34分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部