使用fastdfs搭建文件服务器
一:安装tracker
1. 拷贝安装目录下各个.gz文件到/usr/local/src下,解压各个install lib,例如tar zxvf xxx.tar.gz
2. 先安装libfastcommon,(需要先安装 yum install gcc,gcc-c++,perl)
cd libfastcommon
./make.sh
./make.sh install
3. 安装FastDFS
cd FastDFS
./make.sh
./make.sh install
4. 修改tracker.conf和client.conf
cd /etc/fdfs
cp client.conf.sample client.conf
cp tracker.conf.sample tracker.conf
//创建目录
mkdir -p /opt/fdfs/tracker
vi tracker.conf
修改项:
base_path=/opt/fdfs/tracker
vi client.conf
修改项:
base_path=/opt/fdfs/tracker
tracker_server=tracker的ip:22122
5. 拷贝命令到指定目录
cp /usr/bin/fdfs_trackerd /usr/local/bin
cp /usr/bin/fdfs_monitor /usr/local/bin
cp /usr/bin/fdfs_upload_file /usr/local/bin
cp /usr/bin/fdfs_test /usr/local/bin
6. 连接目录
ln -s /usr/include/fastcommon /usr/local/include/fastcommon
ln -s /usr/include/fastdfs /usr/local/include/fastdfs
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
6:启动tracker
fdfs_trackerd /etc/fdfs/tracker.conf start
/usr/bin/restart.sh /usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf
7:查看启动状态
//查看是否对应端口22122是否开始监听
netstat -unltp | grep fdfs
查看日志:cat /opt/fdfs/tracker/logs/trackerd.log
or
tail -f /opt/fdfs/tracker/logs/trackerd.log
8:对应的storage启动完成后,可以查看链接状态
fdfs_monitor /etc/fdfs/client.conf
fdfs_monitor /home/fastdfs/fastdfs-5.05/conf/client.conf
9:tracker上安装nginx
1):确保依赖安装
yum install –y openssl-devel pcre-devel zlib-devel
yum install gd-devel
2)
./configure \
--prefix=/usr \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/media/disk1/nginx/logs/error.log \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--user=nginx \
--group=nginx \
--with-pcre=/usr/local/src/pcre-8.35 \
--with-http_ssl_module \
--with-http_flv_module \
--with-http_gzip_static_module \
--http-log-path=/media/disk1/nginx/logs/access.log \
--http-client-body-temp-path=/media/disk1/nginx/client \
--http-proxy-temp-path=/media/disk1/nginx/proxy \
--http-fastcgi-temp-path=/media/disk1/nginx/fcgi \
--with-http_stub_status_module \
--with-http_stub_status_module \
--with-poll_module \
--with-http_image_filter_module \
--with-http_realip_module \
--add-module=/usr/local/src/ngx_cache_purge-2.3 \
--with-cc-opt=-Wno-error
3)make
4)make install
10:设置启动文件和nginx配置文件
请参考安装目录下的tracker下的nginx和nginx.conf
创建缓存目录:mkdir /media/disk1/nginx/proxy_temp
mkdir /media/disk1/nginx/proxy_cache
修改对应的ip后分别拷贝到/etc/init.d/、/etc/nginx/
cp /usr/sbin/nginx /etc/init.d/
cd /usr/sbin/
./nginx
11: 查看启动进程
ps aux | grep nginx
cat /media/disk1/nginx/logs/access.log
cat /media/disk1/nginx/logs/error.log
如不清楚log位置可在nginx.conf 配置中查看。
如果提示错误,可能缺少依赖的软件包,需先安装依赖包,再次运行./configure
nginx以及nginx cache purge插件模块安装完成,安装目录/usr/local/nginx
可以使用fdfs_monitor来删除。命令行如下:
/usr/bin/fdfs_monitor <config_filename> delete <group_name> <storage_id>
例如:
/usr/bin/fdfs_monitor /etc/fdfs/client.conf delete group1 192.168.0.100
注意:如果被删除的storage server的状态是ACTIVE,也就是该storage server还在线上服务的情况下,是无法删除掉的。
storage_id参数:如果使用默认的ip方式,填写storage server IP地址,否则使用对应的server id。
-------------------------------------------------------------------------------
一:安装storage
/**** !!若storage和tracker在同一台服务器上,1-3步跳过 */
1. 拷贝安装目录下各个.gz文件到/usr/local/src下,解压各个install lib,例如tar zxvf xxx.tar.gz
2. 先安装libfastcommon,(需要先安装 yum install gcc,gcc-c++,perl)
cd libfastcommon
./make.sh
./make.sh install
3. 安装FastDFS
cd FastDFS
./make.sh
./make.sh install
4. 修改storage.conf
cd /etc/fdfs
cp storage.conf.sample storage.conf
//创建目录
mkdir -p /opt/fdfs/storage
mkdir -p /data/fdfs
vi storage.conf
修改项:
base_path=/opt/fdfs/storage
group_name=group1
store_path0=/data/fdfs
tracker_server=tracker服务器ip:22122
http.server_port=8080
5. 拷贝命令到指定目录
cp /usr/bin/fdfs_storaged /usr/local/bin
cp /usr/bin/fdfs_monitor /usr/local/bin
6. 连接目录
ln -s /usr/include/fastcommon /usr/local/include/fastcommon
ln -s /usr/include/fastdfs /usr/local/include/fastdfs
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
6:启动storage
fdfs_storaged /etc/fdfs/storage.conf start
fdfs_storaged /home/fastdfs/fastdfs-5.05/conf/storage.conf
重启
/usr/bin/restart.sh /usr/local/bin/fdfs_storaged /etc/fdfs/storage.conf
7:查看启动状态
netstat -unltp | grep fdfs
查看log: cat /opt/fdfs/stroage/logs/storaged.log
or
tail -f /opt/fdfs/stroage/logs/storage.log
8: 监控storage状态
//查看storage状态
fdfs_monitor /etc/fdfs/storage.conf
fdfs_monitor /home/fastdfs/fdfs_conf/storage.conf
二:storage上安装nginx
1:确保依赖安装
yum install –y openssl-devel pcre-devel zlib-devel
2:解压/usr/local/src下的相关压缩包
3:编译和安装nginx
创建用户和响应的目录和文件,请参考nginx的安装文档
cd /usr/local/src/nginx-1.8.0
----整段运行------
./configure \
--prefix=/usr \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/media/disk1/nginx/logs/error.log \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--user=nginx \
--group=nginx \
--with-pcre=/usr/local/src/pcre-8.35 \
--with-http_ssl_module \
--with-http_flv_module \
--with-http_gzip_static_module \
--http-log-path=/media/disk1/nginx/logs/access.log \
--http-client-body-temp-path=/media/disk1/nginx/client \
--http-proxy-temp-path=/media/disk1/nginx/proxy \
--http-fastcgi-temp-path=/media/disk1/nginx/fcgi \
--with-http_stub_status_module \
--with-poll_module \
--with-http_realip_module \
--add-module=/usr/local/src/ngx_cache_purge-2.3 \
--add-module=/usr/local/src/fastdfs-nginx-module/src \
--with-cc-opt=-Wno-error
安装:
make
make install
4: 配置mod_fastdfs.conf
cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
修改/etc/fdfs/mod_fastdfs.conf配置项
base_path=/data/fdfs
tracker_server=tracker服务器io:22122#修改为tracker server信息
url_have_group_name= true #改为true
store_path0=/data/fdfs #改为数据存储路径,和storage.conf一样
group_name=group1
group_count = 2
并且在文件末尾加上以下信息:
[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/data/fdfs
5:ln -s /data/fdfs/data /data/fdfs/data/M00
ln -s /opt/file/fdfs/data /opt/file/fdfs/data/M01
6:拷贝http.conf和mime.type
cp /usr/local/src/FastDFS/conf/http.conf /etc/fdfs/
cp /usr/local/src/FastDFS/conf/mime.types /etc/fdfs/
7:设置启动文件和nginx配置文件
请参考安装目录下的storage下的nginx和nginx.conf
location ~/group[1-3]/M00 {
root /home/fastdfs/data;
ngx_fastdfs_module;
}
修改对应的ip后分别拷贝到/etc/init.d/、/etc/nginx/
cp /usr/sbin/nginx /etc/init.d/
如果忘记copy 会报错:[emerg]: getpwnam(“nginx”) failed ,原因没有注册用户
chmod u+x nginx
8: 启动nginx
cd /usr/sbin/
./nginx
#service nginx start
9: 查看启动进程
ps aux | grep nginx
cat /media/disk1/nginx/logs/access.log
cat /media/disk1/nginx/logs/error.log
如不清楚log位置可在nginx.conf 配置中查看。
安装tracker 和 storage之后,测试 上传文件:
上传:
/usr/local/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/a.txt
测试:
/usr/local/bin/fdfs_test /etc/fdfs/client.conf upload /usr/local/a.txt
返回路径
fdfs_upload_file /home/fastdfs/fastdfs-5.05/conf/client.conf /home/fastdfs_file/data/fdfs_trackerd.pid
/home/fastdfs/fastdfs-5.05/conf/tracker.conf
然后在浏览器访问:
http://10.74.11.118:8080/group1/M00/00/00/CkoLdlpYL1eAfvQXAAAAD14pc-g996.txt
至此安装测试部分结束.
-------------------------------------------------------------------------------------
安装过程常见问题解决办法:
读取不了的原因可能是防火墙没关,把防火墙关掉:service iptables stop
stroage server保存路径:/data/fdfs
storage 非active状态的解决办法:
#从集群中删除
fdfs_monitor /etc/fdfs/client.conf delete group1 10.74.11.118
使用fastdfs搭建文件服务器的更多相关文章
- Nginx 整合 FastDFS 实现文件服务器
原文地址:Nginx 整合 FastDFS 实现文件服务器 博客地址:http://www.extlight.com 一.前言 本篇衔接<FastDFS 环境搭建>内容进行讲解,上篇文章我 ...
- [转帖]使用fastdfs搭建文件管理系统
使用fastdfs搭建文件管理系统 https://www.jianshu.com/p/4e80069c84d3 今天同事说他们的系统用到了这个分布式文件管理系统. 一.FastDFS介绍 FastD ...
- windows server 2008 r2 搭建文件服务器
目的需求:在测试环境下模拟公司现状需求,利用windows server 搭建文件服务器 工具必备:(1)vmware workstation,(2)windows server 2008 r2.is ...
- FastDFS搭建分布式文件系统
FastDFS搭建分布式文件系统 1. 什么是分布式文件系统 分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网 ...
- FastDFS搭建单机图片服务器(二)
防丢失转载:https://blog.csdn.net/MissEel/article/details/80856194 根据 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署 和 ...
- FastDFS搭建单机图片服务器(一)
防丢失转载:https://blog.csdn.net/MissEel/article/details/80856194 根据 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署 和 ...
- ASP.NET Core静态文件中间件[1]: 搭建文件服务器
虽然ASP.NET Core是一款"动态"的Web服务端框架,但是由它接收并处理的大部分是针对静态文件的请求,最常见的是开发Web站点使用的3种静态文件(JavaScript脚本. ...
- 在linux下使用Apache搭建文件服务器
目录 一.关于文件服务器 二.使用Apache搭建文件服务器 三.测试文件服务器是否可用 一.关于文件服务器 在一个项目中,如果想把公共软件或者资料共享给项目组成员,可以搭建一个简易的文件服务器来 ...
- FastDFS搭建及java整合代码【转】
FastDFS软件介绍 1.什么是FastDFS FastDFS是用C语言编写的一款开源的分布式文件系统.FastDFS为互联网量身定制,充分考虑了冗余备份.负载均衡.线性扩容等机制,并注重高可用.高 ...
随机推荐
- Java Observer接口和Observable类实现观察者模式
对于观察者模式,其实Java已经为我们提供了已有的接口和类.对于订阅者(Subscribe,观察者)Java为我们提供了一个接口,JDK源码如下: package java.util; public ...
- Gephi学习笔记
使用gephi对图数据进行可视化操作,下面网址是gephi的说明文档 https://seinecle.github.io/gephi-tutorials/generated-pdf/semantic ...
- PHPExcel所遇到问题的知识点总结
工作中进行excel的时候遇到了两个问题, 1.excel表中列值过大,由于没有进行特殊处理,程序没法正常运行: 2.列值中含有日期格式的文本,不能正确读取: 所以通过网络搜索,并解决了问题,记录一下 ...
- 【Dubbo 源码解析】05_Dubbo 服务发现&引用
Dubbo 服务发现&引用 Dubbo 引用的服务消费者最终会构造成一个 Spring 的 Bean,具体是通过 ReferenceBean 来实现的.它是一个 FactoryBean,所有的 ...
- 安装 RabbitMQ
Ubuntu 16.04 安装 RabbitMQ #1 更新 $ sudo apt-get update $ sudo apt-get upgrade #2 安装Erlang $ cd /tmp $ ...
- scala 隐式详解(implicit关键字)
掌握implicit的用法是阅读spark源码的基础,也是学习scala其它的开源框架的关键,implicit 可分为: 隐式参数 隐式转换类型 隐式调用函数 1.隐式参数 当我们在定义方法时,可以把 ...
- [Golang] 开源一个帧同步服务器
具体看README吧 https://github.com/bailu1901/lockstepserver
- Gym 100712
我的作用:增加罚时. noip380分大佬全程带飞出了10T,可惜被我搞的罚时太高了... 那啥,你会发现java代码有两种风格,嗯两个人,c++自然就是自招大佬了... A:大水题略 B:(不是我写 ...
- 用TreeSet生成不重复自动排序随机数组
随机数组就是在指定长度的数组中用随机数字为每个元素赋值,常用于不确定数值的环境,如拼图游戏需要随机数组来打乱图片顺序.可是同时也存在问题,就是随机数的重复问题,这个问题常常被忽略. TreeSet类的 ...
- pandas读取文件报错
path = 'D:/Postgraduate/Python/Machine Learning/小象学院机器学习/08.回归实践/8.Regression代码/8.Regression/8.Adver ...