FastDFS是用c语言编写的一款开源的分布式文件系统。FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。
Storage安装:
1 | wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz |
修改配置:
1 | vi storage.conf |
参考如下参数:
1 | [root@localhost fdfs] |
1 | disabled=false |
启动storage服务:
1 | [root@HY-DFS-01 fdfs] |
查看程序运行情况:
1 | [root@HY-DFS-01 fdfs]# lsof -i :23000 |
1 | [root@HY-DFS-01 fdfs]# netstat -tunlp|grep 23000 |
1 | [root@HY-DFS-01 fdfs]# ps -ef|grep fdfs |
安装nginx服务:
所需文件:
1 | [root@HY-DFS-01 tools]# ll |
安装依赖包:
1 | yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers |
安装nginx需要安装以下依赖包:
1 | yum -y install pcre-devel zlib-devel make |
创建用户:
1 | useradd -u 602 -s /sbin/nologin -M nginx |
解压安装包:
1 | tar -zxf pcre-8.37.tar.gz |
编译:
1 | ./configure \ |
安装:
1 | make && make install |
修改nginx配置文件:
1 | server { |
修改mod_fastdfs.conf文件(注意有两个group,Fastdfs服务部署在多台服务器时,要改成对应的group_name和 ip ):
1 | vi /etc/fdfs/mod_fastdfs.conf |
参考如下配置:
1 | connect_timeout=2 |
上传文件测试:
1 | [root@HY-DFS-01 ~]# fdfs_upload_file /etc/fdfs/client.conf /root/hello.txt |
http访问测试:
http://10.0.77.77:8080/group1/M00/00/00/ChtgcVg_yJOAaqgGAAAADVFCBW8206.txt
开机自启动:
1 | chkconfig --add fdfs_storaged |
验证:
1 | [root@HY-DFS-04 ~]# chkconfig --list|grep 3:on|grep fdfs |
Tracker的安装:
1 | git clone https://github.com/happyfish100/libfastcommon.git |
1 | mkdir -p /data/fastdfs/tracker |
1 | sed -i 's#/usr/local/bin/#/usr/bin/#g' /etc/init.d/fdfs_trackerd |
修改配置文件:
1 | vi tracker.conf |
参考如下信息:
1 | disabled=false |
启动tracker服务:
1 | [root@hy-lb-02 fdfs] |
查看程序运行情况:
1 | [root@hy-lb-02 fdfs]# lsof -i :22122 |
1 | [root@hy-lb-02 fdfs]# netstat -tunlp|grep 22122 |
1 | [root@hy-lb-02 fdfs]# ps -ef|grep fdfs |
图床服务如需搬迁,可在别的服务器部署完Fastdfs后,把/data/fastdfs/data/目录拷贝到新服务器上Fastdfs服务指定的路径,并修改相应配置文件的域名,ip及文件路径信息:
tracker.conf文件:
1 | base_path=/data/fastdfs/tracker |
client.conf:
1 | base_path=/data/fastdfs |
storage.conf文件:
1 | base_path=/data/fastdfs |
nginx配置文件:
mod_fastdfs.conf文件:
1 | tracker_server=10.0.77.77:22122 |