阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

FastDFS安装配置手册

217次阅读
没有评论

共计 10233 个字符,预计需要花费 26 分钟才能阅读完成。

本文档详细的介绍了 FastDFS 的最小集群安装过程。集群环境如下:

tracker:20.2.64.133。用于调度工作,在访问上起负载均衡的作用。

group1:

      storage1: 20.10.129.150。存储节点存储文件,完成文件管理的所有功能。

      storage2: 20.12.1.73。

group2:

      storage2:20.12.1.74

以下将详细的介绍此分布式的安装过程,针对不同的系统,安装过程中部分细节(存储路径设置等)可能稍有不同,但基本步骤相同。

CentOS 6.2 下 fastDFS 的完整安装和配置步骤 http://www.linuxidc.com/Linux/2012-12/75989.htm

FastDFS 在 Ubuntu 下的安装,PHP 客户端 http://www.linuxidc.com/Linux/2012-09/71459.htm

FastDFS 分布式文件服务器安装,及配置,测试 http://www.linuxidc.com/Linux/2012-09/71458.htm

FastDFS 整合 Nginx 问题整理 http://www.linuxidc.com/Linux/2012-09/71232.htm

CentOS 下搭建 FastDFS http://www.linuxidc.com/Linux/2012-09/70995.htm

Ubuntu 安装 FastDFS 全程记录 http://www.linuxidc.com/Linux/2012-03/56377.htm

第一步安装 libevent

在搭建分布式环境之前,需要确保已经安装了 libevent,FastDFS 安装时对 libevent 的版本有一定要求。注需要卸载重装系统自带的 libevent。使用最新的 stable 版本 本示例中使用的版本为 libevent-2.0.21-stable。注意, 此步骤需要在所有机器上都执行,否则会导致 FastDFS 安装失败。

1:判断是否安装了 libevent

>> rpm -qa|grep libevent

如果有输出,则说明已经安装了 libevent

Fastdfs 对 libevent 版本有要求,所以先删除系统自带的 libevent, 然后安装最新稳定版本

在本示例中,输出为 libevent-1.4.13-1.el6.x86_64

2:卸载已有的 libevent

  >> rpm -e libevent –nodeps

3:安装最新的 libevent

本示例的 libevent 使用版本为 libevent-2.0.21-stable.tar.gz

安装 libevent   

>> tar zvxf libevent-2.0.21-stable.tar.gz

>> cd libevent-2.0.21-stable

>> ./configure –prefix=/usr 

>> make

>>make install

4:检查是否安装成功

>> ls –al /usr/lib |grep libevent(或者 >> ls –al /usr/local/lib |grep libevent)若有结果,则说明安装正确

注意:

  1) 如果是在 32 为系统上安装,且 libevent 的安装目录在 /usr/local/lib 下,则还需要建立 libevent-2.0.so.5 到 /usr/lib 的软链接,这样其他程序运行时才可以找到 libevent 库

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

 2) 如果是在 64 位系统,需要创建一个 libevent-2.0.so.5 到 /usr/lib64 的软链接

>> ln -s /usr/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5 (假设 libevent 的安装目录在 /usr/lib 下)

到此一步,安装 libevent 工作完毕。

 

第二步安装 FastDFS

本示例中使用的 FastDFS 版本为 4.0.6。

安装 FastDFS

>> tar zvxf FastDFS_v4.06.tar.gz

>> cd FastDFs

>> ./make.sh

>> ./make.sh install

注意上面两步,检查是否出错,如果出错,则说明上面的 libevent 没有安装好

安装成功后,FastDFS 安装在 /usr/local/bin 中。配置文件在 /etc/fdfs 中

至此,FastDFS 安装完毕

此步骤需要在所有机器上都执行。

第三步安装 nginx 以及 fastdfs-nginx-module(只需在 storage)

FastDFS 通过 HTTP 服务器来提供 HTTP 服务。为了支持高并发的访问,以及提供负载均衡等高性能的服务,本示例使用 nginx 作为 HTTP 服务器,FastDFS 为我们提供了 Nginx 上使用的 FastDFS 模块(fastdfs-nginx-module)。此步操作只需要在 storage 上执行。tracker

上可不执行。

1:fastdfs-nginx-module安装:

>>  tar -zxvf fastdfs-nginx-module_v1.11.tar.gz    (解压后的路径为 /home/chenfeic/fastdfs/fastdfs-nginx-module)

Nginx 需要依赖第三方的库 nginx 的 gzip 模块需要 zlib 库,rewrite 模块需要 pcre 库,那么我们来依次安装它们。

2zlib库安装:

>> tar -vxzf zlib-1.2.8.tar.gz(本示例中解压位置为 /home/chenfeic/fastdfs/zlib-1.2.8)

>>cd zlib-1.2.8

>> ./configure –prefix=/usr/local/zlib(设置安装路径)

>> make

>> make install

3pcre库安装:

>> tar -vxzf pcre-8.33.tar.gz(本示例中解压位置为 –with-pcre= /home/chenfeic/ fastdfs / pcre-8.33)

>> cd prce-8.33

>> ./configure –prefix=/usr/local/pcre

–libdir=/usr/local/lib/pcre –includedir=/usr/local/include/pcre

>> make

>> make install

4:nginx安装:

>> tar -zxvf nginx-1.4.4.tar.gz

>> cd nginx-1.4.4

>>./configure –prefix=/usr/local/nginx –with-zlib=/home/chenfeic/fastdfs/zlib-1.2.8  –with-pcre=/home/chenfeic/fastdfs/pcre-8.33 –sbin-path=/usr/local/nginx –add-module=/home/chenfeic/fastdfs/fastdfs-nginx-module/src

>> make

>> make install 

注意:–with-pcre –with-zlib 后面的路径都是 源码路径,而不是编译后的包。在实际的过程中,此路径根据具体情况填写。

至此,我们的 nginx 安装成功,nginx 默认是 80 端口,为了防止与其他服务冲突,建议换成其他端口(后续章节有详细介绍)。

此步骤需要在所有 storage 节点上都执行。(tracker节点不需要执行)

 

第四步配置及启动 FastDFS

1:tracker配置 ( 只需在 跟踪器节点配置)

修改 tracker 的配置文件 tracker.conf。该文件位置在 /etc/fdfs/tracker.conf。主要修改以下两处,如有其他调整,可参考 FastDFS 文档自行调整。

>> /etc/fdfs/tracker.conf

    base_path=/home/chenfeic/fastdfs/tracker   ====> 放置 data 和 log 的目录。这个路径必须存在

##include http.conf 修改为 #include http.conf   ====> 这里一定要注意!是 #include,不是include!!! 如果没有此配置项,则不需要处理

 

启动 tracker

>> /usr/local/bin/fdfs_tracker /etc/fdfs/tracker.conf

检查是否正常启动

 >> netstat –anp|grep –w fdfs

看是否有输出,且 22122 端口已启动

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-10/107574p2.htm

2:storage配置(只需在存储节点配置,同一 group节点的配置是一样的)

1)修改 nginx端口(可选)

 nginx 默认端口号为 80,为了防止冲突,可以设置为其他端口,本示例中将其修改为 8080。

修改 /usr/local/nginx/conf/nginx.conf

>> vim /usr/local/nginx/conf/nginx.conf

  Server {
           listen 8080(从 80改为 8080)

}

2)支持 FastDFS模块

在 nginx 的 server 配置段中 增加 /group1/M00 的 location 声明

storage $> vim /usr/local/nginx/conf/nginx.conf

location /group1 /M00 {//注意:此处如果是在 group1就写成 group1/M00。如果是 group2节点就写 group2/M00。依次类推。

root  /home/chenfeic/ fastdfs /storage/data; //必须保证路径存在,若不存在就创建

ngx_fastdfs_module;  注意这两行都有分号

}(其中 /home/chenfeic/ fastdfs /storage/ 为 storage 中配置的 store_path0 路径,data目录一定要加上

 给 storage 的存储目录做一个软连接

> ln -s /home/chenfeic/ fastdfs /storage/data  /home/chenfeic/ fastdfs /storage /data /M00

3)修改 storage配置

修改 storage 的配置文件 storage.conf。该文件位置在 /etc/fdfs/storage.conf。主要修改以下几如有其他调整,可参考 FastDFS 文档自行调整

    group_name=group1 ====> 此台 storage server 所属的服务器组名。此处如果是在 group1 就写成 group1。如果是 group2节点就写 group2。依次类推。

 

    base_path=/home/chenfeic/ fastdfs /storage ====> 放置 data 和 log 的目录。此路径必须保证存在。

    store_path0=/home/chenfeic/ fastdfs /storage      ====> 放置文件的目录,此路径必须保证存在 , 建议跟 base_path保持一致(/home/chenfeic/ fastdfs /storage 与 nginx server 段中的设置保持一致,

    tracker_server=20.2.64.133:22122        ====> tracker server 的 ip 和端口,此处可以写多个 tracker server,每行一个,因为本示例中只有一个 tracker,所以只需写一个。

    http.disabled=true                    ====> 关闭内置的 web server,如果有此配置项就设置,否则就不用设置。

    http.server_port=8080                   ====> web server 的端口改成 8080(与 nginx 端口一致)

 

4)修改 fastdfs-nginx-module配置

拷贝 mod_fastdfs.conf 到 /etc/fdfs 目录下

 >>cp /home/chenfeic/fastdfs/fastdfs-nginx-module/src/mod_fastdfs.conf  /etc/fdfs/

 

5)修改 mod_fastdfs.conf 配置文件

>> vim /etc/fdfs/mod_fastdfs.conf

   base_path=/home/chenfeic/ fastdfs /storage        ====> 放置 log 的目录, 与 storage 中的配置保持一致。

    tracker_server=20.2.64.133:22122        ====> tracker server 的 ip 和端口,此处可以写多个 tracker server,每行一个,因为本示例中只有一个 tracker,所以只需写一个。

    group_name=group1                    ====> 此台 storage server 所属的服务器组名。此处如果是在 group1 就写成 group1。如果是 group2节点就写 group2。依次类推。

 

    url_have_group_name = true            ====> 在 URL 中包含 group 名称。一定要设置true

    store_path0=/home/chenfeic/ fastdfs /storage            ====> 放置文件的目录,与 storage 中保持一致

response_mode=proxy                ====> 对文件同步延迟的处理方式,通过 redirect 跳转和 proxy 代理两种方式解决

group_count=2       ====>group的个数,在本示例中有两个 group,所以设为 2

 

 

到此,配置已经完成,启动 nginx 和相关 storage

 >> /usr/local/nginx/nginx

>> /usr/local/bin/fdfs_storage /etc/fdfs/ storage.conf

检查是否正常启动

 >> netstat –anp|grep –w 8080  看 8080 端口是否启动

 

3:测试是否正常安装

    此步骤在 tracker或者 storage都可以测试,本示例中在 storage上测试,修改 client.conf配置文件。

   > vim /etc/fdfs/client.conf

base_path=/home/chenfeic/ fastdfs

tracker_server=20.2.64.133:22122

测试

     >vim hello.txt (创建一个测试的文件)

> /usr/local/bin/fdfs_test / etc/fdfs/client.conf  upload  hello.txt

查看结果,看文件是否正确上传

 

 

可以在任何 storage机器上执行如下命令,查看 fastdfs集群状态,如果各个 storage状态都为 ACTIVE,则搭建成功。

/usr/local/bin/fdfs_monitor /etc/fdfs/storage.conf

 

关闭 tracker(storage)

  /usr/local/bin/stop.sh /usr/local/bin/fdfs_trackered(fdfs_storaged) /etc/fdfs/tracker.conf(storage.conf)

  或者 killall fdfs_trackered(storaged)  ——- 注意,千万不要使用 - 9 强行杀死进程 否则可能会导致 binlog 数据丢失的问题。

 重启tracker(storage)

/usr/local/bin/restart.sh /usr/local/bin/fdfs_trackered(fdfs_storaged) /etc/fdfs/tracker.conf(storage.conf)

删除 storage

 /usr/local/bin/fdfs_monitor /etc/fdfs/storage.conf delete group2 20.12.1.73(删除 group2 中 ip 为 20.12.1.73 的 storage)

注意:在配置过程,要注意防火墙的设置。关闭防火墙,或者设置对相关端口例外。

FastDFS 的详细介绍:请点这里
FastDFS 的下载地址:请点这里

本文档详细的介绍了 FastDFS 的最小集群安装过程。集群环境如下:

tracker:20.2.64.133。用于调度工作,在访问上起负载均衡的作用。

group1:

      storage1: 20.10.129.150。存储节点存储文件,完成文件管理的所有功能。

      storage2: 20.12.1.73。

group2:

      storage2:20.12.1.74

以下将详细的介绍此分布式的安装过程,针对不同的系统,安装过程中部分细节(存储路径设置等)可能稍有不同,但基本步骤相同。

CentOS 6.2 下 fastDFS 的完整安装和配置步骤 http://www.linuxidc.com/Linux/2012-12/75989.htm

FastDFS 在 Ubuntu 下的安装,PHP 客户端 http://www.linuxidc.com/Linux/2012-09/71459.htm

FastDFS 分布式文件服务器安装,及配置,测试 http://www.linuxidc.com/Linux/2012-09/71458.htm

FastDFS 整合 Nginx 问题整理 http://www.linuxidc.com/Linux/2012-09/71232.htm

CentOS 下搭建 FastDFS http://www.linuxidc.com/Linux/2012-09/70995.htm

Ubuntu 安装 FastDFS 全程记录 http://www.linuxidc.com/Linux/2012-03/56377.htm

第一步安装 libevent

在搭建分布式环境之前,需要确保已经安装了 libevent,FastDFS 安装时对 libevent 的版本有一定要求。注需要卸载重装系统自带的 libevent。使用最新的 stable 版本 本示例中使用的版本为 libevent-2.0.21-stable。注意, 此步骤需要在所有机器上都执行,否则会导致 FastDFS 安装失败。

1:判断是否安装了 libevent

>> rpm -qa|grep libevent

如果有输出,则说明已经安装了 libevent

Fastdfs 对 libevent 版本有要求,所以先删除系统自带的 libevent, 然后安装最新稳定版本

在本示例中,输出为 libevent-1.4.13-1.el6.x86_64

2:卸载已有的 libevent

  >> rpm -e libevent –nodeps

3:安装最新的 libevent

本示例的 libevent 使用版本为 libevent-2.0.21-stable.tar.gz

安装 libevent   

>> tar zvxf libevent-2.0.21-stable.tar.gz

>> cd libevent-2.0.21-stable

>> ./configure –prefix=/usr 

>> make

>>make install

4:检查是否安装成功

>> ls –al /usr/lib |grep libevent(或者 >> ls –al /usr/local/lib |grep libevent)若有结果,则说明安装正确

注意:

  1) 如果是在 32 为系统上安装,且 libevent 的安装目录在 /usr/local/lib 下,则还需要建立 libevent-2.0.so.5 到 /usr/lib 的软链接,这样其他程序运行时才可以找到 libevent 库

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

 2) 如果是在 64 位系统,需要创建一个 libevent-2.0.so.5 到 /usr/lib64 的软链接

>> ln -s /usr/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5 (假设 libevent 的安装目录在 /usr/lib 下)

到此一步,安装 libevent 工作完毕。

 

第二步安装 FastDFS

本示例中使用的 FastDFS 版本为 4.0.6。

安装 FastDFS

>> tar zvxf FastDFS_v4.06.tar.gz

>> cd FastDFs

>> ./make.sh

>> ./make.sh install

注意上面两步,检查是否出错,如果出错,则说明上面的 libevent 没有安装好

安装成功后,FastDFS 安装在 /usr/local/bin 中。配置文件在 /etc/fdfs 中

至此,FastDFS 安装完毕

此步骤需要在所有机器上都执行。

第三步安装 nginx 以及 fastdfs-nginx-module(只需在 storage)

FastDFS 通过 HTTP 服务器来提供 HTTP 服务。为了支持高并发的访问,以及提供负载均衡等高性能的服务,本示例使用 nginx 作为 HTTP 服务器,FastDFS 为我们提供了 Nginx 上使用的 FastDFS 模块(fastdfs-nginx-module)。此步操作只需要在 storage 上执行。tracker

上可不执行。

1:fastdfs-nginx-module安装:

>>  tar -zxvf fastdfs-nginx-module_v1.11.tar.gz    (解压后的路径为 /home/chenfeic/fastdfs/fastdfs-nginx-module)

Nginx 需要依赖第三方的库 nginx 的 gzip 模块需要 zlib 库,rewrite 模块需要 pcre 库,那么我们来依次安装它们。

2zlib库安装:

>> tar -vxzf zlib-1.2.8.tar.gz(本示例中解压位置为 /home/chenfeic/fastdfs/zlib-1.2.8)

>>cd zlib-1.2.8

>> ./configure –prefix=/usr/local/zlib(设置安装路径)

>> make

>> make install

3pcre库安装:

>> tar -vxzf pcre-8.33.tar.gz(本示例中解压位置为 –with-pcre= /home/chenfeic/ fastdfs / pcre-8.33)

>> cd prce-8.33

>> ./configure –prefix=/usr/local/pcre

–libdir=/usr/local/lib/pcre –includedir=/usr/local/include/pcre

>> make

>> make install

4:nginx安装:

>> tar -zxvf nginx-1.4.4.tar.gz

>> cd nginx-1.4.4

>>./configure –prefix=/usr/local/nginx –with-zlib=/home/chenfeic/fastdfs/zlib-1.2.8  –with-pcre=/home/chenfeic/fastdfs/pcre-8.33 –sbin-path=/usr/local/nginx –add-module=/home/chenfeic/fastdfs/fastdfs-nginx-module/src

>> make

>> make install 

注意:–with-pcre –with-zlib 后面的路径都是 源码路径,而不是编译后的包。在实际的过程中,此路径根据具体情况填写。

至此,我们的 nginx 安装成功,nginx 默认是 80 端口,为了防止与其他服务冲突,建议换成其他端口(后续章节有详细介绍)。

此步骤需要在所有 storage 节点上都执行。(tracker节点不需要执行)

 

第四步配置及启动 FastDFS

1:tracker配置 ( 只需在 跟踪器节点配置)

修改 tracker 的配置文件 tracker.conf。该文件位置在 /etc/fdfs/tracker.conf。主要修改以下两处,如有其他调整,可参考 FastDFS 文档自行调整。

>> /etc/fdfs/tracker.conf

    base_path=/home/chenfeic/fastdfs/tracker   ====> 放置 data 和 log 的目录。这个路径必须存在

##include http.conf 修改为 #include http.conf   ====> 这里一定要注意!是 #include,不是include!!! 如果没有此配置项,则不需要处理

 

启动 tracker

>> /usr/local/bin/fdfs_tracker /etc/fdfs/tracker.conf

检查是否正常启动

 >> netstat –anp|grep –w fdfs

看是否有输出,且 22122 端口已启动

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-10/107574p2.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计10233字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中