`
zheyiw
  • 浏览: 1019850 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

FastDfs快速安装

阅读更多
#启动tracker/storage/nginx
#启动tracker/storage
fdfs_trackerd /etc/fdfs/tracker.conf
fdfs_storaged /etc/fdfs/storage.conf
#启动nginx
kill -9 $(ps -A | grep nginx | cut -d "?" -f 1 ) &> /dev/null
/usr/local/nginx/sbin/nginx




将以下保存为脚本:FastDFS.sh 在linux系统里面执行即可
脚本会自动下载所需的安装包,自动安装,自动配置,最后测试是否成功。

#!/bin/bash
if [ -z $(rpm -qa | grep gcc-c++) ]
then
yum install -y gcc-c++
fi
######################## user property #########################################
# 安装tracker机器的IP地址,如果部署其他tracker机器需要更改此ip
ip=192.168.9.129
# 用户路径
base_path=/usrdata/fastdfs
#指定tracker端口
tracker_port=22122
#nginx 端口
nginx_port=80
################################################################################

#进入初始目录
cd ~
#创建数据目录
mkdir -p $base_path


############################### 1、软件下载: ##################################

if [ -f V1.0.7*.gz ]
then
echo ""
else
wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz
fi

if [ -f fastdfs*module*.gz ]
then
echo ""
else
wget http://jaist.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz
fi

if [ -f V5.05*.gz ]
then
echo ""
else
wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz
fi

if [ -f nginx-1.8.0*.gz ]
then
echo ""
else
wget http://nginx.org/download/nginx-1.8.0.tar.gz
fi
    
if [ -f pcre*.gz ]
then
echo ""
else
wget http://exim.mirror.fr/pcre/pcre-8.36.tar.gz
fi    

if [ -f zlib*.gz ]
then
echo ""
else
wget http://zlib.net/zlib-1.2.11.tar.gz
fi

packages=`ls -l | grep 'gz$' | wc -l`
echo $packages
if [ $packages != 6 ]
then
echo "网络错误,下载少东西了"
exit
fi
######################### 判断文件是否下载好了 end ###############################

#2、libfastcommon安装:
cd ~
cp V1.0.7.tar.gz /usr/local/
tar -zxvf V1.0.7.tar.gz
cd libfastcommon-1.0.7
./make.sh
./make.sh install
rm -f /usr/local/V1.0.7.tar.gz

#libfastcommon.so默认安装到了/usr/lib64/libfastcommon.so,而FastDFS主程序设置的lib目录是/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

#3、安装FastDFS:
cd ~
tar -zxvf V5.05.tar.gz -C /usr/local
cd /usr/local/fastdfs-5.05/

./make.sh
./make.sh install


#配置文件设置:
cd /etc/fdfs
cp tracker.conf.sample tracker.conf
cp storage.conf.sample storage.conf
cp client.conf.sample client.conf

#详细设置见附件
#tracker.conf配置中要修改的几个项:
#bind_addr=172.17.0.2
#port=22122
#http.server_port=8181
sed -i "s#\(bind_addr\).*#\1=$ip#" tracker.conf
sed -i "s#\(^port\).*#\1=$tracker_port#" tracker.conf
sed -i "s#\(base_path\).*#\1=$base_path#" tracker.conf
sed -i "s#\(^http.server_port\).*#\1=8181#" tracker.conf


#storage.conf配置中要修改的几个项:
#group_name=group1
#bind_addr=172.17.0.2
#port=23000
#base_path=/usrdata/fastdfs
#store_path0=/usrdata/fastdfs
#tracker_server=172.17.0.2:22122
#http.server_port=8888
sed -i "s#\(bind_addr\).*#\1=$ip#" storage.conf
sed -i "s#\(base_path\).*#\1=$base_path#" storage.conf
sed -i "s#\(store_path0\).*#\1=$base_path#" storage.conf
sed -i "s#\(tracker_server\).*#\1=$ip:$tracker_port#" storage.conf
sed -i "s#\(http.server_port\).*#\1=8888#" storage.conf

#(3)启动
#启动tracker storage.conf
fdfs_trackerd /etc/fdfs/tracker.conf
fdfs_storaged /etc/fdfs/storage.conf

##############################4、安装nginx插件:#####################################
#(1)安装
cd ~
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz


#(2)config文件修改:
#vi config
#修改如下配置,我这里原来是
#CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"
#改成
#CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
#这个是很重要的,不然在nginx编译的时候会报错的,我看网上很多在安装nginx的fastdfs的插件报错,都是这个原因,而不是版本不匹配。
cd fastdfs-nginx-module/src/
sed -i "s#\(CORE_INCS=\"\$CORE_INCS \).*#\1/usr/include/fastdfs /usr/include/fastcommon/\"#" config



#修改配置
#group_name=group1
#tracker_server=172.17.0.2:22122
#store_path0=/usrdata/fastdfs
#base_path=/usrdata/fastdfs
#url_have_group_name = true
sed -i "s#\(group_name\).*#\1=group1#" mod_fastdfs.conf
sed -i "s#\(tracker_server\).*#\1=$ip:$tracker_port#" mod_fastdfs.conf
sed -i "s#\(store_path0\).*#\1=$base_path#" mod_fastdfs.conf
sed -i "s#\(base_path\).*#\1=$base_path#" mod_fastdfs.conf
sed -i "s#\(url_have_group_name\).*#\1=true#" mod_fastdfs.conf

cp  mod_fastdfs.conf /etc/fdfs



#2)、配置文件服务器的软连接
ln -s /usrdata/fastdfs/data /usrdata/fastdfs/data/M00  
#(配置文件中stoage存放数据的路径)


#同时将以下两个文件复制到/etc/fdfs/
cp /usr/local/fastdfs-5.05/conf/http.conf /etc/fdfs/
cp /usr/local/fastdfs-5.05/conf/mime.types /etc/fdfs/


#5、nginx安装:
#在每个Storage服务器上安装Nginx

#(1)pcre安装:
cd ~
tar -zxvf pcre-8.36.tar.gz
cd pcre-8.36
./configure
make && make install
cd ../

ln -s /usr/local/lib/libpcre.so.1 /lib64/

#(2)zlib安装:
cd ~
tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure
make && make install


#(3)nginx安装:
cd ~
tar -zxvf nginx-1.8.0.tar.gz
cd nginx-1.8.0
ipath=`whoami`
./configure --prefix=/usr/local/nginx --add-module=/$ipath/fastdfs-nginx-module/src
make
make install




#在server中添加
#
#location /group1/M00{
#    root /usrdata/fastdfs/data;
#    ngx_fastdfs_module;
#}

#判断文件内容是否已经写入
nginxconf=`sed -n '/group1/p' /usr/local/nginx/conf/nginx.conf`

if [ -z $nginxconf ]
        then
                sed -i "s@#error_page.*@location /group1/M00{root /usrdata/fastdfs/data;ngx_fastdfs_module;}@" /usr/local/nginx/conf/nginx.conf
        else
                echo "nothing todo"
fi &> /dev/null




启动:
kill -9 $(ps -A | grep nginx | cut -d "?" -f 1 ) &> /dev/null
/usr/local/nginx/sbin/nginx


安装完成。
#6、测试文件上传:
sed -i "s#\(base_path=\).*#\1$base_path#" /etc/fdfs/client.conf
sed -i "s#\(tracker_server=\).*#\1$ip:$tracker_port#" /etc/fdfs/client.conf
cd ~
echo "hello world" > 1.txt
#/usr/bin/fdfs_test /etc/fdfs/client.conf upload 1.txt
result=`/usr/bin/fdfs_test /etc/fdfs/client.conf upload 1.txt |grep url | grep -v big`
echo "得到类似这样的 $result"
curl ${result:17}



分享到:
评论

相关推荐

    FastDFS安装和配置过程

    FastDFS是一个高效的分布式文件系统,主要用于海量数据存储,能够实现文件的快速存取。它由淘宝的技术团队开发,主要适用于互联网环境下大流量高并发的场景。FastDFS的特性包括高性能、高可用性以及良好的可扩展性。...

    FastDFS分布式文件系统 v6.12.0.zip

    2. 电商系统:在电商平台中,商品图片、用户评价等数据可通过FastDFS进行存储和快速访问。 3. 日志管理:对于大规模的日志数据,FastDFS可以提供高效的存储和检索能力。 4. 大数据分析:在大数据分析场景下,FastDFS...

    FastDFS集群安装及配置规范

    - 对于PHP环境,可以使用FastDFS的PHP扩展,方便快速集成。 7. **安全性考虑**: - 考虑使用Nginx作为反向代理,提供HTTPS支持,增强文件传输的安全性。 - 设置访问控制,限制非法IP的访问,保护数据安全。 ...

    fastdfs一键安装脚本

    FastDFS的一键安装脚本极大地简化了部署流程,使得开发者能够快速搭建文件存储系统。同时,它保留了自定义和优化的空间,用户可以根据实际需求调整配置,以实现更高效、更稳定的文件服务。对于JavaWeb开发者来说,...

    FastDFS安装说明,所需文件包

    FastDFS是一款开源的高性能、轻量级的分布式...通过上述步骤,你可以快速搭建起一个基本的FastDFS环境,然后根据业务需求进行进一步的优化和调整。在使用过程中遇到任何问题,都可以查阅官方文档或社区资源,寻求帮助。

    CentOS6.X-fastDFS5.0.9自动安装脚本

    首先,自动安装脚本的意义在于简化了手动安装过程中的复杂步骤,通过自动化执行一系列命令,可以快速完成环境配置、依赖安装、源码编译和配置文件设置等操作。这有助于提高工作效率,减少人为错误,尤其对于不熟悉...

    fastdfs5.0.5安装包(安装极其简单,一键执行,linux X86_64位环境下支持)

    总之,这个FastDFS 5.0.5安装包提供了一种简单快捷的方式,在CentOS 7系统上部署FastDFS,对于想要快速搭建文件存储服务的用户来说,是一个非常实用的资源。用户只需遵循提供的说明,即可轻松完成安装和配置,享受...

    fastDFS文件系统搭建

    - **FastDFS安装**:`fastdfs-5.08` - 解压缩并编译 - 命令:`# tar zxvf fastdfs-5.08.tar.gz` - 切换到解压后文件夹:`# cd fastdfs-5.08` - 编译:`# ./make.sh` - 若使用`libfastcommon-1.0.7`与`fastdfs-...

    ubuntu安装配置fastdfs详细教程.pdf

    根据给定文件的标题、描述和部分内容,下面我将详细解释Ubuntu下安装配置FastDFS文件存储服务器的过程。 FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,并提供文件的存储和访问。由于其高性能和易于...

    FastDFS超详细安装手册

    ### FastDFS超详细安装手册 #### 一、安装FastDFS环境 FastDFS 是一款轻量级的开源分布式文件系统,适用于大规模数据存储场景。本文档将详细介绍如何在Linux环境下安装和配置FastDFS,并通过Nginx环境进行图像上传...

    FastDFS安装教程1

    - 如果只是测试环境,可以先只安装一台tracker和一台storage,以便快速体验FastDFS的基本功能。 通过以上步骤,你可以在CentOS7环境中成功安装并配置FastDFS-tracker和FastDFS-storage,为你的应用提供可靠的文件...

    fastdfs + nginx 资源安装包 linux

    在IT领域,尤其是在服务器部署和资源管理中,`fastdfs + nginx`的组合是一个常见的解决方案,尤其适用于存储和快速访问大量非结构化数据,如图片、视频等。本压缩包包含的组件是实现这一方案的基础,分别是`nginx`、...

    fastdfs包及安装步骤.zip

    本教程将详细介绍FastDFS的安装和配置过程,以及如何与Nginx进行集成。 一、FastDFS概述 FastDFS为互联网应用提供了高效、稳定、安全的文件存储解决方案。它分为两部分:跟踪服务器(Tracker Server)和存储服务器...

    FastDFS需要的配置需要软件和配置说明

    用户可以参考这个模板来快速搭建自己的FastDFS环境,根据实际需求调整配置。 总之,FastDFS、Nginx和FastDFS-nginx-module的整合能构建一个强大的文件服务系统,提供高可用性和高性能的文件存储与访问。对于大型...

    fastdfs+libfastcommon.zip

    3. 快速哈希算法:FastDFS采用libfastcommon中的哈希算法来快速计算文件ID,保证了文件ID的高效生成和唯一性。 4. 锁机制:提供了基于内存的锁和基于文件的锁,用于线程间的同步和资源保护,保证了多线程环境下的...

    高可用架构篇:【5】FastDFS集群的安装、配置、使用.rar

    《高可用架构篇:【5】FastDFS集群的安装、配置、使用》这篇文章涉及的核心知识点是构建基于FastDFS的高可用分布式文件系统集群。FastDFS是一个开源的高性能、轻量级的分布式文件系统,适用于互联网行业的大量小文件...

Global site tag (gtag.js) - Google Analytics