centos7配置fastdfs集群(5.09)

来源:互联网 发布:linux项目开发实例 编辑:程序博客网 时间:2024/05/14 11:04


简介:

FastDFS是一个开源的轻量级分布式文件系统,它的特性在这里略过几千字。


基础环境准备:

centos7虚拟机2台,暂时关闭机器的防火墙,iptables -F

机器A: 192.168.1.106

机器B: 192.168.1.107


目标:使用两台机,组成一个fastdfs集群,含有1组存储服务


1.安装依赖库libfastcommon

下载:https://github.com/happyfish100/libfastcommon (master分支)

unzip libfastcommon-master.zipcd libfastcommon-master./make.sh./make.sh install

2.安装fastdfs

下载:https://github.com/happyfish100/fastdfs(5.09版本)

unzip fastdfs-5.09.zipcd fastdfs-5.09./make.sh./make.sh installcp conf/http.conf /etc/fdfs/cp conf/mime.types /etc/fdfs/

a)如果全程没报错,则安装成功,在这里必须拷贝conf下的两个文件,否则运行报错。

b)安装完毕后,执行进程默认都在/usr/bin目录中,可以通过ls /usr/bin/fdfs_*查看。

c)安装完毕后,启动的配置文件默认都在/etc/fdfs中。


3.安装nginx fastdfs moudel(用于下载文件)

下载module:https://github.com/happyfish100/fastdfs-nginx-module(master分支)
下载nginx:http://nginx.org/en/download.html (选个最新稳定版,在这里我选择了1.10.3)

tar -xzvf nginx-1.10.3.tar.gzunzip fastdfs-nginx-module-master.zipmkdir /usr/local/nginx-1.10.3cd nginx-1.10.3./configure --prefix=/usr/local/nginx-1.10.3 --add-module=/home/daiyu/soft/fastdfs-nginx-module-master/srcmakemake install

a)fastdfs的文件名包含了下载路径,所以可以通过nginx模块进行静态下载,而不需要通过tracker服务。

b)接下来还需要把fastdfs-nginx-module安装目录中src目录下的mod_fastdfs.conf也拷贝到/etc/fdfs目录下

cp fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/

4.启动fastdfs前的一些目录准备

mkdir /fdfs0 #文件存储路径0mkdir /fdfs1 #文件存储路径1mkdir /fastdfs/tracker #tracker服务的日志和一些数据存储mkdir /fastdfs/storage #storage服务的日志和一些数据存储(非文件数据)mkdir /fastdfs/mod_fastdfs #fastdfs nginx模块mkdir /fastdfs/mod_fastdfs/logs #fastdfs nginx模块日志mkdir /fastdfs/client #测试客户端的日志,备用

配置文件简单介绍


tracker.conf     #tracker服务依赖的配置storage_ids.conf #tracker服务依赖的配置storage.conf     #storage服务依赖的配置http.conf        #nginx模块依赖的配置mime.types       #nginx模块依赖的配置mod_fastdfs.conf #nginx模块依赖的配置client.conf      #测试客户依赖的配置

5.配置tracker的配置,并启动服务

cp tracker.conf.sample tracker.confvim tracker.conf#修改配置项如下(A/B机器只需要更换bind_addr)bind_addr=192.168.1.106port=22122base_path=/fastdfs/trackeruse_storage_id = truestorage_ids_filename = /etc/fdfs/storage_ids.confid_type_in_filename = idcp storage_ids.conf.sample storage_ids.confvim storage_ids.conf#修改配置项如下(A/B机器一致)# <id>  <group_name>  <ip_or_hostname>100001   G001  192.168.1.106100002   G001  192.168.1.107

启动服务:fdfs_trackerd /etc/fdfs/tracker.conf start

重启服务:fdfs_trackerd /etc/fdfs/tracker.conf restart

停止服务:fdfs_trackerd /etc/fdfs/tracker.conf stop


6.配置storage的配置,并启动服务

cp storage.conf.sample storage.confvim storage.conf#修改配置项如下(A/B机器只需要更换bind_addr)group_name=G001bind_addr=192.168.1.106port=23000base_path=/fastdfs/storagestore_path_count=2store_path0=/fdfs0store_path1=/fdfs1tracker_server=192.168.1.106:22122tracker_server=192.168.1.107:22122

启动服务:fdfs_storaged /etc/fdfs/storage.conf start

重启服务:fdfs_storaged /etc/fdfs/storage.conf restart

停止服务:fdfs_storaged /etc/fdfs/storage.conf stop


做完这一步,集群已经启动,可以通过命令观测集群是否都处于ACTIVE状态

/usr/bin/fdfs_monitor /etc/fdfs/storage.conf


7.配置nginx fastdfs的配置

vim mod_fastdfs.conf#修改配置项如下base_path=/fastdfs/mod_fastdfsload_fdfs_parameters_from_tracker=trueuse_storage_id = truestorage_ids_filename = /etc/fdfs/storage_ids.conftracker_server=192.168.1.106:22122tracker_server=192.168.1.107:22122group_name=G001url_have_group_name = truestore_path_count=2store_path0=/fdfs0store_path1=/fdfs1log_filename=/fastdfs/mod_fastdfs/logs/mod_fastdfs.logresponse_mode=proxygroup_count = 0


8.配置nginx,并启动

mkdir /fastdfs/nginxmkdir /fastdfs/nginx/confmkdir /fastdfs/nginx/logscd /fastdfs/nginxvim fastdfs.proxy.conf#修改配置项如下user root root;worker_processes 1;events {    worker_connections 1024;}http {    log_format  main  '$msec $status $request $request_time '                      '$http_referer $remote_addr [ $time_local ] '                      '$upstream_response_time $host $bytes_sent '                      '$request_length $upstream_addr';    server {        listen 8080;        location / {            ngx_fastdfs_module;        }    }}

a) 配置好nginx的执行文件搜索路径/etc/profile

b) 上家伙

测试配置:nginx -p `pwd` -c conf/fastdfs.proxy.conf -t

启动:nginx -p `pwd` -c conf/fastdfs.proxy.conf


9.测试上传

cp client.conf.sample client.confvim client.conf#修改配置项如下base_path=/fastdfs/clienttracker_server=192.168.1.106:22122tracker_server=192.168.1.107:22122load_fdfs_parameters_from_tracker=trueuse_storage_id = truestorage_ids_filename = /etc/fdfs/storage_ids.conf

echo "hello world" > t.txt

fdfs_upload_file /etc/fdfs/client.conf t.txt


根据文件名,可以找到文件在这个目录中,同时到B机器检测这个文件是否已经同步成功:

ls /fdfs0/data/00/0F/


10.测试下载

curl -i "127.0.0.1:8080/G001/M00/00/0F/oYYBAFjCxnSAbU63AAAADFmwwCQ201.txt"



小结:

至此,基本的安装配置流程就结束了,实际线上部署还会有很多优化配置,这里就不一一展开了,有兴趣可以私下交流。


原文出自:http://blog.csdn.net/daiyudong2020/article/details/61210303


End;

0 0
原创粉丝点击