一、在 tracker 服务器上安装 nginx

说明:在每个tracker上安装nginx的只要目的是做负载均衡及实现高可用,如果只有一台tracker服务器,则可以不配置nginx

二、在 storage 服务器上安装nginx

1、安装 fastdfs-nginx-module

(1)、上传 fastdfs-nginx-module_v1.16.tar.gz,并解压

(2)、修改 fastdfs-nginx-module\src 下的 config 文件,去掉local

(3)、将 fastdfs-nginx-module\src 下的mod_fastdfs.conf 拷贝至 /etc/fdfs下

[root@localhost src]# cp mod_fastdfs.conf /etc/fdfs/

(4)、修改mod_fastdfs.conf配置文件

# the base path to store log files
base_path=/usr/local/fastdfs/storage# valid only when load_fdfs_parameters_from_tracker is true
tracker_server=192.168.200.132:22122# url中是否包含group名称
url_have_group_name = true# 指定文件存储路径,访问时使用该路径
store_path0=/usr/local/fastdfs/storage

(5)、将 libfdfsclient.so 拷贝至 /usr/lib 下

[root@localhost fdfs]# cp /usr/lib64/libfastcommon.so /usr/lib

(6)、创建 nginx/client 目录

[root@localhost fdfs]# cp /usr/lib64/libfastcommon.so /usr/lib

2、安装nginx

(1)、安装第三方软件包括:PCRE,ZLIB、OPENSSL (参考nginx学习笔记)

(2)、上传nginx-1.8.0.tar.gz,并解压缩

(3)、进入nginx-1.8.0目录,执行 configure 配置

./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/root/fastdfs-nginx-module/src

(4)、编译安装

(5)、修改nginx.conf配置文件

说明:

location /group1/M00/:请求uri以 /group1/M00/ 开头的请求,才会正常使用 nginx 模块 ngx_fastdfs_module下载访问图片。

(6)、创建临时目录

[root@localhost conf]# mkdir /var/temp/nginx-p

(7)、启动nginx

三、tracker.conf详解

1、基本配置

disable
#key:配置是否生效
#valu:true、false
disable=falsebind_addr
#key:绑定IP
#valu:IP地址
bind_addr=192.168.6.102port
#key:服务端口
#valu:端口整数值
port=22122connect_timeout
#key:连接超时
#valu:秒单位正整数值
connect_timeout=30network_timeout
#key:网络超时
#valu:秒单位正整数值
network_timeout=60base_path
#key:Tracker数据/日志目录地址
#valu:路径
base_path=/home/michael/fdfs/base4trackermax_connections
#key:最大连接数
#valu:正整数值
max_connections=256work_threads
#key:线程数,通常设置CPU数
#valu:正整数值
work_threads=4store_lookup
#key:上传文件的选组方式。
#valu:0、1或2。
# 0:表示轮询
# 1:表示指定组
# 2:表示存储负载均衡(选择剩余空间最大的组)
store_lookup=2store_group
#key:指定上传的组,如果在应用层指定了具体的组,那么这个参数将不会起效。另外如果store_lookup如果是0或2,则此参数无效。
#valu:group1等
store_group=group1store_server
#key:上传服务器的选择方式。(一个文件被上传后,这个storage server就相当于这个文件的storage server源,会对同组的storage server推送这个文件达到同步效果)
#valu:0、1或2
# 0: 轮询方式(默认)
# 1: 根据ip 地址进行排序选择第一个服务器(IP地址最小者)
# 2: 根据优先级进行排序(上传优先级由storage server来设置,参数名为upload_priority),优先级值越小优先级越高。
store_server=0store_path
#key:上传路径的选择方式。storage server可以有多个存放文件的base path(可以理解为多个磁盘)。
#valu:
# 0: 轮流方式,多个目录依次存放文件
# 2: 存储负载均衡。选择剩余空间最大的目录存放文件(注意:剩余磁盘空间是动态的,因此存储到的目录或磁盘可能也是变化的)
store_path=0download_server
#key:下载服务器的选择方式。
#valu:
# 0:轮询(默认)
# 1:IP最小者
# 2:优先级排序(值最小的,优先级最高。)
download_server=0reserved_storage_space
#key:保留空间值。如果某个组中的某个服务器的剩余自由空间小于设定值,则文件不会被上传到这个组。
#valu:
# G or g for gigabyte
# M or m for megabyte
# K or k for kilobyte
reserved_storage_space=1GBlog_level
#key:日志级别
#valu:
# emerg for emergency
# alert
# crit for critical
# error
# warn for warning
# notice
# info for information
# debug for debugging
log_level=inforun_by_group / run_by_user
#key:指定运行该程序的用户组
#valu:用户组名或空
run_by_group=
#key:
#valu:
run_by_user=allow_hosts
#key:可以连接到tracker server的ip范围。可设定多个值。
#valu
allow_hosts=check_active_interval
#key:检测 storage server 存活的时间隔,单位为秒。
#      storage server定期向tracker server 发心跳,
#      如果tracker server在一个check_active_interval内还没有收到storage server的一次心跳,
#      那边将认为该storage server已经下线。所以本参数值必须大于storage server配置的心跳时间间隔。
#      通常配置为storage server心跳时间间隔的2倍或3倍。
check_active_interval=120thread_stack_size
#key:设定线程栈的大小。 线程栈越大,一个线程占用的系统资源就越多。
#      如果要启动更多的线程(V1.x对应的参数为max_connections,V2.0为work_threads),可以适当降低本参数值。
#valu:如64KB,默认值为64,tracker server线程栈不应小于64KB
thread_stack_size=64KBstorage_ip_changed_auto_adjust
#key:这个参数控制当storage server IP地址改变时,集群是否自动调整。注:只有在storage server进程重启时才完成自动调整。
#valu:true或false
storage_ip_changed_auto_adjust=true

2、同步

FastDFS学习笔记 -- day04 与Nginx整合相关推荐

  1. ​​​​​​​Git学习笔记与IntelliJ IDEA整合

    2019独角兽企业重金招聘Python工程师标准>>> Git学习笔记与IntelliJ IDEA整合 一.Git学习笔记(基于Github) 1.安装和配置Git 下载地址:htt ...

  2. Git学习笔记与IntelliJ IDEA整合

    Git学习笔记与IntelliJ IDEA整合 一.Git学习笔记(基于Github) 1.安装和配置Git 下载地址:http://git-scm.com/downloads Git简要使用说明:h ...

  3. 经典再现,看到就是赚到。尚硅谷雷神 - SpringBoot 2.x 学习笔记 -高级与场景整合篇

    SpringBoot 2.x 场景整合 在上一篇核心功能篇里,我们已了解SpringBoot的配置文件.web开发.数据访问.JUnit5单元测试.生产指标监控.SpringBoot启动流程等.然而S ...

  4. FastDFS 学习笔记

    一.理论基础 FastDFS比较适合以中小文件为载体的在线服务,比如跟NGINX(APACHE)配合搭建图片服务器. 分布式文件系统FastDFS FastDFS是纯C语言实现,只支持Linux.Fr ...

  5. FastDFS学习笔记

    FastDFS课程内容 第一部分:FastDFS基础回顾 为什么要有分布式文件系统.分布式文件系统对比.FastDFS特性.linux安装.java访问FastDFS 第二部分:FastDFS系统架构 ...

  6. FastDFS 学习笔记

    一.理论基础 FastDFS比较适合以中小文件为载体的在线服务,比如跟NGINX(APACHE)配合搭建图片服务器. 分布式文件系统FastDFS FastDFS是纯C语言实现,只支持Linux.Fr ...

  7. ElasticSearch学习笔记(含SpringBoot整合)

    ElasticSearch笔记 文章目录 ElasticSearch笔记 带着问题上路--ES是如何产生的? (1)思考:大规模数据如何检索? (2)传统数据库的应对解决方案 (3)非关系型数据库的解 ...

  8. Struts2学习笔记——Struts2与Spring整合

    Struts2与Spring整合后,可以使用Spring的配置文件applicationContext.xml来描述依赖关系,在Struts2的配置文件struts.xml来使用Spring创建的be ...

  9. 【学习笔记】启动Nginx、查看nginx进程、查看nginx服务主进程的方式、Nginx服务可接受的信号、nginx帮助命令、Nginx平滑重启、Nginx服务器的升级

     1.启动nginx的方式: cd /usr/local/nginx ls ./nginx -c nginx.conf 2.查看nginx的进程方式: [root@localhost nginx] ...

最新文章

  1. 应用在vue项目里的axios使用方法
  2. docker私有仓库harbor配置helm chart仓库(安装helm chart插件)
  3. KVM总结-KVM性能优化之网络性能优化
  4. 【Linux系统编程】进程间通信之消息队列
  5. K8s遇到问题解决思路
  6. 《大话设计模式》读书笔记-第13章 建造者模式
  7. R7-4 检查密码 (15 分)
  8. 基于php校园失物招领,校园失物招领系统的设计.doc
  9. Java生成和操作Excel文件
  10. 用Python自动发送邮件
  11. nRF52832 矩阵按键调试 同一列上的按键 任意两个按键 按下 检测不到低电平(电平拉不下来)...
  12. 谁能再一次接受“南京大×××”不存在?
  13. MSN Messenger去广告和其他修改方法
  14. C语言--------学生管理系统(源代码)
  15. 【Pix4d精品教程】未校准相机:287 out of 402 images calibrated (71%), all images enabled, 6 block,问题分析及解决方案汇总
  16. LabVIEW以太网仪器控制
  17. vs2010中svn使用教程_vs2010+ Ankhsvn使用详解
  18. MySQL复制表结构、表数据的方法
  19. 用dw 删除重复html文件,Dreamweaver怎么撤销重做,DW怎么返回上一步,看完就明白了...
  20. iPad闪屏跳动怎么回事?怎么解决?

热门文章

  1. scipy在控制理论的应用
  2. centos7配置tomcat环境变量
  3. 测试容器网络带宽,限制容器对内存,对CPU的使用
  4. Cherno C++ P41 C++的this关键字
  5. http.ListenAndServe
  6. VSC 注册右键菜单
  7. 使用备份软件快速备份VMware虚拟机
  8. 社会心理学、社会和文化
  9. 利用Xshell修改Linux默认SSH端口号等详细配置
  10. Linux 命令(68)—— realpath 命令