fastdfs详细配置

fastdfs配置

服务器环境

fastdfs-trackerd 192.168.32.128

fastdfs-storage  192.168.32.129

分别在两个服务器上面安装好fastdfs服务

1.安装依赖

yum install openssl* -y

yum install gd-devel -y

yum install pcre-devel -y

2.安装lbevent

tar zxvf  libevent-1.4.14b-stable.tar.gz

cd libevent-1.4.14b-stable

./configure --prefix=/usr/local/libevent

make

make install

export LD_LIBRARY_PATH=/usr/local/libevent/lib

3..安装fastdfs

tar zxvf FastDFS_v4.07.tar.gz

cd FastDFS

./make.sh C_INCLUDE_PATH=/usr/local/libevent/include LIBRARY_PATH=/usr/local/libevent/lib

./make.sh install

4.创建fastdfs存储目录

mkdir /data/fastDFS

5.在tracker修改配置文件

vim /etc/fdfs/tracker.conf

bind_addr=192.168.32.128   绑定tracker服务器ip

base_path=/data/fastDFS   存放数据和日志的根目录地址(这个目录必须存在,其下的子目录自动生成

max_connections=256 系统提供服务时最大连接数

work_threads=4工作显成熟,通常设置为cpu数,默认为4

store_lookup=2上传文件到组的方式,

0:轮询 1:制定组 2:平均负载(选择最大剩余空间的组上传)。

store_group=group2当store_lookup设置为1时。必须设置本参数为系统存在的一个组名

store_server=0选择哪个storage server进行上传

0:轮询(默认方式)1:根据ip地址进行排序(选择ip地址最小的) 2:根据优先级进行排序(上传优先级由storage_server来设置,参数名为upload_priority)

store_path=0 选择storage server中的那个目录进行上传,storage server可以有多个存放文件的base_path,可以理解为多个磁盘。

0:轮流方式,多个目录一次存放文件 2:选择生育空间最大的目录存放文件

download_Server=0 选择哪个storage server作为下载服务器

0:轮询方式,可以下载当前文件的任一storage server

1:哪个为源storage server就用哪一个,就是之前上传到那个storage server服务器就是哪个!

reserved_storage_space=10%storage server上的保留空间,保证系统或其他应用需求空间。

run_by_user=从操作系统运行FDFS的用户(不填,就是当前用户)

allow_hosts=*可以连接到此tracker server的ip范围。可以配置多行

sync_log_buff_interval=10 同步或刷新日志信息到硬盘的时间间隔,默认为秒

check_active_interval=120检测storage server存活的时间间隔,以秒为单位

thread_stack_size=64KB线程栈的大小,线程越大,占用资源越大。此值必须大于64KB

storeage_ip_changed_auto_adjust=true 这个参数控制当storage server ip改变时,集群是否自动调整。注:只有在storage server进程重启时才完成自动调整

storage_sync_file_max_delay=86400 storage server之间同步文件的最大延迟时间,以秒为单位,缺省为1天

storage_sync_file_max_time=300同步一个文件需要消耗的最大时间,以秒为单位

use_trunk_file=fakse是否使用trunk  file来合并小文件,缺省是关闭的

slot_min_size=256trunk file分配的最小字节数,比如文件只有16个字节,系统也会分配slot_min_size个字节

slot_max_size=16MB只有文件大小<=这个参数值得文件,才会合并存储,如果文件大小大于这个值,将直接保存到一个文件中(不采用合并存储)

trunk_file_size=64MB合并存储的trunk file大小,至少4MB.缺省值为64MB,不建议设置过大

use_storage_id=false是否使用server id作为storage server标识

storage_ids_filename=storage_ids.conf在文件中设置组名。server id和对用的ip地址

id_type_in_filename=ip 设置文件名中的storage server的标识

ip:storage server的ip地址

id:storage server的server id

rotate_error_log=flase是够定期轮转error log,目前仅支持一天轮转一次,建议设置为true!

error_log_rotate_time=00:00设置error log定期轮转的时间点。当rotate_error_log为true时有效

connection_poll_max_idle_time=3600最大连接等待时间,以秒为单位

http.server_port=80 (http服务端口,可以不设置)

http.check_alive_interval=30 检测storage http server存活的时间间隔, 以秒为单位

http.check_alive_type=tcp检测storage http server存活的方式,默认为tcp

http.check_alive_url=/status.html检测storage http server是否存活的url

#include http.conf

/usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf 启动服务

修改client.conf

vim /etc/fdfs/client.conf

base_path=/data/fastDFS

tracker_server=192.168.32.128:22122

http.tracker_server_port=80

#include http.conf

在storage服务器安装nginx。用来上传和下载文件

#1.下载fastdfs-nginx-module_v1.15.tar.gz

tar -zxvf fastdfs-nginx-module_v1.15.tar.gz -C /usr/local

#2.安装nginx

tar zxvf nginx-1.6.0.tar.gz

cd nginx-1.6.0

cd /usr/local

tar zxvf fastdfs-nginx-module_v1.15.tar.gz

yum -y install pcre openssl gd*

./configure --prefix=/usr/local/nginx \

--with-file-aio \

--with-http_ssl_module \

--with-http_image_filter_module \

--with-http_sub_module \

--with-http_secure_link_module \

--with-http_stub_status_module \

--with-pcre \

--with-cc-opt=‘-O3 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic‘ \

--with-ld-opt=-Wl,-E \

--with-http_realip_module \

--with-http_gzip_static_module \

--add-module=/usr/local/fastdfs-nginx-module/src

export LD_LIBRARY_PATH=/usr/local/libevent/lib/

cp mod_fastdfs.conf /etc/fdfs/

make && make install

修改mod_fastdfs.conf

vim /etc/fdfs/mod_fastdfs.conf

connect_timeout=20

base_path=/data/fastDFS

tracker_server=192.168.32.128:22122

store_path0=/data/fastDFS

url_have_group_name = true

修改nginx.conf

vim /usr/local/nginx/conf/nginx.conf

在server段添加以下内容

location /group1/M00/

{

alias  /www/fastDFS/data/;

ngx_fastdfs_module;

}

/usr/local/nginx/sbin/nginx -t检查配置文件参数

/usr/local/nginx/sbin/nginx 启动nginx

在storage修改配置文件

vim /etc/storage.conf

bind_addr=192.168.32.129

base_path=/data/fastDFS

store_path0=/data/fastDFS

tracker_server=192.168.32.128:22122

http.server_port=80

/usr/local/bin/fdfs_storaged /etc/fdfs/storage.conf 启动服务

测试:上传文件

cat ./.bash_profile >> 2.txt

/usr/local/bin/fdfs_test /etc/fdfs/client.conf upload 2.txt

This is FastDFS client test program v4.07

Copyright (C) 2008, Happy Fish / YuQing

FastDFS may be copied only under the terms of the GNU General

Public License V3, which may be found in the FastDFS source kit.

Please visit the FastDFS Home Page http://www.csource.org/

for more detail.

[2014-12-31 09:20:40] DEBUG - base_path=/data/fastDFS, connect_timeout=30, network_timeout=60, tracker_server_count=1, anti_steal_token=0, anti_steal_secret_key length=0, use_connection_pool=0, g_connection_pool_max_idle_time=3600s, use_storage_id=0, storage server id count: 0

tracker_query_storage_store_list_without_group:

server 1. group_name=, ip_addr=192.168.32.129, port=23000

group_name=group1, ip_addr=192.168.32.129, port=23000

storage_upload_by_filename

group_name=group1, remote_filename=M00/00/00/wKgggVSjQ-iAJxtqAAAAsFQ-X38886.txt

source ip address: 192.168.32.129

file timestamp=2014-12-31 08:31:36

file size=176

file crc32=1413373823

example file url: http://192.168.32.129/group1/M00/00/00/wKgggVSjQ-iAJxtqAAAAsFQ-X38886.txt

storage_upload_slave_by_filename

group_name=group1, remote_filename=M00/00/00/wKgggVSjQ-iAJxtqAAAAsFQ-X38886_big.txt

source ip address: 192.168.32.129

file timestamp=2014-12-31 08:31:36

file size=176

file crc32=1413373823

example file url: http://192.168.32.129/group1/M00/00/00/wKgggVSjQ-iAJxtqAAAAsFQ-X38886_big.txt

用浏览器访问 http://192.168.32.129/group1/M00/00/00/wKgggVSjQ-iAJxtqAAAAsFQ-X38886_big.txt 就能看到上传的文件了

上传的文件放在/data/fastDFS/data/00/00中

查看端口

netstat -tunpl

配置fastdfs支持php

yum -y install php*

cd /root/FastDFS/php-client

phpize  用来准备php扩展库的编译环境

./configure

make

make install

cat fastdfs_client.ini >> /etc/php.ini

/usr/bin/php -m | grep fastdfs

service php-fpm start

修改/etc/fdfs/client.conf

tracker_server=192.168.32.128:22122

http.tracker_server_port=80

echo ‘php_upload_test‘ > /tmp/upload.txt

vim test.php

<?php

var_dump(function_exists(‘fastdfs_storage_upload_by_filename‘));

$ret = fastdfs_storage_upload_by_filename(‘

/tmp/upload.txt

‘);

var_dump($ret);

?>

/usr/bin/php test.php

bool(true)

成功

array(2) {

["group_name"]=>

string(6) "group1"

["filename"]=>

string(44) "M00/00/00/wKgggVSjbDaATlrAAAAAEIxdRHw661.txt"

}

/etc/init.d/php-fpm reload

最后用浏览器访问这个,看是否能访问到

时间: 2024-08-07 22:18:38

fastdfs详细配置的相关文章

FastDFS安装配置手册

FastDFS安装配置手册 目录 FastDFS安装配置手册... 1 一.         安装... 3 (一)       下载FastDFS安装包... 3 (二)       安装tracker. 3 1.      安装... 3 2.      配置... 5 3.      运行... 5 (三)       安装storage. 6 1.      安装... 6 2.      配置... 8 3.      运行... 8 (四)       在storage上安装ngin

Vsftpd 详细配置

Vsftpd 详细配置         目    录 1.配置文件 2.给匿名用户的配置 3.系统用户配置 4.禁锢所有ftp系统用户在家目录中 5.禁锢或不禁锢特定的系统用户在家目录中,与上面设置互斥 6.wu-ftp日志 7.vsftpd日志 8.登录提示信息 9.目录访问提示信息 10.使用pam完成用户认证 11.是否启用控制用户登录的列表文件 12.连接限制 13.传输速率 :字节/秒 14.连接时间:秒为单位 15.优先以文本方式传输 16.其他参数 Vsftpd服务有vsftpd包

【甘道夫】Hadoop2.2.0 NN HA详细配置+Client透明性试验【完整版】

引言: 前面转载过一篇团队兄弟[伊利丹]写的NN HA实验记录,我也基于他的环境实验了NN HA对于Client的透明性. 本篇文章记录的是亲自配置NN HA的详细全过程,以及全面测试HA对客户端访问透明性的全过程,希望对大家有帮助. 实验环境: Hadoop2.2.0的4节点集群,ZK节点3个(ZK节点数最好为奇数个),hosts文件和各节点角色分配如下: hosts: 192.168.66.91 master 192.168.66.92 slave1 192.168.66.93 slave2

Nginx,Apache只允许域名访问详细配置

Nginx,Apache只允许域名访问详细配置 一.nginx配置只允许域名访问 # 设置不允许Ip访问web(default_server) server { listen 80 default_server; server_name _; return 403; } # 设置www.meteor-yu.com域名访问web server { listen 80; server_name www.meteor-yu.com; location /ngx_status { stub_status

关于linux-gpg数据加密详细配置

1.创建一对密钥,公钥pub,私钥sub. 创建一对密钥密钥 2.导出公钥,发送密钥给对方(例如:fendou) 发送公钥给对方 查看对方(fendou)收到的公钥 3.下面导入公钥,然后用这个公钥加密一个文件,然后传给对方.(分发者(ll),因为只有它能打开. 导入收到的公钥 创建验证文件 加密文件 发送加密过的文件给拥有私钥的用户,即分发者,因为只有应有私钥的用户才能解密. 解密经过加密的文件 欢迎大家来访我的博客!                                      

Linux- nginx+tomcat的详细配置

一切来源于工作,先谈一下需求. 为了使测试环境尽量模仿线上环境,四台台式机搭建测试环境.nginx + tomcat + mysql + red5pro(视频直播). nginx用来做代理,通过nginx来访问后端的tomcat. nginx服务器的配置文件里简单配置(nginx.conf)的话只需要复制一下server部分就行,修改其中的listen端口以及proxy_pass后面跟的路径.如果不做负载均衡的话,可以加链接(如http://192.168.1.2:8080 ) .如果做负载均衡

转载 - Struts2 拦截器详细配置过程

出处:http://www.blogjava.net/zzzlyr/archive/2009/10/12/297998.html Struts2 拦截器详细配置过程 1:所有拦截器的超级接口Interceptor ,Action去实现这个接口; Interceptor 它其中有三个方法(init(),destroy() ,interceptor()): Init()方法:在服务器起动的时候加载一次,并且只加载一次; Destroy()方法:当拦截器销毁时执行的方法; Interceptor()方

Universal-Image-Loader解析(一)——ImageLoaderConfiguration的详细配置

本篇文章主要介绍了"Universal-Image-Loader解析(一)——ImageLoaderConfiguration的详细配置 ",主要涉及到Universal-Image-Loader解析(一)——ImageLoaderConfiguration的详细配置 方面的内容,对于Universal-Image-Loader解析(一)——ImageLoaderConfiguration的详细配置 感兴趣的同学可以参考一下. Universal-Image-Loader这个开源框架又

Tomcat访问日志详细配置

在server.xml里的<host>标签下加上 <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/