安装使用FastDFS,使用Nginx提供访问

FastDFS:是一种分布式文件系统,主要的组件是tracker和storage,工作流程如下图。
安装使用FastDFS,使用Nginx提供访问_第1张图片

环境准备:

主机:
centos 7.x:192.168.206.135	(tracker和storage在一台主机上。)

软件包:
libfastcommonV1.0.7.tar.gz
FastDFS_v5.05.tar.gz
fastdfs-nginx-module_v1.16.tar.gz
nginx-1.17.3.tar.gz

安装:

一、基础软件包:
	yum -y install gcc gcc-c++ libevent pcre-devel openssl-devel

	tar -zxvf libfastcommonV1.0.7.tar.gz
	mv libfastcommon-1.0.7	/usr/local/
	cd /usr/local/libfastcommon-1.0.7
	./make.sh
	./make.sh install
	cp /usr/lib64/libfastcommon.so /usr/lib



二、安装FastDFS:
	tar -zxvf FastDFS_v5.05.tar.gz
	mv FastDFS /usr/local
	cd /usr/local/FastDFS
	./make.sh
	./make.sh install
	cp /usr/local/FastDFS/conf/* /etc/fdfs/	# FastDFS配置文件是/etc/fdfs/,因此需要将软件包的配置文件,拷贝到/etc/fdfs/

	1、跟踪器tracker配置
	vim vim /etc/fdfs/tracker.conf
	base_path=/usr/local/FastDFS/tracker		# 22行,数据存储的位置

	fdfs_trackerd /etc/fdfs/tracker.conf [restart]  # 启动tracker
	
	2、存储storage配置
	vim /etc/fdfs/storage.conf
	base_path=/usr/local/FastDFS/storage	# 41行,数据存储位置
	store_path0=/usr/local/FastDFS/storage	# 109行,如果不配置这个属性,则采用base_path中配置的路径
	tracker_server=192.168.206.135:22122	# 118行,追踪器的ip和port
	
	fdfs_storaged /etc/fdfs/storage.conf [restart]  # 启动storage‘

	3、配置客户端client:(用于测试)
	cp /usr/local/FastDFS/client/libfdfsclient.so /usr/lib

	vim /etc/fdfs/client.conf
	base_path=/usr/local/FastDFS/client			# 10行
	tracker_server=192.168.206.135:22122		# 14行  	

	fdfs_test /etc/fdfs/client.conf upload index.html 	# 上传文件(index.html)到fastDFS
	# 这里会得到文件上传到fastDFS上的路径

安装使用FastDFS,使用Nginx提供访问_第2张图片

例如:http://192.168.206.135/group1/M00/00/00/wKjOh18XDA2AIpWTAAAAET6XstA39_big.html
# 到这里FastDFS搭建完毕,但是直接将这个url放到浏览器中是无法访问的。需要进一步的配置。


三、通过Nginx访问FastDFS上的文件:
	# 这里要使用一个插件,fastdfs-nginx-module_v1.16.tar.gz
	# 通过这个插件可以实现FastDFS的外部访问
	# 浏览器 --> nginx --> 插件 --> FastDFS
	
	1、配置插件
	tar -zxvf fastdfs-nginx-module_v1.16.tar.gz
	mv fastdfs-nginx-module /usr/local
	cd /usr/local/fastdfs-nginx-module

	vim src/config	# 替换掉文件中的所有的local/

安装使用FastDFS,使用Nginx提供访问_第3张图片

	cp /usr/local/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/		# 将配置文件拷贝到/etc/fdfs/

	vim /etc/fdfs/mod_fastdfs.conf
	tracker_server=192.168.206.135:22122		# 40行
	group_name=group1			# 47行,这里的group1就是上传文件得到的url前缀group1
	url_have_group_name = true					# 53行,使用前缀
	store_path0=/usr/local/FastDFS/storage		# 62行,fastDFS的storage配置的存储路径

	
	2、安装nginx,添加插件模块
	useradd -s /sbin/nologin nginx	# 创建启动nginx的用户
	tar -zxvf nginx-1.17.3.tar.gz
	cd nginx-1.17.3
	./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --add-module=/usr/local/fastdfs-nginx-module/src	# 设置安装路径,启动用户,添加插件模块
	make && make install


	3、配置nginx
	vim /usr/local/nginx/conf/nginx.conf
	location /group1/M00/ {		# 加添一个localtion,将请求转发给ngx_fastdfs_module处理。
            ngx_fastdfs_module;
    }

访问:http://192.168.206.135/group1/M00/00/00/wKjOh18XDA2AIpWTAAAAET6XstA39_big.html
安装使用FastDFS,使用Nginx提供访问_第4张图片

后面用到集群或者高可用再做补充。

参考:
Dubbo+zookeeper+SpringBoot+Redis+MQ微服务架构实战开发

你可能感兴趣的:(安装使用FastDFS,使用Nginx提供访问)