centos系统安装搭建fastDFS

本文不对原理进行阐述

一、简介

来自百度百科:百度百科

二、面向对象

基本解决了大容量存储和负载均衡的问题。

1.高可靠性:无单点故障
2.高吞吐量:只要Group足够多,数据流量就足够分散。

三、fastDFS的构成

1.服务端跟踪器(Tracker Server)

调度工作,在访问上起到负载均衡的作用

2.服务端存储节点(Storage Server)

文件的存储、同步并提供存取接口

四、安装搭建

1.安装环境:gcc环境

yum -y install gcc-c++

2.安装依赖:libevent 库

yum -y install libevent

3.下载相关安装包,并上传/usr/local下,如图

1.fastdfs-5.12.tar.gz
下载地址:https://github.com/happyfish100/fastdfs/releases
2.fastdfs-nginx-module-1.20.tar.gz
下载地址:https://github.com/happyfish100/fastdfs-nginx-module/releases
3.libfastcommon-1.0.43.tar.gz
下载地址:https://github.com/happyfish100/libfastcommon/releases
4.nginx-1.16.1.tar.gz
下载地址:http://nginx.org/en/download.html
在这里插入图片描述

4.安装这些包(显示指令执行过程)

环境

yum install -y gcc gcc-c++
yum install -y perl
yum install -y libevent

4.1 安装libfastcommon

tar -zxf libfastcommon-1.0.43.tar.gz  //解压
cd libfastcommon-1.0.43  //切换
./make.sh && ./make.sh install    //安装

注意:如果在 /usr/lib/ 之下没有 libfastcommon.so

cd /usr/lib64/    //切换到lib64包
cp libfastcommon.so /usr/lib/                     //拷贝libfastcommon.so 到/usr/lib/
find /usr/lib/ -name libfastcommon.so       //在/usr/lib/ 之下没有 libfastcommon.so

4.2 安装fastdfs

tar -zxvf fastdfs-5.12.tar.gz  //解压文件包
cd fastdfs-5.12			//切换
./make.sh && ./make.sh install     //编译安装

4.3 安装完成执行

cd /etc/fdfs/
ll

在这里插入图片描述

4.4 将安装目录下的conf文件夹里的文件复制到 /etc/fdfs/里

cd /usr/local/fastdfs-5.12/conf/
cp * /etc/fdfs/
cd /etc/fdfs/
ll

在这里插入图片描述
4.5 安装配置跟踪器服务(Tracker)
创建文件夹:mkdir -p /home/fastdfs
4.5.1 修改配置文件 /etc/fdfs/tracker.conf 设置数据的存储路径

base_path=/home/fastdfs

在这里插入图片描述
4.5.2 启动Tracker

/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf          //启动跟踪器
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart  //重启跟踪器

4.6 安装存储节点服务(Storage)
4.6.1 修改配置文件 /etc/fdfs/storage.conf 设置数据的存储路径
创建文件夹:mkdir -p /home/fdfs_storage

base_path=/home/fastdfs
store_path0=/home/fdfs_storage
tracker_server = IP:22122
http.server_port=88

4.6.2 启动Storage

/usr/bin/fdfs_storaged /etc/fdfs/storage.conf                  // 启动
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart    //重启

4.7 配置客户端(Client)
注意:如果在 /usr/lib/ 之下没有 libfdfsclient.so,需要将目录包/root/soft/fastdfs-6.06/client里的进行拷贝过来
4.7.1 修改配置文件 /etc/fdfs/client.conf

base_path = /home/fastdfs
tracker_server = IP:22122

4.8 测试
4.8.1 准备图片一张

在这里插入图片描述

4.8.2 上传测试、结果如图

/usr/bin/fdfs_test /etc/fdfs/client.conf upload /usr/local/soft/28.png

在这里插入图片描述
注意:如果出现超时错误等,可以查看服务器的防火墙端口访问,或者部分服务器还得添加安全组重启后生效,例如阿里云的服务器

5.安装fastdfs-nginx插件,辅助nginx与fastDFS工作
解决问题:测试文件在浏览器无法被访问

浏览器——>nginx——>fastdfs-nginx插件——>fastDFS

5.1 解压 fastdfs-nginx-module-1.20.tar.gz,并配置config文件删掉里面的local(将文件中的所有 /usr/local/ 路径改为 /usr/),将mod_fastdfs.conf文件拷贝到 /etc/fdfs里,并修改

tar -zxvf fastdfs-nginx-module-1.20.tar.gz
cd /usr/local/fastdfs-nginx-module/src/
cp mod_fastdfs.conf /etc/fdfs/
vi /etc/fdfs/mod_fastdfs.conf

在这里插入图片描述
mod_fastdfs.conf修改

base_path=/home/fastdfs
tracker_server=IP:22122
url_have_group_name = true
store_path0=/home/fdfs_storage

5.2安装nginx依赖

# 安装PCRE
yum install -y pcre pcre-devel
# 安装zlib 
yum install -y zlib zlib-devel
# 安装openssl 
yum install -y openssl openssl-devel

6.安装Nginx
创建临时目录:mkdir -p /var/temp/nginx/client
6.1 解压

tar -zxvf nginx-1.16.1.tar.gz

6.2 给Nginx 重新配置,添加插件模块
注意:/root/soft/fastdfs-nginx-module-1.21/src 根据自己安装包实际情况配置

cd nginx-1.16.1
./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=/usr/local/fastdfs-nginx-module-1.20/src
make && make install

安装完成后查看nginx目录,如图

ll /usr/local/nginx

在这里插入图片描述

mkdir /usr/local/nginx/logs 增加日志文件夹

6.3 修改Nginx配置文件

cd /usr/local/nginx/conf/
vi nginx.conf
pid         /usr/local/nginx/logs/nginx.pid;

在这里插入图片描述
在这里插入图片描述
6.4 启动nginx

cd /usr/local/nginx/sbin/
 ./nginx

至此,只要防火墙或者服务器的安全组相关端口()开发,即可正常访问了
80(nginx)、22122(tracker)、23000(storage)端口

发布了23 篇原创文章 · 获赞 3 · 访问量 1219

猜你喜欢

转载自blog.csdn.net/Joe14103/article/details/104906331