zoukankan      html  css  js  c++  java
  • FastDFS单节点安装

    百度百科:https://baike.baidu.com/item/fastdfs/5609710?fr=aladdin

    相关软件包:

    链接:https://pan.baidu.com/s/11nO2bOqBWPjtAlzATYo38Q   提取码:x1a3 

    安装:

    1,安装之前首先linux上要有gcc包。

    2,安装libfastcommon

    3,安装FastDFS

    4,配置跟踪器(tracker)

    5,配置存储器(storage)

    6,环境搭建完成,可以进行测试环境是否搭建成功

    7,跟踪器和存储器安装nginx,对nginx进行整合,实现使用浏览器下载文件

    启用和关闭服务顺序,跟踪器、存储器、Nginx

     

    环境准备,两台centos:

    192.168.85.6   ------  跟踪器(tracker)、

    192.168.85.7 ------- 存储节点(storage)

     

    下载软件:http://sourceforge.net/projects/fastdfs/files/

    第一步,安装之前linux上要有gcc包。

    安装gcc,命令:yum install make cmake gcc gcc-c++

     

    直到出现Complete!下载完成

    第二步,安装libfastcommon(俩台机器同时进行)

     1, 将相关软件包上传至linux: 

      2,进入 /lhy/software 目录下,进行解压libfastcommon-master.zip:

      命令:unzip libfastcommon-master.zip -d /usr/local/fast/

     

     解压后 /usr/local/fast:

    3,进入目录:cd /usr/local/fast/libfastcommon-master/

    4, 进行编译和安装:
    命令:./make.sh
    命令:./make.sh install

    注意安装的路径:也就是说,我们的libfastcommon默认安装到了/usr/lib64/这个位置。

    下面进行修改,创建软链接,使其更符合常规安装目录

    4,进行软链接创建。FastDFS主程序设置的目录为/usr/local/lib/,所以我们需要创建/usr/lib64/下的一些核心执行程序的软连接文件。

    命令:mkdir /usr/local/lib/     (如果有了就不用创建了)
    命令:ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so

    命令:ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
    命令:ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
    命令:ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

     

    第三步,安装FastDFS

    1 进入到cd /lhy/software下,解压FastDFS_v5.05.tar.gz文件
    命令:cd /lhy/software
    命令:tar -zxvf FastDFS_v5.05.tar.gz -C /usr/local/fast/

    2 安装编译
    命令:cd /usr/local/fast/FastDFS/
    编译命令:./make.sh

     安装命令:./make.sh install   ,编译后会创建一些文件夹,但是不符合平常的习惯

    3 采用默认安装方式脚本文件说明:

    (1)、服务脚本在:
    /etc/init.d/fdfs_storaged
    /etc/init.d/fdfs_trackerd

    (2)、配置文件在

    /etc/fdfs/client.conf.sample
    /etc/fdfs/storage.conf.sample
    /etc/fdfs/tracker.conf.sample

     (3)、  命令行工具在/usr/bin/目录下         

      Fdfs_*的一些列执行脚本

    4、因为FastDFS服务脚本设置的bin目录为/usr/local/bin/下,但是实际我们安装在了/usr/bin/下面。所以我们需要修改FastDFS配置文件中的路径,也就是需要修改俩个配置文件:

    命令:vim /etc/init.d/fdfs_storaged

    先按esc键,然后 shift+: ,在此处输入命名,进行替换,把 /usr/local/bin 替换为/usr/bin :
    进行全局替换命令:%s+/usr/local/bin+/usr/bin

    命令:vim /etc/init.d/fdfs_trackerd
    进行全局替换命令:%s+/usr/local/bin+/usr/bin

     第四步  配置跟踪器(192.168.85.6 节点)

    1 进入 cd  /etc/fdfs/目录配置跟踪器文件(注意是192.168.85.6节点),把tracker.conf.sample文件进行cope一份:去修改tracker.conf文件

    2 修改tracker.conf文件
    命令:vim /etc/fdfs/tracker.conf
    如下图所示:我们暂时修改配置文件里的base_path即可。

     

    修改为自己的路径地址:base_path=/fastdfs/tracker
    注意:对于tracker.conf配置文件参数解释可以找官方文档,地址为:
    http://bbs.chinaunix.net/thread-1941456-1-1.html

    3 最后我们一定要创建之前定义好的目录(也就是/fastdfs/tracker):
    命令:mkdir -p /fastdfs/tracker

    4 关闭防火墙:(我们在学习时可以不用考虑防火墙的问题)
    Vim /etc/sysconfig/iptables
    添加:-A INPUT -m state --state NEW -m tcp -p tcp --dport 22122 -j ACCEPT
    重启:service iptables restart

    5 启动跟踪器

    启动后会建立data、logs目录

    目录命令:cd /fastdfs/tracker/ && ll
    启动tracker命令:/etc/init.d/fdfs_trackerd start
    查看进程命令:ps -el | grep fdfs
    停止tracker命令:/etc/init.d/fdfs_trackerd stop

    6
    可以设置开机启动跟踪器:(一般生产环境需要开机启动一些服务,如keepaliv
    ed、linux、tomcat等等)
    命令:vim /etc/rc.d/rc.local
    加入配置:/etc/init.d/fdfs_trackerd start

    第五步:配置FastDFS存储(192.168.85.7)

    1 进入文件目录:cd /etc/fdfs/,进行copy storage文件一份
    命令:cd /etc/fdfs/
    命令:cp storage.conf.sample storage.conf

    2 修改storage.conf文件
    命令:vim /etc/fdfs/storage.conf
    修改内容:
    base_path=/fastdfs/storage
    store_path0=/fastdfs/storage
    tracker_server=192.168.1.172:22122
    http.server_port=8888

    3 创建存储目录:mkdir -p /fastdfs/storage

    4 打开防火墙:
    命令:vim /etc/sysconfig/iptables
    添加:-A INPUT -m state --state NEW -m tcp -p tcp --dport 23000 -j ACCEPT
    重启:service iptables restart

    5 启动存储(storage)
    命令:/etc/init.d/fdfs_storaged start (关闭:/etc/init.d/fdfs_storaged stop)
    (初次启动成功后会在/fastdbf/storage/ 目录下创建 data、logs俩个目录)

    6 查看FastDFS storage 是否启动成功

    命令:ps -ef | grep fdfs

    并且我们进入到/fastdfs/storage/data/文件夹下会看到一些目录文件(256*256)
    ,如下:
    命令:cd /fastdfs/storage/data/ && ls

    7同理,也可以设置开机启动存储器:(一般生产环境需要开机启动一些服务,
    如keepalived、linux、tomcat等等)
    命令:vim /etc/rc.d/rc.local
    加入配置:/etc/init.d/fdfs_storaged start

    到此为止我们的FastDFS环境已经搭建完成!

    第六步,测试环境

    1 我们先使用命令上传一个文件。注意:是在tracker(跟踪器)中上传。
    首先我们在跟踪器(192.168.85.6)里copy一份client.conf文件。

    命令:cd /etc/fdfs/
    命令:cp client.conf.sample client.conf

    2 编辑client.conf文件
    命令:vim /etc/fdfs/client.conf
    修改内容:
    base_path=/fastdfs/tracker
    tracker_server=192.168.85.6:22122

    3 我们找到命令的脚本位置,并且使用命令,进行文件的上传:
    命令:cd /usr/bin/
    命令:ls | grep fdfs

    4 使用命令fdfs_upload_file进行上传操作:

    首先,我们先看一下存储器(192.168.85.7),进入到data下,在进入00文件夹下,发现00文件夹下还有一堆文件夹,然后继续进入00文件夹下,最终我们所

    进入的文件夹为:
    /fastdfs/storage/data/00/00 里面什么文件都没有。

    然后,我们进行上传操作,比如把之前的/lhy/software/文件夹下的某一个文件上传到FastDFS系统中去,在跟踪器(192.168.85.6)中上传文件,命令如下:

    命令:/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /lhy/software/FastDFS_v5.05.tar.gz

    最后我们发现,命令执行完毕后,返回一个group1/M00/00/00/...的ID,其实就是返回当前所上传的文件在存储器(192.168.85.6)中的哪一个组、哪一个目录位置,所以我们查看存储器中的/fastdfs/storage/data/00/00文件夹位置,发现已经存在了刚才上传的文件,到此为止,我们的测试上传文件已经OK了。如下:

     继续上传一张图片,以便后来使用:

    group1/M00/00/00/wKhVB1x9DoOARpcsAAIA416aNts636.png

     第七步、FastDFS与Nginx整合

    1, 首先两台机器里必须先安装nginx( https://www.cnblogs.com/lihaoyang/p/10381021.html  )

    2,然后我们在存储节点上(192.168.85.7)安装 fastdfs-nginx-module_v1.16.tar.gz 包进行整合。

     3 进入目录:cd fastdfs-nginx-module/src/

    4 编辑配置文件config
    命令: vim /usr/local/fast/fastdfs-nginx-module/src/config
    修改内容:去掉下图中的local文件层次

     

    修改为:

    5 FastDFS与nginx进行集成
    首先把之前的nginx进行删除
    目录命令:cd /usr/local/
    删除命令:rm -rf nginx
    进入到nginx目录命令:cd nginx-1.6.2/
    加入模块命令:./configure --add-module=/usr/local/fast/fastdfs-nginx-module/src/
    重新编译命令: make && make install

    6 复制fastdfs-ngin-module中的配置文件,到/etc/fdfs目录中,如图所示:

    cd /usr/local/fast/fastdfs-nginx-module/src/

     copy命令:cp /usr/local/fast/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

    7 进行修改 /etc/fdfs/ 目录下,我们刚刚copy过来的mod_fastdfs.conf 文件。

    命令:vim /etc/fdfs/mod_fastdfs.conf
    修改内容:比如连接超时时间、跟踪器路径配置、url的group配置、
    connect_timeout=10
    tracker_server=192.168.85.6:22122
    url_have_group_name = true
    store_path0=/fastdfs/storage

    8 复制FastDFS里的2个文件,到/etc/fdfs目录中,如图所示:

    目录命令:cd /usr/local/fast/FastDFS/conf/

    Copy命令:cp http.conf mime.types /etc/fdfs/

    9
    创建一个软连接,在/fastdfs/storage文件存储目录下创建软连接,将其链接到实际存放数据
    的目录。
    命令:ln -s /fastdfs/storage/data/ /fastdfs/storage/data/M00

    10 修改Nginx配置文件,如图所示:

    cd /usr/local/nginx/conf/

    命令:vim nginx.conf
    修改配置内容如下图所示:

    修改内容为:
    listen 8888;
    server_name localhost;
    location ~/group([0-9])/M00 {
    #alias /fastdfs/storage/data;
    ngx_fastdfs_module;
    }

    注意:nginx里的端口要和第五步 配置FastDFS存储中的storage.conf文件配置一致,也就是(http.server_port=8888)

     11 最后检查防火墙,然后我们启动nginx服务

    启动命令:/usr/local/nginx/sbin/nginx,我们刚才上传了一个文件,上传成功,
    如图:

    group1/M00/00/00/wKhVB1x9DoOARpcsAAIA416aNts636.png

    现在我们使用这个ID用浏览器访问地址:

    http://192.168.85.7:8888/group1/M00/00/00/wKhVB1x9DoOARpcsAAIA416aNts636.png

    运维注意:我们在使用FastDFS的时候,需要正常关机,不要使用kill -9
    强杀FastDFS进程,不然会在文件上传时出现丢数据的情况。
    到此,我们的FastDFS与Nginx整合完毕!!

    八:启动停止服务步骤如下:
    启动命令:
    启动tracker命令:/etc/init.d/fdfs_trackerd start
    查看进程命令:ps -el | grep fdfs
    启动storage命令:/etc/init.d/fdfs_storaged start
    查看进程命令:ps -el | grep fdfs
    启动nginx命令:/usr/local/nginx/sbin/nginx
    停止命令:
    停止tracker命令:/etc/init.d/fdfs_trackerd stop
    关闭storage命令:/etc/init.d/fdfs_storaged stop
    关闭nginx命令:/usr/local/nginx/sbin/nginx -s stop

  • 相关阅读:
    素数路径Prime Path POJ3126 素数,BFS
    Fliptile POJ3279 DFS
    Find the Multiple POJ1426
    洗牌Shuffle'm Up POJ3087 模拟
    棋盘问题 POJ1321 DFS
    抓住那只牛!Catch That Cow POJ3278 BFS
    Dungeon Master POJ2251 三维BFS
    Splitting into digits CodeForce#1104A
    Ubuntu下手动安装Nvidia显卡驱动
    最大连续子序列和
  • 原文地址:https://www.cnblogs.com/lihaoyang/p/10470606.html
Copyright © 2011-2022 走看看