Centos610系列配置

1.什么是FastDFS?

FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。

FastDFS服务端有两个角色:跟踪器(tracker)存储节点(storage)。跟踪器主要做调度工作,在访问上起负载均衡的作用。

存储节点存储文件,完成文件管理的所有功能:存储、同步和提供存取接口,FastDFS同时对文件的meta data进行管理。所谓文件的meta data就是文件的相关属性,以键值对(key value pair)方式表示,如:width=1024,其中的key为width,value为1024。文件meta data是文件属性列表,可以包含多个键值对。

FastDFS系统结构如下图所示:

2.本文目标

本文的目标是在CentOS上,单机安装FastDFS,包括Tracker和Storage,并结合Nginx的配置,最终完成文件的上传,并通过Nginx的路径来完成静态文件内容的展示

3.安装准备

3.1.1安装依赖库

在安装FastDFS和Nginx之前,需确保gcc、gcc-c++、 libstdc++-devel、make等依赖库和工具已经安装。

 yum -y install gcc gcc-c++ libstdc++-devel
yum -y groupinstall 'Development Tools'
yum -y install wget
yum -y install make

Nginx安装需要依赖pcre库以及zlib库,

     yum -y install pcre-devel

     yum install -y zlib-devel

yum -y install libxml2 libxml2-dev

yum -y install libxslt-devel

yum -y install gd-devel

yum -y install pcre pcre-devel

yum -y install zlib zlib-devel

yum -y install openssl openssl-devel

3.1.2安装libfastcommon类库

安装FastDFS必须先安装libfastcommon类库,否则会导致报错,安装直接根据如下几个步骤即可~

 wget https://github.com/happyfish100/libfastcommon/archive/master.zip
unzip master.zip
或者从 https://github.com/happyfish100/libfastcommon/archive/V1.0.39.tar.gz下载指定版本
cd libfastcommon-master
./make.sh
./make.sh install

安装结束。

3.1.3安装FastDFS

 wget https://github.com/happyfish100/fastdfs/archive/master.tar.gz
tar -zxvf master.tar.gz
cd fastdfs-master/
./make.sh
./make.sh install

安装结束。

安装好之后,在/usr/bin目录下,可以看fdfs开头的命令工具~

FastDFS安装完成之后,所有配置文件在/etc/fdfs目录下,tracker需要tracker.conf配置文件,storage需要storage.conf配置文件。

3.1.4配置tracker.conf

cd /etc/fdfs
ll
cp tracker.conf.sample tracker.conf

mkdir /opt/fastdfs/tracker

vi tracker.conf

设置base_path=/opt/fastdfs/tracker

保存退出。

启动FastDFS -Tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start

查看端口22122是否开始监听,确认启动是否成功

查看运行情况

查看日志是否启动成功

cat /srv/fastdfs/tracker/logs/trackerd.log


tracker配置完成

3.1.5配置storaged.conf

添加storage工作目录 mkdir /opt/fastdfs/storage

添加storage存储目录 mkdir /opt/fastdfs/data

复制storage.conf.sample为storage.conf

cp storage.conf.sample storage.conf

store_path0修改为storage存储目录路径

store_path修改为storage工作目录路径

3.1.6配置http.conf

 conf目录中的http.conf  /etc/fdfs/http.conf 

conf目录中的mime.types 拷贝至 /etc/fdfs/mime.types

conf目录中的anti-steal.jpg 拷贝至/etc/fdfs/anti-steal.jpg

修改http.conf

vi http.conf

启动存储节点配置

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

3.1.7配置预览

3.1.7.1FastDFS-nginx-module安装

  a.下载安装包

wget https://github.com/happyfish100/fastdfs-nginx-module/archive/master.zip

        unzip master.zip

3.1.7.2Nginx下载

wget https://nginx.org/download/nginx-1.9.9.tar.gz

3.1.7.3编译

cd nginx-1.9.9

./configure --add-module=../fastdfs-nginx-module-master/src/ --with-http_ssl_module

安装成功,查看版本信息

3.1.7.4查看ningx安装目录

3.1.7.5配置fastdfs-nginx-module

a.进入fastdfs-nginx-module/src目录

mod_fastdfs.conf配置文件拷贝到/etc/fdfs/目录中

进入/etc/fdfs目录

vi mod_fastdfs.conf

store_path0设置为storage存储目录 /opt/fastdfs/data

tracker_server设置为 192.168.125.139:22122

    url_have_group_name设置为true

3.1.8nginx配置

建议先在不添加任何模块时默认安装,新模块在再安装替换。

nginx初始安装,参照 https://www.cnblogs.com/oumi/p/10217057.html

现在假定是已安装了nginx,本文用到1.9.9版

本文用到的fastdfs-nginx-module版本未1.20

cd nginx-1.9.9

编译

make

make install (由于本次nginx已经安装过了,此处不再执行)。

替换编译后的nginx文件

a.先备份原先安装

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_v0

b.替换新编译文件

从nginx-1.9.9/objs/目录复制nginx文件至 /usr/local/nginx/sbin/

cd objs

cp nginx /usr/local/nginx/sbin/

c.重启nginx

service nginx restart

3.1.9FastDFS资源http协议访问支持

在nginx配置中 添加如下配置

server
{
listen ;
  server_name localhost;
  location ~/group[-]/ {
    ngx_fastdfs_module;
  }
  error_page /50x.html;
  location = /50x.html {
    root html;
  }
}

3.2 开机自启动

3.2.1设置开机启动

  chkconfig --add fdfs_trackerd

  chkconfig --add fdfs_storaged

  chkconfig fdfs_trackerd on

  chkconfig fdfs_storaged on

3.2.2启动命令参考

  service fdfs_trackerd start

  service fdfs_storaged start

  service fdfs_trackerd stop

   service fdfs_storaged stop

2.0.FastDFS单机模式综合版的更多相关文章

  1. 一、Ubuntu14.04下安装Hadoop2.4.0 (单机模式)

    一.在Ubuntu下创建hadoop组和hadoop用户 增加hadoop用户组,同时在该组里增加hadoop用户,后续在涉及到hadoop操作时,我们使用该用户. 1.创建hadoop用户组 2.创 ...

  2. Ubuntu 14.04下安装Hadoop2.4.0 (单机模式)

    转自 http://www.linuxidc.com/Linux/2015-01/112370.htm 一.在Ubuntu下创建Hadoop组和hadoop用户 增加hadoop用户组,同时在该组里增 ...

  3. Ubuntu14.04下安装Hadoop2.4.0 (单机模式)

    一.在Ubuntu下创建hadoop组和hadoop用户 增加hadoop用户组,同时在该组里增加hadoop用户,后续在涉及到hadoop操作时,我们使用该用户. 1.创建hadoop用户组 2.创 ...

  4. Ubuntu14.04下安装Hadoop2.5.1 (单机模式)

    本文地址:http://www.cnblogs.com/archimedes/p/hadoop-standalone-mode.html,转载请注明源地址. 欢迎关注我的个人博客:www.wuyudo ...

  5. hbase0.96.0单机模式安装(win7 无需cygwin)

        之前折腾了几天,想让hbase的单机模式在cygwin上跑起来,都不成功.正当我气馁之时,我无意中发现hbase0.96.0的bin和conf目录下有一些扩展名为cmd的文件.这难道是给win ...

  6. Hadoop单机模式安装-(1)安装设置虚拟环境

    网络上关于如何单机模式安装Hadoop的文章很多,按照其步骤走下来多数都失败,按照其操作弯路走过了不少但终究还是把问题都解决了,所以顺便自己详细记录下完整的安装过程. 此篇主要介绍如何在Windows ...

  7. ZooKeeper的安装、配置、启动和使用(一)——单机模式

    ZooKeeper的安装.配置.启动和使用(一)——单机模式 ZooKeeper的安装非常简单,它的工作模式分为单机模式.集群模式和伪集群模式,本博客旨在总结ZooKeeper单机模式下如何安装.配置 ...

  8. HBase单机模式安装

    第一部分 安装前准备 1.安装hadoop 今天刚刚学了hbase的一点基础,准备安装Hbase实际操练一下.因为安装hbase的前提条件是已经成功安装了hadoop,而且hadoop的版本要和hba ...

  9. Redis 单机模式,主从模式,哨兵模式(sentinel),集群模式(cluster),第三方模式优缺点分析

    Redis 的几种常见使用方式包括: 单机模式 主从模式 哨兵模式(sentinel) 集群模式(cluster) 第三方模式 单机模式 Redis 单副本,采用单个 Redis 节点部署架构,没有备 ...

随机推荐

  1. POJ3273 Monthly Expense (二分最小化花费)

    链接:http://poj.org/problem?id=3273 题意:FJ想把n天分成m组,每组是连续的,同一组的花费加起来算,求所分组情况中最高花费的最低值 思路:二分答案.二分整数范围内的花费 ...

  2. linux做免密登录,成功分发公钥后登录主机依旧需要输入密码的问题解决

    问题描述 在主机A上用ssh-keygen生成密钥对后,用ssh-copy-id命令将公钥成功copy到主机B上后,测试从A免密登录B,但是依旧需要输入主机B的密码后才能登录. 出现此错误的原因 如果 ...

  3. OPC通信原理在数采中的应用

    OPC通信原理在数采中的应用 OPC是Object Linking and Embedding(OLE)for Process Control的缩写,它是微软公司的对象链接和嵌入技术在过程控制方面的应 ...

  4. Vue(二)

    ---恢复内容开始--- 1.vue条件指令 可以运行加减运算 可以进行if判断 <!DOCTYPE html> <html> <head> <meta ch ...

  5. 九、c++容器

    9.1 简介 容器库是类模板与算法的汇集,允许程序员简单地访问常见数据结构,例如队列.链表和栈. 有三类容器--顺序容器.关联容器和无序关联容器--每种都被设计为支持不同组的操作. 顺序容器:顺序容器 ...

  6. AcWing 831. KMP字符串

    #include <iostream> using namespace std; , M = ; int n, m; int ne[N];//ne[i] : 以i为结尾的部分匹配的值 ch ...

  7. 路飞-后台home模块

    home模块 创建home模块 """ 前提:在 luffy 虚拟环境下 1.终端从项目根目录进入apps目录 >: cd luffyapi & cd ap ...

  8. mybatis报错:A query was run and no Result Maps were found for the Mapped Statement、、Property [login_ip] not found on type [com.thinkgem.jeesite.common.permission.entity.PremissUser]问题解决

    今天在做ssm项目的时候出现了: 先是出现 了错误: mybatis报错:A query was run and no Result Maps were found for the Mapped St ...

  9. MySql 怎么存取 Emoji

    01.前言 Emoji 在我们生活中真的是越来越常见了,几乎每次发消息的时候不带个 Emoji,总觉得少了点什么,似乎干巴巴的文字已经无法承载我们丰富的感情了.对于我们开发者来说,如何将 Emoji ...

  10. Abp.core中在应用层获取HttpContext对象

    实际IHttpContextAccessor对象已经在底层实现了自动的依赖注入,只需要在应用层引入Microsoft.AspNetCore.Http,然后在构造函数中依赖注入即可. /// <s ...