热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

fastdfs+nginx安装配置过程

1.系统环境最小化安装的CentOS6.2tracker1:192.168.68.113tracker1:192.168.68.116storage1:192.168.68.114storage1:192.168.68.1152.环境准备[所有服务器都需要]安装EPEL源rpm-ivhepel-release-6-6.
1.系统环境
最小化安装的 CentOS 6.2
tracker1:   192.168.68.113
tracker1:   192.168.68.116
storage1:   192.168.68.114
storage1:   192.168.68.115
2.环境准备[所有服务器都需要]
安装EPEL源
rpm -ivh epel-release-6-6.noarch.rpm
安装开发工具和编译nginx所需的开发包
yum groupinstall -y "Development Tools"
yum install -y libevent-devel pcre-devel zlib-devel
3.在tracker上的安装配置
[root@tracker1]# wget http://fastdfs.googlecode.com/files/FastDFS_v3.06.tar.gz
[root@tracker1]# tar xvzf FastDFS_v3.06.tar.gz
[root@tracker1]# cd FastDFS
[root@tracker1]# vi make.sh
#将找到下面两行,将前边的"#"去掉,目的是安装httpd和fdfs_trackerd/fdfs_storaged服务
    WITH_HTTPD=1
    WITH_LINUX_SERVICE=1
[root@tracker1]# ./make.sh
[root@tracker1]# ./make.sh install
[root@tracker1]# vi /etc/fdfs/tracker.conf
修改/etc/fdfs/tracker.conf,主要修改以下两处,如有其他调整,可参考文档自行调整,默认的配置也可以工作。
    # 配置data和log的存放路径,该路径如果不存在,需要自己创建
    base_path=/home/tracker1/fastdfs
    # 找到下面这行包含两个"##"号
    ##include http.conf
    # 去掉一个"#"
    #include http.conf
[root@tracker1]# mkdir -p /home/tracker1/fastdfs
启动tracker服务
[root@tracker1]# service fdfs_trackerd start
确认8080,22122端口已经监听
[root@tracker1]# netstat -ntl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State
tcp        0      0 0.0.0.0:111                 0.0.0.0:* LISTEN
tcp        0      0 0.0.0.0:8080                0.0.0.0:* LISTEN
tcp        0      0 0.0.0.0:22  0.0.0.0:*                   LISTEN
tcp        0      0 0.0.0.0:45372               0.0.0.0:*                   LISTEN
tcp        0      0 0.0.0.0:22122               0.0.0.0:*                   LISTEN
tcp        0      0 :::111    :::*                        LISTEN
tcp        0      0 :::22     :::*                        LISTEN
tcp        0      0 :::45032  :::*                        LISTEN
4.在storage上的安装配置
下载FastDFS,Nginx和fastdfs-nginx-module
[root@storage1]# wget http://fastdfs.googlecode.com/files/FastDFS_v3.06.tar.gz
[root@storage1]# wget http://fastdfs.googlecode.com/files/fastdfs-nginx-module_v1.10.tar.gz
[root@storage1]# wget http://nginx.org/download/nginx-1.0.11.tar.gz
安装FastDFS =>安装方法与tracker1上相同。
安装nginx和fastdfs-nginx-module
[root@storage1]# tar xvzf nginx-1.0.11.tar.gz
[root@storage1]# tar xvzf fastdfs-nginx-module_v1.10.tar.gz
[root@storage1]# cd nginx-1.0.11
[root@storage1]# ./configure --prefix=/usr/local/nginx --add-module=/home/fastdfs-nginx-module/src
[root@storage1]# make
[root@storage1]# make install
[root@storage1]# vi /etc/fdfs/storage.conf
修改/etc/fdfs/storage.conf,主要修改以下几处,如有其他调整,可参考文档自行调整,默认的配置也可以工作。
    
    # HTTP settings
    # 关闭内置的web server
    http.disabled=true
    # the port of the web server on this storage server
    # web server的端口改成80
    http.server_port=80
    # the name of the group this storage server belongs to
    # 此台storage1所属的服务器组名,同组内storage数据完全相同
    group_name=group1
    # the base path to store data and log files
    # 放置data和log的目录
    base_path=/home/storage1/fastdfs
    # store_path#, based 0, if store_path0 not exists, it's value is base_path
    # the paths must be exist
    # 放置文件的目录
    store_path0=/home/storage1/fastdfs
    # tracker_server can ocur more than once, and tracker_server format is
    # "host:port", host can be hostname or ip address
    # tracker server的ip和端口,此处可以写多个tracker server,每行一个
    tracker_server=192.168.68.113:22122
    tracker_server=192.168.68.116:22122
[root@storage1]# cp /home/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
[root@storage1]# vi /etc/fdfs/mod_fastdfs.conf
    # the base path to store log files
    # 放置log的目录
    base_path=/home/storage1/fastdfs
    # FastDFS tracker_server can ocur more than once, and tracker_server format is
    # "host:port", host can be hostname or ip address
    # tracker1的ip和端口,此处可以写多个tracker server,每行一个
    tracker_server=192.168.68.113:22122
    tracker_server=192.168.68.116:22122
    # the group name of storage server
    # 此台storage server所属的服务器组名
    group_name=group1
    # if uri including group name
    # default value is false
    # 在URL中包含group名称
    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
    # 放置文件的目录
    store_path0=/home/storage1/fastdfs
[root@storage1]# mkdir -p /home/storage1/fastdfs
在nginx的server配置段中增加M00的location声明
[root@storage1]# vi /usr/local/nginx/conf/nginx.conf
    location /group1/M00 {
            root /home/storage1/fastdfs/data;
            ngx_fastdfs_module;
    }
创建M00目录的软连接
[root@storage1]# ln -s /home/storage1/fastdfs/data  /home/storage1/fastdfs/data/M00
启动storage服务
[root@storage1]# service fdfs_storaged start
启动nginx,启动之前,要确定fdfs_trackerd服务已启动且相关防火墙端口已开放
[root@storage1]# /usr/local/nginx/sbin/nginx
确认80,23000端口已经监听
[root@storage1]# netstat -ntl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State
tcp        0      0 0.0.0.0:111                 0.0.0.0:* LISTEN
tcp        0      0 0.0.0.0:80  0.0.0.0:*                   LISTEN
tcp        0      0 0.0.0.0:22  0.0.0.0:*                   LISTEN
tcp        0      0 0.0.0.0:23000               0.0.0.0:*                   LISTEN
tcp        0      0 0.0.0.0:34169               0.0.0.0:*                   LISTEN
tcp        0      0 :::111    :::*                        LISTEN
tcp        0      0 :::22     :::*                        LISTEN
tcp        0      0 :::60001  :::*                        LISTEN
5.在tracker上的操作[作为client测试]
[root@tracker1]# /etc/fdfs/client.conf
    # the base path to store log files
    base_path=/tmp
    # tracker_server can ocur more than once, and tracker_server format is
    #  "host:port", host can be hostname or ip address
    tracker_server=192.168.68.113:22122
    tracker_server=192.168.68.116:22122
创建一个用于测试的文件test.txt
[root@tracker1]# vi test.txt
输入内容: hello,this is my first fastdfs test
保存。使用自带的fdfs_test上传文件测试
[root@tracker1]# /usr/local/bin/fdfs_test /etc/fdfs/client.conf upload test.txt
This is FastDFS client test program v3.06
Copyright (C) 2008, Happy Fish / YuQing
FastDFS may be copied only under the terms of the GNU General
Public License V3, which may be found in the FastDFS source kit.
Please visit the FastDFS Home Page http://www.csource.org/
for more detail.
[2012-06-13 17:58:25] INFO - base_path=/tmp, connect_timeout=30, network_timeout=60, tracker_server_count=2, anti_steal_token=0, anti_steal_secret_key 
length=0
tracker_query_storage_store_list_without_group:
        server 1. group_name=group1, ip_addr=192.168.68.114, port=23000
group_name=group1, ip_addr=192.168.68.114, port=23000
storage_upload_by_filename
group_name=group1, remote_filename=M00/00/00/wKhEck_YZEHqsZRSAAAAJdWuY6w607.txt
source ip address: 192.168.68.114
file timestamp=2012-06-13 17:58:25
file size=37
file crc32=3584975788
file url: http://192.168.68.113:8080/group1/M00/00/00/wKhEck_YZEHqsZRSAAAAJdWuY6w607.txt
storage_upload_slave_by_filename
group_name=group1, remote_filename=M00/00/00/wKhEck_YZEHqsZRSAAAAJdWuY6w607_big.txt
source ip address: 192.168.68.114
file timestamp=2012-06-13 17:58:25
file size=37
file crc32=3584975788
file url: http://192.168.68.113:8080/group1/M00/00/00/wKhEck_YZEHqsZRSAAAAJdWuY6w607_big.txt
6.使用浏览器打开上传的文件
http://192.168.68.113:8080/group1/M00/00/00/wKhEck_YZEHqsZRSAAAAJdWuY6w607_big.txt
如果看到文件内容,说明配置成功!

推荐阅读
  • 本文介绍如何在现有网络中部署基于Linux系统的透明防火墙(网桥模式),以实现灵活的时间段控制、流量限制等功能。通过详细的步骤和配置说明,确保内部网络的安全性和稳定性。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • 本文将深入探讨PHP编程语言的基本概念,并解释PHP概念股的含义。通过详细解析,帮助读者理解PHP在Web开发和股票市场中的重要性。 ... [详细]
  • 本文详细介绍了如何通过RPM包在Linux系统(如CentOS)上安装MySQL 5.6。涵盖了检查现有安装、下载和安装RPM包、配置MySQL以及设置远程访问和开机自启动等步骤。 ... [详细]
  • 本文详细介绍了如何在预装Ubuntu系统的笔记本电脑上安装Windows 7。针对没有光驱的情况,提供了通过USB安装的具体方法,并解决了分区、驱动器无法识别等问题。 ... [详细]
  • Nginx 反向代理与负载均衡实验
    本实验旨在通过配置 Nginx 实现反向代理和负载均衡,确保从北京本地代理服务器访问上海的 Web 服务器时,能够依次显示红、黄、绿三种颜色页面以验证负载均衡效果。 ... [详细]
  • 本文详细介绍了如何在云服务器上配置Nginx、Tomcat、JDK和MySQL。涵盖从下载、安装到配置的完整步骤,帮助读者快速搭建Java Web开发环境。 ... [详细]
  • 使用Python在SAE上开发新浪微博应用的初步探索
    最近重新审视了新浪云平台(SAE)提供的服务,发现其已支持Python开发。本文将详细介绍如何利用Django框架构建一个简单的新浪微博应用,并分享开发过程中的关键步骤。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 本文详细介绍了VMware的多种认证选项,帮助你根据职业需求和个人技能选择最合适的认证路径,涵盖从基础到高级的不同层次认证。 ... [详细]
  • 全面解析运维监控:白盒与黑盒监控及四大黄金指标
    本文深入探讨了白盒和黑盒监控的概念,以及它们在系统监控中的应用。通过详细分析基础监控和业务监控的不同采集方法,结合四个黄金指标的解读,帮助读者更好地理解和实施有效的监控策略。 ... [详细]
author-avatar
金玉的海角_745
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有