陈奇网络工作室

FasterDFS 基本配置

系统运维

1.首先

1、FastDFS是一个开源的轻量级分布式文件系统,对文件进行管理,具有文件存储、文件同步、文件访问(文件上传、文件下载)等功能,解决存储量大和负载增加的问题。这是一个平衡问题。特别适用于以文件为载体的在线服务,如相册网站、视频网站等。

2、FastDFS是为互联网定制的,充分考虑了冗余备份、负载均衡、线性扩展等机制,关注高可用、高性能等指标。有了FastDFS,轻松构建高性能集。文件服务器集群提供文件上传、下载等服务。

3、FastDFS由Tracker Server、Storage Server和Client组成。跟踪器主要执行预定工作并在访问期间充当负载平衡器。

4. 跟踪器和存储节点都可以由一台或多台服务器组成。跟踪器和存储节点中的服务器可以随时添加或下线,而不会影响在线服务。跟踪器中的所有服务器都是平等的,可以根据服务器负载随时增加或减少。

5. 将服务器添加到卷时,系统会自动完成同步现有文件,同步完成后,新服务器会自动切换到在线服务。

2. 基本安装程序

一、实验准备

centos7-1: 跟踪器192.168.142.66

centos7-2:存储nginx 192.168.142.77

2、开始安装

(1)安装libfastcommon服务(所有节点安装)

安装基础环境包

yum -y install libevent libevent-devel perl make gcc zlib zlib-devel pcre pcre-devel gcc -c openssl-devel

安装libfastcommon

[root@storage ~]# wget https://github.com/happyfish200/libfastcommon/archive/V1.0.38.tar.gz

[root@storage ~]# tar zxf V1.0.38.tar.gz -C /opt/

[root@storage ~]# cd /opt/libfastcommon-1.0.38/

编译建立软链接,便于系统识别

[root@storage libfastcommon-1.0.38]# ./make.sh ./make.sh install

[root@storage libfastcommon-1.0.38]# ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so

[root@storage libfastcommon-1.0.38]# ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so

[root@storage libfastcommon-1.0.38]# ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so~~

(2)安装FastDFS服务(所有节点安装)

下载并安装

[root@storage ~]# wget https://github.com/happyfish200/fastdfs/archive/V5.11.tar.gz

[root@storage ~]# tar zxf V5.11.tar.gz -C /opt/

[root@storage ~]# cd /opt/fastdfs-5.11/

编译

[root@storage fastdfs-5.11]# ./make.sh ./make.sh install

更改模板文件

[root@storage fastdfs-5.11]# cd /etc/fdfs///配置文件模板路径

[root@storage fdfs]# cp tracker.conf.sample tracker.conf

[root@storage fdfs]# cp storage.conf.sample storage.conf

[root@storage fdfs]# cp client.conf.sample client.conf

3)tracker监控端配置

创建数据文件和日志文件存放目录

mkdir -m 755 -p /opt/fastdfs

更改跟踪器配置文件

[root@tracker ~]# vim /etc/fdfs/tracker.conf

# 更改以下设置

port=22122 //Tracker服务默认端口22122就足够了

bas

e_path=/opt/fastdfs //tracker存储data和log的跟路径,必须提前创建好

http.server_port=8080 //tracker服务器上启动http服务进程,没装忽略

开启服务

[root@tracker ~]# fdfs_trackerd /etc/fdfs/tracker.conf start

[root@tracker ~]# netstat -atnp | grep 22122

tcp 0 0 0.0.0.0:22122 0.0.0.0:* LISTEN 43776/fdfs_trackerd

[root@tracker ~]# systemctl stop firewalld

[root@tracker ~]# setenforce 0

(4)storage服务端修改

建立数据文件、日志文件存放目录

mkdir -m 755 -p /opt/fastdfs

修改storage配置文件

[root@storage ~]# vim /etc/fdfs/storage.conf

#修改以下配置

group_name=group1 //默认组名,根据实际情况修改

port=23000 //storge默认23000,同一个组的storage端口号必须一致

base_path=/opt/fastdfs //storage日志文件的根路径

store_path_count=1 //与下径个数相同,默认为1

store_path0=/opt/fastdfs //提供的存储路径(默认与日志文件存放在一起)

tracker_server=192.168.142.66:22122 //自己的tracker服务器IP(重点!!!)

http.server_port=80 //http访问文件的端口默认为8888,nginx中配置的监听端口保持一致

开启服务

#开启服务(命令支持start|stop|restart)

[root@storage ~]# fdfs_storaged /etc/fdfs/storage.conf start

[root@storage ~]# netstat -atnp | grep 23000

tcp 0 0 0.0.0.0:23000 0.0.0.0:* LISTEN 40430/fdfs_storaged

[root@storage ~]# systemctl stop firewalld

[root@storage ~]# setenforce 0

检查是否与tracker监控端关联成功

[root@storage ~]# fdfs_monitor /etc/fdfs/storage.conf

Storage 1:

id = 192.168.142.77

ip_addr = 192.168.142.77 (storage) ACTIVE

http domain =

……省略

(5)安装nginx服务(storage:192.168.142.77)

这里为了减少虚拟机开启的数量,就在storage端进行nginx的安装

安装nginx及其组件

[root@storage ~]# tar zxf nginx-1.12.0.tar.gz -C /opt/

#下载fastdfs-nginx-module安装包

[root@storage ~]# wget https://github.com/happyfish200/fastdfs-nginx-module/archive/V1.20.tar.gz

[root@storage ~]# tar zxf V1.20.tar.gz -C /opt/

编译&安装

[root@storage ~]# cd /opt/nginx-1.12.0

[root@storage nginx-1.12.0]# ./configure \\\\

–prefix=/usr/local/nginx \\\\

–add-module=/opt/fastdfs-nginx-module-1.20/src/ //fastdfs-nginx-module模块

[root@storage nginx-1.12.0]# make && make install

注意

可能的报错:

/usr/include/fastdfs/fdfs_define.h:15:27: fatal error: common_define.h: No such file or directory

解决方案:

修改fastdfs-nginx-module-1.20/src/config文件,然后重新配置、编译及安装

ngx_module_incs="/usr/include/fastdfs /usr/include/fastcommon/"

CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"

配置fastdfs-nginx-module模块

[root@storage nginx-1.12.0]# cd fastdfs-nginx-module-1.20/src

[root@storage nginx-1.12.0]# cp mod_fastdfs.conf /etc/fdfs/ //移动其配置文件至fdfs目录下

#修改fastdfs-nginx-module模块配置文件mod-fasts.conf

[root@storage nginx-1.12.0]# cd /etc/fdfs

[root@storage fdfs]# vim mod_fastdfs.conf

#检查一下配置

base_path=/opt/fastdfs //存放数据文件、日志的路径

tracker_server=192.168.142.66:22122 //tracker端的地址(重点!!!)

url_have_group_name = true //url是否包含group名称

storage_server_port=23000 //需要和storage配置的相同

store_path_count=1 //存储路径个数,需要和store_path个数匹配

store_path0=/opt/fastdfs //文件存储的位置

修改nginx配置文件

[root@storage fdfs]# vim /usr/local/nginx/conf/nginx.conf

#空行处添加

location ~/M00 {

root /opt/fastdfs/data;

ngx_fastdfs_module;

}

拷贝fastdfs解压目录中的http.conf和mime.types

#不做这步可能会导致报错

[root@storage fdfs]# cd /opt/fastdfs-5.11/conf/

[root@storage conf]# cp mime.types http.conf /etc/fdfs/

(6)修改client端(本次实验即为storage端)

修改配置文件

[root@storage ~]# vim /etc/fdfs/client.conf

#检查以下配置

base_path=/opt/fastdfs //tracker服务器文件路径

tracker_server=192.168.142.66:22122 //tracker服务器IP地址和端口号

http.tracker_server_port=8080 // tracker服务器的http端口号,必须和tracker的设置

三、测验

上传测试文件abc.txt

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf abc.txt

下载文件abc.txt

/usr/bin/fdfs_download_file /etc/fdfs/client.conf group1/M00/00/00/wKiOTV354W2AIf7GAAAAEh4TEws726.txt abc.txt

删除文件abc.txt

fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/wKiOTV354W2AIf7GAAAAEh4TEws726.txt

更多关于云服务器,域名注册,虚拟主机的问题,请访问西部数码官网:zhuji.chenqinet.cn

相关推荐

后台-系统设置-扩展变量-手机广告位-内容页底部广告位3