Fastdfs集群搭建

注意:本次集群搭建采用linux迷你版测试

架构图

 

第一步

准备6台迷你版虚拟机

第二步

安装工具

  1. 安装lrzsz yum install lrszs -y
  2. 安装wget yum intall vim -y
  3. 安装unzip yum install unzip -y
  4. 安装ifconfig yum install net-tools -y

yum install lrszs vim unzip net-tools -y

安装nginx以及fastdfs所需的依赖

yum iinstall gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel gd gd-devel libtool libevent libevent-devel -y

第三步 安装fastdfs

1、上传fastdfs的安装包和libfastcommon的安装包

2、解压安装libfastcommon

cd 到libfastcommon下 执行 ./make.sh  然后 ./make.sh install

3、解压安装fastdfs

4、拷贝fastdfs目录中的http.conf和mime.types到/etc/fdfs目录中

注意6台机器全部执行以上操作

第四步:部署两个tracker server服务器,需要做的工作:

修改两个tracker服务器的配置文件:

tracker.conf:修改一个地方:

base path=/data/fastdfs/tracker  #设置tracker的数据文件和日志目录(需预先创建)

启动tracker服务器 fdfs trackerd/etc/fdfs/tracker.conf

第五步修改两个组中的4台storage中storage.conf文件

第一组group1的第一个storage server(修改storage.conf配置文件):

group name=group1I#组名,根据实际情况修改,值为group1或group2

basepath=/data/fastdfs/storage

#设置storage的日志目录(需预先创建)

store path0=/data/fastdfs/storage/files

#存储路径

tracker server=192.168.15.147:22122

#tracker服务器的IP地址以及端口号

tracker server=192.168.15.148:22122

第二组group2的第一个storage server(修改storage.conf配置文件):

group name=group2

#组名,根据实际情况修改,值为group1或group2

basepath=/data/fastdfs/storage

#设置storage的日志目录(需预先创建)

store path0=/data/fastdfs/storage/files #存储路径

tracker server=192.168.15.148:22122

#tracker服务器的IP地址以及端口号

tracker server=192.168.15.149:22122

启动storage服务器

使用之前的Java代码测试FastDFs的6台机器是否口以上传文件

注意:FastDFS默认是带有负载均衡策略的可以在tracker的2台机器中修改tracker.conf文件storelookup=1

随机存放策略

1指定组

2选择磁盘空间的优先存放默认值

修改后重启服务

fdfs trackerd/etc/fdfs/tracker.conf restart

第六步安装nginx,使用nginx对fastdfs进行负载均衡

上传nginx-1.12.2.tar.gz以及nginx的fastdfs扩展模块安装包fastdfs-nginx-module-master.zip添加nginx的安装依赖

yum install gcclopenssl openssl-devel pcre pcre-devel zlib zlib-devel-y

解压nginx

tar-zxvfnginx-1.12.2.tar.gz

解压fastfs扩展模块

unzip fastdfs-nginx-module-master.zip配置nginx的安装信息

2台tracker服务器的配置信息(不需要fastdfs模块)

./configure --prefix=/data/nginx

4台storage服务器其的配置信息(需要使用fastdfs模块)

./confiqure--prefix=/data/nginx --add-module=/data/fastdfs-nginx-modul/src

编译出错解决办法

执行 ln -s /usr/include/fast* /usr/local/include/ 修复

编译并安装nginx

./make

./make install

4台storage的服务器需要拷贝modfastdfs文件

将/data/fastdfs-nginx-module-master/src目录下的modfastdfs.conf文件拷贝到/etc/fdfs/目录

第七步配置tracker的两台机器的nginx

进入安装目录

cd /usr/local/nginx fdfs

添加一个location对请求进行拦截,配置一个正则规则拦截fastdfs的文件路径,并将请求转发#nginx拦截请求路径:

location ~/group[1-9]/M0[0-9]{

proxy pass http:// fastdfs_group_server;

}

添加一个upstream执行服务的IP为另外的4台stroage的地址#部署配置nqinx负载均衡:

upstream fastdfs_group_server{

server 192.168.15.147:80;

server 192.168.15.146:80;

server 192.168.15.145:80;

server 192.168.15.144:80;

}

第八步配置另外4台storage的nginx添加http访问的请求路径拦截

进入安装目录

cd/usr/local/nginx fdfs

添加一个location对请求进行拦截,配置一个正则规则拦截fastdfs的文件路径,使用fastdfs的#nginx拦截请求路径:

location ~/group[1-9]/M0[0-9]{

ngx_fastdfs_module;

}

第九步分别修改4台storage服务器的mod fasfdfs.conf文件(/etc/fdfs/mod fastdfs.conf)

#修改基本路径,并在指定路径创建对应文件夹

base path=/data/fastdfs/nginxmod

#保存日志目录#指定两台tracker服务器的ip和端口

tracker server-192.168.15.148:22122

#tracker服务器的IP地址以及端口号

tracker server=192.168.15.149:22122

#指定storage服务器的端口号

storage server port=23000

#通常情况不需要修改

#指定当前的storage服务器所属的组名(当前案例03和04为group105和06为group2) group name=group1

#当前服务器的group名

#指定ur1路径中是否包含组名(当前案例url包含组名)

url have group name=true #文件url中是否有group名

store path count=1

 #存储路径个数,需要和storepath个数匹配(一般不用改)

store path0=/data/fastdfs/files

#存储路径

#指定组个数,根据实际配置决定,(当前案例拥有2个组group1和group2)

group count=2 #设置组的个数

在末尾增加2个组的具体信息:

[group1]

group_name=group1

storage_server port=23000 store path count=1

storepath0=/data/fastdfs/files

[group2]

group name=group2

storage server port=23000 store path count=1

store path0=/data/fastdfs/files

第一个组的第二个storage按照相同的步骤操作;

另外一个组的两个storage也按照相同的步骤操作;

#测试nginx的配置文件是否正确(测试全部6台服务器)

cd /data /nginx/sbin/ 执行./nginx

#启动nginx服务器(全部6台服务器)

cd /data/nginx/sbin/ 执行 ./nginx

第十步:部署前端用户访问入口服务器,即访问192.168.230.128上的Nginx,该Nqinx负载均衡到后端

配置nginx.conf文件

location ~/group[1-9]/M0[0-9]{

proxy pass http:// fastdfs_group_server;

}

添加一个upstream执行服务的IP为2台tracker的地址#部署配置nginx负载均衡:

upstream fastdfs_group_server {

server 192.168.15.148:80;

server 192.168.15.149:80;

}

测试:使用浏览器访问128(唯一入口的nqinx服务器)服务器中的fastdfs文件

注意:由于之前128的nginx中可能拥有静态资源拦截会导致访问不到文件,这时可以注释或删除这些静

最后一定要注意防火墙

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值